Java工程师-史上最通俗易懂Storm教程:大白话介绍

一、Storm到底是什么?


1、mysql,hadoop与storm


mysql:事务性系统,面临海量数据的尴尬
hadoop:离线批处理
storm:实时计算


2、我们能不能自己搞一套storm?


来一条数据,我理解就算一条,来一条,算一条


坑,海量高并发大数据,高并发的请求数据,分布式的系统,流式处理的分布式系统


如果自己搞一套实时流系统出来,也是可以的,但是。。。。


(1)花费大量的时间在底层技术细节上:如何部署各种中间队列,节点间的通信,容错,资源调配,计算节点的迁移和部署,等等


(2)花费大量的时间在系统的高可用上问题上:如何保证各种节点能够高可用稳定运行


(3)花费大量的时间在系统扩容上:吞吐量需要扩容的时候,你需要花费大量的时间去增加节点,修改配置,测试,等等


5万/s,10万/s,扩容


国内,国产的实时大数据计算系统,唯一做出来的,做得好的,做得影响力特别大,特别牛逼的,就是JStorm,阿里


阿里,技术实力,世界一流,顶尖,国内顶尖,一流


JStorm,clojure编程预压,Java重新写了一遍,Galaxy流式计算的系统,百度,腾讯,也都自己做了,也能做得很好


3、storm的特点是什么?


(1)支撑各种实时类的项目场景:实时处理消息以及更新数据库,基于最基础的实时计算语义和API(实时数据处理领域);对实时的数据流持续的进行查询或计算,同时将最新的计算结果持续的推送给客户端展示,同样基于最基础的实时计算语义和API(实时数据分析领域);对耗时的查询进行并行化,基于DRPC,即分布式RPC调用,单表30天数据,并行化,每个进程查询一天数据,最后组装结果


storm做各种实时类的项目都ok


(2)高度的可伸缩性:如果要扩容,直接加机器,调整storm计算作业的并行度就可以了,storm会自动部署更多的进程和线程到其他的机器上去,无缝快速扩容


扩容起来,超方便


(3)数据不丢失的保证:storm的消息可靠机制开启后,可以保证一条数据都不丢


数据不丢失,也不重复计算


(4)超强的健壮性:从历史经验来看,storm比hadoop、spark等大数据类系统,健壮的多的多,因为元数据全部放zookeeper,不在内存中,随便挂都不要紧


特别的健壮,稳定性和可用性很高


(5)使用的便捷性:核心语义非常的简单,开发起来效率很高


用起来很简单,开发API还是很简单的
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值