storm
fjr_huoniao
一个特立独行的人
展开
-
Storm基本概念
Nimbus:负责资源分配和任务调度Supervisor:负责接受nimbus分配的任务,启动和停止属于自己管理的worker进程Worker:运行具体处理组件逻辑的进程Task:worker中每一个spout/bolt的线程成为一个task,在storm 0.8之后,task不再与物理线程对应,同一个spout/bolt的task可能会共享一个物理线程,该线程成为executor原创 2016-09-10 17:27:12 · 759 阅读 · 0 评论 -
storm的特性与使用场景
Storm的一些关键特性适用场景广泛: storm可以实时处理消息和更新DB,对一个数据量进行持续的查询并返回客户端(持续计算),对一个耗资源的查询作实时并行化的处理(分布式方法调用,即DRPC),storm的这些基础API可以满足大量的场景。 可伸缩性高: Storm的可伸缩性可以让storm每秒可以处理的消息量达到很高。扩展一个实时计算任务,你所需要做原创 2016-08-24 00:05:33 · 7186 阅读 · 0 评论 -
storm drpc学习
storm drpc 是什么?咋一听觉得挺高大上的,其实也就是那么一回事。就是storm的topology 提供了很多函数,并且函数名唯一,函数里面封装了一些算法操作。只需要在调用的时候指定函数名和传递参数就可以得到返回值。简单的来说就是这么一回事。下面是客户端调用的例子:public static void main(String[] args) { // TODO Aut原创 2016-09-16 09:28:22 · 2278 阅读 · 0 评论 -
storm drpc远程调用
在实际的Storm集群上运行DRPC,需完成以下步骤:1、配置DRPC Server(s)地址; 在Storm集群中配置DRPC Server地址,这就是DRPCSpout读取函数调用请求的地方。这一步的配置可以通过storm.yaml文件或者拓扑的配置来完成。通过storm.yaml文件的配置方式如下:drpc.servers: - "hadoop1"原创 2016-09-16 13:51:46 · 1897 阅读 · 0 评论 -
storm stream grouping
stream grouping用来定义一个stream应该如何分配给Bolts上面的多个Tasks。storm里面有6种类型的stream grouping:1. Shuffle Grouping:随机分组, 随机派发stream里面的tuple, 保证每个bolt接收到的tuple数目相同。轮询,平均分配。2. Fields Grouping:按字段分组,比如按userid来分组原创 2016-09-08 19:23:49 · 653 阅读 · 0 评论 -
storm 并发度
storm的并发跟spark还是差异很大的。首先strom的topology可以指定worker的个数,woker下面可以指定多少个executor,这个executor就是并发数了,但是还有个task的概念。这个跟spark的概念是非常不同的。因为executor在spark中代表的是一个线程池,task就是一个个的线程。但是storm中的概念并不是这样的,首先来了解一下storm单线程和多线程原创 2016-09-08 20:47:21 · 754 阅读 · 0 评论