stream – 数据流处理

栏目: 编程工具 · 发布时间: 5年前

内容简介:我有一类似乎自然采用图形结构的计算.该图远非线性,因为有多个输入以及扇出的节点和需要几个其他节点的结果的节点.在所有这些计算中,也可能存在几个接收器.但是,没有任何循环存在.输入节点被更新(不一定一次),我的值通过(此时纯粹是概念上的)图形.当输入改变时,节点保持状态,并且计算必须相对于输入顺序运行.因为我必须非常频繁地编写这样的计算,并且我每次都不愿意编写ad-hoc代码,所以我尝试编写一个小型库,以便通过编写各种顶点的类来轻松地将这些计算拼凑在一起.然而,我的代码相当不优雅,并没有利用这些计算的并行结构

我有一类似乎自然采用图形结构的计算.该图远非线性,因为有多个输入以及扇出的节点和需要几个其他节点的结果的节点.在所有这些计算中,也可能存在几个接收器.但是,没有任何循环存在.输入节点被更新(不一定一次),我的值通过(此时纯粹是概念上的)图形.当输入改变时,节点保持状态,并且计算必须相对于输入顺序运行.

因为我必须非常频繁地编写这样的计算,并且我每次都不愿意编写ad-hoc代码,所以我尝试编写一个小型库,以便通过编写各种顶点的类来轻松地将这些计算拼凑在一起.然而,我的代码相当不优雅,并没有利用这些计算的并行结构.虽然每个顶点通常都是轻量级的,但计算可能变得相当复杂和“宽”.为了使问题更加复杂,这些计算的输入在循环中非常频繁地更新.幸运的是,问题的规模足够小,我可以在一个节点上处理它们.

有没有人曾经处理类似的事情?您会推荐哪些想法/方法/工具?

Apache Storm:分布式硬件上可靠,实时的流处理

这听起来像Apache Storm(开源)将是完美的问题: http://storm.apache.org/

Apache Storm是关于实时流式计算,它一次处理一个元组(数据点). Storm保证每个元组至少被处理一次.使用Storm Trident,您可以进一步抽象Storm并获得完全一次的语义.

Apache Storm is a free and open source distributed realtime  computation system. Storm makes it easy to reliably process unbounded  streams of data, doing for realtime processing what Hadoop did for  batch processing.

我公司和我一直在使用Apache Storm多年,它是最成熟的大数据技术之一.大数据技术是以水平分布的方式运行的技术(在廉价商品硬件上).

API和文档

主要的API是Java,但有适用于Ruby,Python,Javascript,Perl的适配器.但是,您实际上可以使用任何语言: http://storm.apache.org/about/multi-language.html

文档很好(尽管JavaDoc可以使用更多细节): http://storm.apache.org/documentation.html

基本理念 – 喷口和螺栓(=图形节点)

stream – 数据流处理

Storm具有Spout,您可以从中将数据读入所谓的拓扑.拓扑是您描述的此图.当新元组进入spout时,它们将通过拓扑发送.每个节点都是Storm Bolts之一.

用例

Storm has many use cases: realtime analytics, online machine learning,  continuous computation, distributed RPC, ETL, and more. Storm is fast:  a benchmark clocked it at over a million tuples processed per second  per node. It is scalable, fault-tolerant, guarantees your data will be  processed, and is easy to set up and operate.

翻译自:https://stackoverflow.com/questions/33771299/dataflow-processing


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Dojo权威指南

Dojo权威指南

拉塞尔 / 李松峰、李丽 / 机械工业出版社 / 2009-4 / 79.00元

通过使用Dojo这个工业强度的JavaScript工具箱,我们可以比使用其他任何Ajax框架更高效、更容易地创建JavaScript或Ajax驱动的应用程序和站点。 《Dojo权威指南》向读者展示了如何充分利用Dojo工具箱中包含的大量实用特性,以前所未有的效率开发出功能丰富、响应敏捷的Web应用程序。读者通过《Dojo权威指南》能够学习到创建复杂布局和表单控件(常见于高级桌面应用程序)的技......一起来看看 《Dojo权威指南》 这本书的介绍吧!

在线进制转换器
在线进制转换器

各进制数互转换器

URL 编码/解码
URL 编码/解码

URL 编码/解码