storm基础一
来源:互联网 发布:java中常用的集合类 编辑:程序博客网 时间:2024/06/05 19:52
基础一:
1、 Storm是一个分布式的、可靠的、容错的实时数据流处理系统。
2、 Storm一般是有numbus所在的计算机和supervisor所在的计算机组成了物理环境
3、 名词解释:
1)Nimbus: Storm集群的主控节点
2) Supervisor: Storm集群的计算节点,
3) Worker: 执行任务的进程
4)executor: 执行任务的线程
5) Topology: 运行于Storm集群的任务
6) Nimbus: Storm集群的主控节点
7) Spout: 源数据的获取者。用于从外部数据源(如kafka)不间断读取数据并下游发送数据
8)Bolt: 数据的处理者。可执行查询、过滤、聚合及各种复杂运算操作,Bolt的数据处理结果可以作为下游Bolt的输入不断迭代
9) Tuple:组件(Spout/Bolt)之间数据交换的数据模型。
10) ACK:Storm的对消息的跟踪机制
基础二:
1、 this.collector.emit(new Values(str), str);
把str以键值对的形式添加到队列中去,供下一个环节读取数据,new Values(str)是在str的基础上添加了一个些字符串,可以再下一个环节根据这个new Values(str)来分组读取
2、 builder.setBolt("word-normalizer", new MyBolt1(),2).shuffleGrouping("word-reader");
builder.setBolt("word-normalizer", new MyBolt1(),4).fieldsGrouping("word-reader");
构造方法中的第三个参数控制的是并发量,shuffleGrouping指的是内部随机并发,
fieldsGrouping指的是内部按照key来分配,同样的key会走到同一个bolt里面,如果里面部分key很多的时候,可能造成一个bolt工作,其他bolt都闲置的情况
3、 spark hadoop storm区别:
Hadoop使用磁盘作为中间交换的介质,而storm的数据是一直在内存中流转的。
两者面向的领域也不完全相同,一个是批量处理,基于任务调度的;另外一个是实时处理,基于流。
以水为例,Hadoop可以看作是纯净水,一桶桶地搬;而Storm是用水管,预先接好(Topology),然后打开水龙头,水就源源不断地流出来了。Spark流模块先汇聚批量数据然后进行数据块分发(视作不可变数据进行处理),而Storm是只要接收到数据就实时处理并分发。
Spark和Storm设计相反,而Spark Steaming才和Storm类似,前者有数据平滑窗口(sliding window),而后者需要自己去维护这个窗口
- 一、storm基础概念
- 一、storm基础概念
- storm基础一
- 《Getting Started with Storm》章节一 基础
- Storm-kafka-hbase基础编程一
- Storm基础
- Apache Storm 的安装、配置及入门基础(一)
- Apache Storm 编程入门基础(五):简单案例一
- Storm详解一、Storm 概述
- Storm学习(一)Storm介绍
- Storm学习(一) Storm介绍
- Storm(一)什么是Storm
- Storm学习(一)Storm介绍
- Storm学习(一)Storm介绍
- Storm学习一: Storm简介
- storm一之storm是什么
- Storm基础接口
- storm基础学习
- 手慢无 | 为什么这个Linux运维班的学员被企业哄抢?
- 斜阳一抹
- VMware NAT网络模式
- Django Nginx Gunicorn Centos7 环境部署,将项目上线
- python读取.mat数据之scipy.io&h5py
- storm基础一
- tf.placeholder()
- android studio在新窗口中打开项目
- ORACLE触发器详解
- 线性判别式分析-LDA-Linear Discriminant Analysis
- 安卓知识点及问题处理方案记录,持续更新~
- 线下零售业软实力升级,主角竟是科技公司?
- 对QDockWidget使用qss设置边框无效
- 关于“为什么选择我们公司?”应聘者如何回答?