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. ServletConfig对象和ServletContext对象

    (1)ServletConfig:用来保存一个Servlet的配置信息的(比如 : name, class, url ... ) 这些配置信息没什么大用处,我们还可以在ServletConfig中保存 ...

  2. 20162303石亚鑫 第十二周hash补充博客

    要求 利用除留余数法为下列关键字集合的存储设计hash函数,并画出分别用开放寻址法和拉链法解决冲突得到的空间存储状态(散列因子取0.75) 关键字集合:85,75,57,60,65,(你的8位学号相加 ...

  3. [SPOJ-BEADS]Glass Beads

    来源: CE1998 题目大意: 求字符串最小表示. 思路: 字符串复制一遍接在后面,构建SAM,然后每次跑小的转移. 跑n次以后就跑到了最小表示的末尾,用该状态的len值减去n就是最小表示的起始位置 ...

  4. word-ladder总结

    title: word ladder总结 categories: LeetCode tags: 算法 LeetCode comments: true date: 2016-10-16 09:42:30 ...

  5. python配置文件操作——configparser模块

    # -*- coding: utf-8 -*- ''' Version : Python27 Author : Spring God Date : 2012-4-26 Info : 配置文件ini所在 ...

  6. faceNet编译问题

    1.执行align_dataset_mtcnn.py出现无法导入检测模型的问题 a.现象如下 Creating networks and loading parameters Traceback (m ...

  7. .net正则提取手机号码,并替换带有手机号码的a标签

    //用正则查找字符串中的手机号码,最后替换成带a标签的可打电话的字符串 var str = "收件人:江苏省苏州市工业园区屌丝大叔收,电话:18688888888"; var re ...

  8. Chrome DevTools Protocol Viewer

    Chrome DevTools Protocol Viewer     awesome-chrome-devtools

  9. 由ORA-28001同一时候带出ORA-28000的解决的方法

    今天,在登录tomcat前台界面时发现不能登录,查看log后发现原来是ORA-28001: the password has expired的错误,这个错误是因为Oracle11G的新特性所致, Or ...

  10. DIOCP

    DIOCP GITHUB: https://github.com/ymofen/diocp-v5.git diocp5====== ## 快速开始 从那里得到: git更新(推荐同步更新) 1.htt ...