【摘要】:其中Storm是一套分布式、可靠、可容错的用于处理流式数据的系统。Storm系统有其独特的特性:简单的编程模型。Storm提供类似于MapReduce的操作,降低了并行批处理与实时处理的复杂性。在工作过程中,如果出现异常,Storm将以一致的状态重新启动处理以恢复正确状态。
3.3.2.1 流式数据
流式数据是一个无穷的数据序列,序列中的每一个元素来源不同,格式复杂,序列往往包含时序特性。在大数据背景下,流式数据处理常见于服务器日志的实时采集,将PB级数据的处理时间缩短到秒级。数据流中的数据格式可以是结构化的、半结构化的甚至是非结构化的,数据流中往往含有错误元素、垃圾信息等,因此流式数据的处理系统要有很好的容错性及不同结构的数据分析能力,还能完成数据的动态清洗、格式处理等。
3.3.2.2 流式数据分析处理系统
流式数据处理有Twitter的Storm,Facebook的Scribe,Linkedin的Samza等。其中Storm是一套分布式、可靠、可容错的用于处理流式数据的系统。其流式处理作业被分发至不同类型的组件,每个组件负责一项简单的、特定的处理任务。
Storm系统有其独特的特性:(www.xing528.com)
(1)简单的编程模型。Storm提供类似于MapReduce的操作,降低了并行批处理与实时处理的复杂性。
(2)容错性。在工作过程中,如果出现异常,Storm将以一致的状态重新启动处理以恢复正确状态。
(3)水平扩展。Storm拥有良好的水平扩展能力,其流式计算过程是在多个线程和服务器之间并行进行。
(4)快速可靠的消息处理。Storm利用ZeroMQ作为消息队列,极大地提高了消息传递的速度,任务失败时,它会负责从消息源重试消息。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。