storm

Twitter 数据实时分析处理工具 Storm

谁说胖子不能爱 提交于 2019-12-27 05:24:22
1、简介 Twitter Storm是一个分布式的、容错的 实时计算 系统,它被托管在GitHub上,遵循 Eclipse Public License 1.0。Storm是由BackType开发的实时处理系统,BackType现在已在Twitter麾下。GitHub上的最新版本是Storm 0.5.2,基本是用Clojure写的。 Storm为分布式实时计算提供了一组通用原语,可被用于“流处理”之中,实时处理消息并更新数据库。这是管理队列及工作者集群的另一种方式。 Storm也可被用于“连续计算”(continuous computation),对数据流做连续查询,在 计算时就将结果以流的形式输出 给用户。它还可被用于“分布式RPC”,以并行的方式运行昂贵的运算。 Storm的主工程师Nathan Marz表示: Storm可以方便地在一个计算机集群中编写与扩展复杂的实时计算, Storm之于实时处理,就好比 Hadoop之于批处理 。 Storm保证每个消息都会得到处理 ,而且它很快——在一个小集群中,每秒可以处理数以百万计的消息。更棒的是你可以使用任意编程语言来做开发。 2、Storm主要特点 简单的编程模型。类似于MapReduce降低了并行批处理复杂性, Storm降低了进行实时处理的复杂性 。 可以使用各种编程语言。你可以在Storm之上使用各种编程语言

storm/jstorm 相关命令

删除回忆录丶 提交于 2019-12-25 22:50:58
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> 1.启动nimbus,进程名为nimbus nohup storm nimbus & 2.启动supervisor,进程名为supervisor nohup storm supervisor & 3.启动ui,进程名为core nohup storm ui & 4.启动log nohup storm logviewer & 5.上传topo storm jar storm_topo.jar com.cjun.MainTopology myTopo storm_topo.jar:项目的jar包 com.cjun.MainTopology:主类的路径 myTopo:此topo在storm ui中显示的名称 6.杀死storm进程 先用jps查看storm进程,然后用:kill -9 x,杀死对应的进程,x为对应进程的进程号。 7.storm/jstorm杀死topo storm/jstorm kill count count为topo的名字 8.查看storm集群状况,浏览器输入网址:http://nimbus:8080 来源: oschina 链接: https://my.oschina.net/u/2260928/blog/364162

Storm 和JStorm

早过忘川 提交于 2019-12-25 22:49:30
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> 关于流处理框架,在先前的文章汇总已经介绍过 Strom ,今天学习的是来自阿里的的流处理框架JStorm。简单的概述Storm就是:JStorm 比Storm更稳定,更强大,更快,Storm上跑的程序,一行代码不变可以运行在JStorm上。直白的将JStorm是阿里巴巴的团队基于Storm的二次开发产物,相当于他们的Tengine是基于Ngix开发的一样。 阿里拥有自己的实时计算引擎 类似于hadoop 中的MR 开源storm响应太慢 开源社区的速度完全跟不上Ali的需求 降低未来运维成本 提供更多技术支持,加快内部业务响应速度 现有Storm无法满足一些需求 现有storm调度太简单粗暴,无法定制化 Storm 任务分配不平衡 RPC OOM一直没有解决 监控太简单 对ZK 访问频繁 JStorm 相比Storm更稳定 Nimbus 实现HA:当一台nimbus挂了,自动热切到备份nimbus 原生Storm RPC:Zeromq 使用堆外内存,导致OS 内存不够,Netty 导致OOM;JStorm底层RPC 采用netty + disruptor保证发送速度和接受速度是匹配的 新上线的任务不会冲击老的任务:新调度从cpu,memory,disk,net 四个角度对任务进行分配,已经分配好的新任务

storm 提高运行速度

