加入收藏 | 设为首页 | 会员中心 | 我要投稿 湖南网 (https://www.hunanwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

纽约证券交易所的实时Map/Reduce大数据分析

发布时间:2021-05-22 08:33:34 所属栏目:大数据 来源:网络整理
导读:我们在纽约证券买卖营业所NYSE成立的变乱处理赏罚体系到此刻已经高出20年了。 在已往的十年中,我们偏重于伟大变乱处理赏罚(CEP),在2005年初次成立了第一个CEP引擎,并随后与很多顶级供给商及产物一路事变。 当我开始行使Darkstar时,大部门这些早于2009年的产物的最
副问题[/!--empirenews.page--]

纽约证券买卖营业所的及时Map/Reduce大数据说明

我们在纽约证券买卖营业所NYSE成立的变乱处理赏罚体系到此刻已经高出20年了。 在已往的十年中,我们偏重于伟大变乱处理赏罚(CEP),在2005年初次成立了第一个CEP引擎,并随后与很多顶级供给商及产物一路事变。

当我开始行使Darkstar时,大部门这些早于2009年的产物的最大题目是:CEP引擎无法伸缩扩展。 我想打破这种限定 - 我想可以通过整个互联网及时过筛。 我的案例是为证券举办综合审计跟踪,这是及时处理赏罚,成天都必要。
我想成立一个体系可以每秒处理赏罚数百万个变乱/动静,扫描那些数据流模式,将数据生涯,并当即将数据可用于后续的查询。 谁人时辰在市场上并没有这样的事物。 大大都人说,这不行能做到。 我必要做的是乐意信托我和我的团队以及营业搭档。
纽交所技能想提供买卖营业后的监控体系,但不想为每个客户端组建独立的呆板/体系。 他们想节省支出,进步收入增添 - 好像是成立一个集群办理方案,然后只必要增进硬件局限的绝佳机遇。 其他很多体系的题目是,为了扩大可扩展伸缩,他们都要从头计划架构。 这是我想停止的。


谜底就在殽杂CEP和Hadoop。 我们必要一种要领来分发哀求到聚集,然后从头组装功效 - 好像是一个美满的map / reduce用例。
该体系从2010年开始运行,Darkstar暗星在Mahwah陈设到出产情形...
应该指出在下面图中的一个变革 - 我们不再行使MySQL作为存储库。 我们把数据酿成一个漫衍式列族的Cassandra。


概述
Darkstar是一种通过云变乱处理赏罚计划的多用途的高度漫衍式处理赏罚平台,系统布局是基于云的原则,这意味着它被计划成在一个高度漫衍式情形中执行,以在该体系中可以包罗的节点的数目没有现实限定。 Darkstar?不是只是应用措施,它是一个平台,它提供:开拓应用措施无需相识底层架构的漫衍式特征。 Darkstar暗星?提供了一个隐藏的变乱处理赏罚引擎,动态地接管由Darkstar暗星?应用措施注入的查询和报表,并团结基于进入体系的变乱和查询注入到体系中。

Darkstar暗星?是专为在多个物理和/或假造节点上运行计划,行使的动静转达协议举办通讯。 这种要领应承Darkstar暗星?机动地对进入体系的变乱流实现动态即时回响。 变乱处理赏罚引擎的事变量会在集群中的节点之间分派,让暗星?有用无穷的可扩展性。


暗星?行使RabbitMQ作为协议对输入查询动态注入到基层CEP引擎,用动静发送回应用措施查询的功效集。
DataStar行使下面产物:
Cassandra是,其目标是在集群情形中运行一个漫衍式数据库。 由暗星?集群收到的动静被写入Cassandra并也许在往后的时刻寓目。
RabbitMQ的 -是一个开源动静署理软件,该软件行使AMQP尺度。 该RabbitMQ处事器是用Erlang编写的,是成立在开放电信平台架构,集群和妨碍转移。 暗星?行使RabbitMQ动静署理软件实现应用措施之间的通讯。
MySQL的 -暗星?行使MySQL来存储吸取到动静的元数据。 暗星?行使此信息来建设可通过打针查询到暗星?支持的各类信息流。 由这个元数据界说动静流是应承暗星?机动简朴地支持很多差异的动静范例或新的动静范例界说的存储。

如下图:

暗星?客户端API应承客户端应用措施将集群作为一个整体传入的动静。
若是是一个6节点集群,传入动静将按字母次序分派,节点1也许处理赏罚传入动静的A - D,节点2也许处理赏罚它传入的动静E - H,节点3也许处理赏罚收到的动静I - M,节点4也许处理赏罚传入的动静N - Q,节点5也许处理赏罚传入的动静R - U,节点6处理赏罚传入的动静V - Z。
全部节点都相互不绝的雷同,每个节点都知道其余节点处理赏罚的范畴。 正由于云云,假如任何一个节点呈现妨碍,集群就会心识到了这个妨碍,分区会自动在集群中的别的节点之间从头均衡。
为了让暗星?来处理赏罚大量的数据必要收罗数据的方法。 数据进入集群中的两种方法之一:
1.暗星?应用措施
2.暗星?OnRamps OnRamps是得到来自外部源的数据的方法
全部OnRamps与它们注入数据到集群的方法相同,当OnRamps吸取到动静,遍历该动静全部字段,将字段名为Key,字段值作为Value,把每个字段转为Map。
一旦全部字段转为Map往后,这个Map就转变为JSON工具,并通过暗星?客户端API,行使基于RPC的协议发送到暗星?集群。一旦
被暗星?集群收到,被添加到变乱流中,可以被客户端应用措施查询。
当暗星?启动时,基于设置文件中指定的IP地点和端口启动一个RPC毗连。 此毗连是为客户端(譬喻OnRamps)向暗星?API哀求处事所用。
前面说过,Map转为Json工具,被集群接管后,开始理会这些字段,按照字段中指定的值举办分区,基于此字段中的值其响应的动静被发送到响应的节点。
一旦变乱动静被正确的节点接管,该动静被注入到动静中指定的变乱流。 然后由指定变乱处理赏罚引擎来处理赏罚。

变乱处理赏罚引擎用来它接管外部变乱并执行其买卖营业。 当暗星?启动时,它毗连到一个MySQL数据库, 从该数据库中它加载各个变乱流的界说到体系中,然后动态地建设这些变乱流。
当新的变乱范例被添加到体系中,只必要将这些变乱范例的界说添加到MySql数据库中,暗星?会动态将这些变乱范例自动添加到体系中。
一个变乱范例插手到体系,一个新的变乱流就被插手到变乱流引擎中。
客户端的查询是行使变乱处理赏罚说话(EPL)编写的,会被注入到变乱处理赏罚引擎执行。这种EPL无需编写伟大的代码就能实现过滤和提纯等特定模式的数据。应承用户指定哪些变乱流或他们感乐趣的流查询,过滤掉任何不须要的噪音,应承客户端应用措施聚积在他们感乐趣的勾当,如变乱较量执行操纵。查询被RabbitMQ的传输协议广播到集群中的全部节点。
还支持“定名查询”,某个时刻内成立的查询可以被其他查询中引用,从而应承对伟大数据发掘查询的累积。


(编辑:湖南网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读