Storm
1 基本概念
1.1 分布式、可扩展、高容错、实时流处理、跨语言
1.2 应用场景
1.2.1 实时分析
1.2.2 在线机器学习
1.2.3 分布式RPC
1.2.4 ETL数据抽取
1.3 一般需要结合数据库、消息队列等使用,自己本身不存储数据,数据的来源、输出都在消息队列或者数据库
1.4 概念
1.4.1 Topo拓扑,集群,任务,有向图
1.4.2 Spout获取数据,消息队列、文件、Socket等
1.4.3 Bolt单元处理节点,可以多个环节组合处理,自定义级联关系,MR是比较固定的
1.4.4 Tuple消息元组,Spout、Bolt之间数据传递的封装形式
1.4.4.1 若干个字段、元素
1.4.4.2 根据业务逻辑事先定义好
1.4.4.2.1 字段名称不用再发送了
1.4.4.2.2 提高性能
1.4.5 Sreams不同的消息走不通的路径,路径就是流,分流可以有不同的策略,随机、广播、ID等形式
1.4.6 业务类会分发提交到集群,并发的在很多supervisor机器上面执行
1.4.7 supervisor会启动Worker进程,进程里面启动多个Executor线程,线程中可以运行多个Task实例,进程、线程、实例数量都可以自定义
1.4.8 nimbus是集群的协调管理节点, supervisor负责具体的计算
1.4.9
1.4.10
1.4.11
2 开发
2.1 见demo示例
3 高级话题
3.1 分布式锁实现,并发任务同步控制
3.1.1 通过ZK获取锁
3.2 事务型topo实现机制。开发
3.3 与其他框架整合,如消息组件flume/kafka、数据库mysql/redis/hbase等
3.4 滑动窗口实现监控告警,如最近5min的TopN、PV、UV等数据
3.4.1 实时数据流+Bolt少量缓存
3.4.2 存量数据使用Hive、Presto、Spark等实现分析
3.5
 
 
 
 

【Storm】学习笔记的更多相关文章

  1. Storm学习笔记 - 消息容错机制

    Storm学习笔记 - 消息容错机制 文章来自「随笔」 http://jsynk.cn/blog/articles/153.html 1. Storm消息容错机制概念 一个提供了可靠的处理机制的spo ...

  2. Storm学习笔记 - Storm初识

    Storm学习笔记 - Storm初识 1. Strom是什么? Storm是一个开源免费的分布式计算框架,可以实时处理大量的数据流. 2. Storm的特点 高性能,低延迟. 分布式:可解决数据量大 ...

  3. Twitter Storm学习笔记

    官方英文文档:http://storm.apache.org/documentation/Documentation.html 本文是学习笔记,转载整合加翻译,主要是为了便于学习. 一.基本概念 参考 ...

  4. Storm学习笔记——高级篇

    1. Storm程序的并发机制 1.1 概念 Workers (JVMs): 在一个物理节点上可以运行一个或多个独立的JVM 进程.一个Topology可以包含一个或多个worker(并行的跑在不同的 ...

  5. Storm学习笔记

    1.如何让一个spout并行读取多个流? 方法:任何spout.bolts组件都可以访问TopologyContext.利用这个特性可以让Spouts的实例之间划分流. 示例:获取到storm集群sp ...

  6. Storm学习笔记六

    1 Storm的通信机制 说明:1.worker与worker之间跨进程通信: 2.worker内部中各个executor间的通信,Task对象--->输入队列queue--->执行--- ...

  7. storm学习笔记(一)

    1.storm介绍         storm是一种用于事件流处理的分布式计算框架,它是有BackType公司开发的一个项目,于2014年9月加入了Apahche孵化器计划并成为其旗下的顶级项目之一. ...

  8. apache Storm 学习笔记

    Storm流之FieldGrouping字段分组: https://blog.csdn.net/Simon_09010817/article/details/80092080

  9. Storm学习笔记1:Storm基本组件

    Storm概念及组件 Nimbus:负责资源分配和任务调度. Supervisor:负责接受nimbus分配的任务,启动和停止属于自己管理的worker进程. Worker:运行具体处理组件逻辑的进程 ...

  10. Storm学习笔记——安装配置

    1.安装一个zookeeper集群 2.上传storm的安装包,解压 3.修改配置文件conf/storm.yaml #所使用的zookeeper集群主机storm.zookeeper.servers ...

随机推荐

  1. 深入理解ajax系列第七篇

    前面的话 虽然ajax全称是asynchronous javascript and XML.但目前使用ajax技术时,传递JSON已经成为事实上的标准.因为相较于XML而言,JSON简单且方便.本文将 ...

  2. QQ怎么 发送 已经录好的视频

    韩梦飞沙  韩亚飞  313134555@qq.com  yue31313  han_meng_fei_sha QQ发送 已经录好的视频 直接放过去,对方是需要下载的. 只有通过QQ录制的,才是直接就 ...

  3. 2018 计蒜之道复赛 贝壳找房魔法师顾问(并查集+dfs判环)

    贝壳找房在遥远的传奇境外,找到了一个强大的魔法师顾问.他有 22 串数量相同的法力水晶,每个法力水晶可能有不同的颜色.为了方便起见,可以将每串法力水晶视为一个长度不大于 10^5105,字符集不大于  ...

  4. 解决请求参数的中文乱码问题(get、post)

    2018-11-28 在web请求与响应中,会遇到乱码问题,比如填写表单数据时,难免会输入中文,姓名.公司名称等.由于HTML设置了浏览器在传递请求参数时,采用的编码方式是UTF-8,但在解码时采用的 ...

  5. 持续集成之Jenkins插件使用(一)- 多个job之间的串并联

    转载自:http://qa.blog.163.com/blog/static/190147002201391661510655/ Jenkins除了开源和免费,还有一个最吸引人的功能之一就是支持插件. ...

  6. Codeforces Round #361 (Div. 2) B. Mike and Shortcuts bfs

    B. Mike and Shortcuts 题目连接: http://www.codeforces.com/contest/689/problem/B Description Recently, Mi ...

  7. Codeforces Round #279 (Div. 2) B - Queue 水题

    #include<iostream> #include<mem.h> using namespace std; ],q[]; int main() { int n,x,y; m ...

  8. 亚马逊API的使用

    如上文所说,一个日本友人想要在亚马逊开店,托我帮他做一个小应用.他想实现的主要功能是,定时获取某个商品的最低价,如果这个价格不在他设定的范围内了,就给他发送邮件提醒. 为了帮助我完成程序,他还给我找到 ...

  9. js:深入prototype(上:内存分析)

    /**  * 下面演示了通过原型的创建方式,使用基于原型的创建能够将属性和方法  * 设置为Person专有的,不能通过window来调用.  * 原型是javascript中的一个特殊对象,当一个函 ...

  10. tomcat ssi配置及升级导致ssi include错误问题解决

    最近tomcat升级版本时,遇到了ssi解析的问题,记录下解决的过程,还有tomcat ssi配置的要点. tomcat 配置SSI的两种方式 Tomcat有两种方式支持SSI:Servlet和Fil ...