元气小坏坏 提交于 2019-12-25 22:47:15
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> (1)要将系统中的算法调优。有可能一个算法浪费了一小部分时间,但由于数据量可能比较大,以至于整体上1秒的时间内可能浪费大量的时间。因此,算法的设计还是比较重要的。 (2)其次,就是调整系统中占用资源比较多、运算速度比较慢的那些spout和bolt。在进行topology设计时需要设计好每个bolt的并行度。对于运行速度比较慢的bolt,需要调大他们的并行度,是得更多的资源用到这些计算上面来。这里,bolt运行的快慢是可以从ui界面中看到的,如下图: 如上图,其中,capacity表示一种容量,其实就是占用的资源的百分比。比如,0.799就表示占用了79.9%的分配给这个bolt的资源。这个数值越大,则表示的处理起来速度越慢,则更要加大它的并行度。 (3)然后就是设置acker的数量。acker是在bolt成功处理后,进行ack调用的线程(还是进程,我忘记了)。当数据量比较大时,需要使用这个线程的次数就比较多,因此有可能这个线程就是制约处理速度的因素。因此,可以适当调大acker的数量,用于进行ack的调用。系统中,如果不设置的话,acker的数量默认为1;可以通过以下语句在topology中进行设定: conf.put(Config.TOPOLOGY_ACKER_EXECUTORS, 10);/

20191031 Storm 流式处理

荒凉一梦 提交于 2019-12-23 09:47:24
文章目录 Storm 简介 Storm 与 MapReduce 的区别 Storm 计算模型 Storm 应用场景 Storm 特点 Storm 计算模型详述 Storm 案例 Storm 数据累加 Storm Word Count Storm 数据分发策略* Storm 架构设计* 角色作用 Storm 架构与 Hadoop 架构比较 Storm 任务提交流程 Storm 并发机制* Worker Executor Task 之间的联系 调整 Worker Executor Task 的数量 rebalance 再平衡 Storm 通信机制 Worker 进程间的数据通信 Worker内部的数据通信* Storm 安装 伪分布式 完全分布式 Storm 容错保护机制 集群节点宕机 进程挂掉 消息的完整性 DRPC -同步实时分析 DRPC设计目的: DRPC架构图 DRPC 实现 DRPC 远程模式 kafka* Topics and Logs: 角色 Kafka集群部署 kafka 与 flume 整合 flume 与 Storm 整合 Flume 、Storm 、Kafka 整合架构 项目案例 模拟电信项目 事务 Design1 Design2 Design3 三种事务 Storm 简介 Storm 是个实时的、分布式以及具备高容错(协调 )的计算系统 Storm

storm2.1.0搭建教程

怎甘沉沦 提交于 2019-12-20 06:57:59
一、确定安装storm版本,这里默认安装storm2.1.0 二、搭建storm集群步骤开始(Here's a summary of the steps for setting up a Storm cluster : ) 安装一个Zookeeper集群(一般3台足够)( Set up a Zookeeper cluster ) ( 问题:单机需要装Zookeeper么 ) Zookeeper需要加入监控( It’s critical that you run Zookeeper under supervision, since Zookeeper is fail-fast and will exit the process if it encounters any error case. See here for more details. ) Zookeeper需要安装压缩Zookeeper数据和日志( It’s critical that you set up a cron to compact Zookeeper’s data and transaction logs. The Zookeeper daemon does not do this on its own, and if you don’t set up a cron, Zookeeper will

[zz]Twitter Storm:开源实时Hadoop

风流意气都作罢 提交于 2019-12-20 04:19:21
转载自:http://www.infoq.com/cn/news/2011/09/twitter-storm-real-time-hadoop Twitter将Storm正式开源了,这是一个分布式的、容错的实时计算系统,它被托管在GitHub上,遵循 Eclipse Public License 1.0。Storm是由BackType开发的实时处理系统,BackType现在已在Twitter麾下。GitHub上基本是用Clojure写的。 Storm为分布式实时计算提供了一组通用原语,可被用于“流处理”之中,实时处理消息并更新数据库。这是管理队列及工作者集群的另一种方式。 Storm也可被用于“连续计算”(continuous computation),对数据流做连续查询,在计算时就将结果以流的形式输出给用户。它还可被用于“分布式RPC”,以并行的方式运行昂贵的运算。 Storm的主工程师Nathan Marz表示: Storm可以方便地在一个计算机集群中编写与扩展复杂的实时计算,Storm之于实时处理,就好比Hadoop之于批处理。Storm保证每个消息都会得到处理,而且它很快——在一个小集群中,每秒可以处理数以百万计的消息。更棒的是你可以使用任意编程语言来做开发。 Storm的主要特点如下: 简单的编程模型。类似于MapReduce降低了并行批处理复杂性

处理大数据流常用的三种Apache框架:Storm、Spark和Samza。(主要介绍Storm)

柔情痞子 提交于 2019-12-19 23:54:07
处理实时的大数据流最常用的就是分布式计算系统,下面分别介绍Apache中处理大数据流的三大框架: Apache Storm 这是一个分布式实时大数据处理系统。Storm设计用于在容错和水平可扩展方法中处理大量数据。他是一个流数据框架,具有最高的社区率。虽然Storm是无状态的,它通过ApacheZooKeeper管理分布式环境和鸡群状态。使用起来非常简单,并且还支持并行地对实时数据执行各种操作。 Apache Storm继续成为实时数据分析的领导者是因为它的易于操作和设置,并且它保证每个消息将通过拓扑至少处理一次。使用storm时常常会设计一个用于实时计算的土状结构,称之为拓扑(topplogy)。将这个拓扑提交给集群之后,集群中的主控节点(master node)将分发代码,将任务分配给工作节点(worker node)。拓扑结构中履行职能的角色有两种:spout和bolt,其中spout发送消息,负责将数据流以tuple元组(不可变数组,固定的键值对)的形式发送出去;bolt则负责转换这些数据流,在bolt中可以完成计算、过滤等操作,bolt之间也可以随机互相发送消息。 下面是Storm的集群设计和其内部架构。 Twitter使用Storm框架处理流式大数据的应用场景: Twitter分析的输入来自Twitter Streaming API。Spout将使用Twitter

Storm实践(二):集群搭建

北战南征 提交于 2019-12-17 10:24:06
集群规划 角色 IP hostname nimbus 192.168.100.101 dda supervisor 192.168.100.102 ddb supervisor 192.168.100.106 ddg drpc.servers 192.168.100.106 ddg Nimbus可以配置多台,实现HA,这里暂时就配置一台 需要对外开放的端口: 6627: Nimbus 默认端口 3772: DRPC 默认端口 8080: Storm UI Web端口 配置文件 storm/conf/defaults.yaml 建议: Nimbus、DRPC的端口直接用默认的,无需更改 Nimbus wget http://mirrors.shuosc.org/apache/storm/apache-storm-1.1.1/apache-storm-1.1.1.tar.gz #配置Zookeeper storm.zookeeper.servers: - "192.168.100.105" - "192.168.100.104" - "192.168.100.103" #配置数据存储路径 storm.local.dir: "/root/apache-storm-1.1.0/data" #配置Nimbus master,如果有多个,可以填写,用逗号隔开 nimbus.seeds: [

初识Storm(1)

旧巷老猫 提交于 2019-12-15 19:53:54
个性化视频推荐系统 1. 个性化推荐与应用 2. 视频推荐系统 3. 推荐系统简介 :后台系统每天做一次数据的全量处理,统计分析用户以往的观看记录,将统计后的结果作为推荐的依据,然后 将视频个性 化的推荐给用户,提高用户观看视频的可能性。 存在的问题: 1. 单机部署 2. 处理数据量有限,不能扩展 3. 无法做到实时性 Storm是什么? 1. Storm是Twitter开源的一个分布式的实时计算系统 2. 使用场景:数据的实时分析,持续计算,分布式RPC等等。 Storm优点: 1. 分布式 2. 可扩展 3. 高可靠性 4. 编程模型简单 5. 高效实时 下载Storm安装包 1. 官网地址: http://storm-project.net/ 2. 源码地址: https://github.com/nathanmarz/storm 3. 技术论坛: https://groups.google.com/forum/#!forum/storm-user 4. 安装包结构介绍 Storm安装 环境:centos6.4 软件: jzmq-master-----java与c++通讯的桥梁,有了它,就可以使用zeromp了 storm-0.8.2 zeromq-2.1.7-----号称史上最牛逼的消息队列(用c++写的) zookeeper-3.4.5 1.编译安装ZMQ: tar