• 欢迎来到魔据教育大数据学院,专注大数据工程师培养!
    当前位置:首页 > 学习资料 > 讲师博文 > Strom和SparkStreaming对比

    Strom和SparkStreaming对比

    时间:2017-08-17 18:05:17作者:[!--zuozhe--]

     

    一、场景
    伴随着信息科技日新月异的发展,信息呈现出爆发式的膨胀,人们获取信息的途径也更加多样、更加便捷,同时对于信息的时效性要求也越来越高。举个例子,如果用户昨天在?#21592;?#19978;买了一双袜子,今天想买一副泳镜去游泳,但是却发现系统在不遗余力地给他推荐袜子。根本对他今天寻找泳镜的行为视而不见,这样买家的用户体验户非常的差。其实稍微了解点背景知识的码农们都知道,这是因为后台系统做的是每天一次的全量处理,而且大多是在夜深人静之时做的,那么你今天白天做的事情?#27604;?#35201;明天才能反映出来啦。
    二、storm
    Storm是一个免费并开源的分布式实时计算系统。利用Storm可以很容易做到可靠地处理无限的数据流,像Hadoop批量处理大数据一样,Storm可以实时处理数据。Storm简单,可以使用任何编程语言。
    Storm有如下特点:
    Ø 编程简单:开发人员只需要关注应用逻辑,而且跟Hadoop类似,Storm提供的编程原语也很简单
    Ø 高性能,低?#26144;伲?#21487;以应用于广告搜索引擎这种要求对广告主的操作进行实时响应的场景。
    Ø 分布式:可以轻松应对数据量大,单机搞?#27426;?#30340;场景
    Ø 可扩展:随着业务发展,数据量和计算量越来越大,系统可水平扩展
    Ø 容错:单个节点挂了不影响应用
    Ø 消息?#27426;?#22833;:保证消息处理
     
     
    Storm不是完整的解决方案。使用Storm时你需要关注以下几点:
    Ø 如果使用的是自己的消息队?#26657;?#38656;要加入消息队列做数据的来源和产出的代码
    Ø 需要考虑如何做故障处理:如何记录消息队列处理的进度,应对Storm重启,?#19994;?#30340;场景
    Ø 需要考虑如何做消息的回退:如果某些消息处理一直失败怎么办?
    Strom应用场景
    Storm有很多应用:实时分析,在线机器学习(online machine learning),连续计算(continuous computation),分布式远程过程调用(RPC)、ETL?#21462;torm处理速度很快:每个节点每秒钟可?#28304;?#29702;超过百万的数据组。它是可扩展(scalable),容错(fault-tolerant),保证你的数据会被处理,并且很容易搭建和操作。

    12-1.png

    三、SparkStreaming
    Spark是一个类似于MapReduce的分布式计算框架,其核心是RDD(弹性分布式数据集),提供了比MapReduce更丰富的模型,可以在快速在内存中对数据集进行多次迭代,以支持复杂的数据挖掘算法和图形计算算法。Spark Streaming是一种构建在Spark上的实时计算框架,它扩展了Spark处理大规模流式数据的能力。
    Spark Streaming的优势在于:
    Ø 能运?#24615;?00+的结点上,并达到秒级?#26144;佟?/span>
    Ø 使用基于内存的Spark作为执行引擎,具有高效和容错的特性。
    Ø 能集成Spark的批处理和交互查询。
    Ø 为实现复杂的算法提供和批处理类似的简单接口。
    四、Storm与SparkStreaming对比

    12-2.png 

    对于Storm来说:
    Ø 建议在那?#20013;?#35201;纯实时,不能忍受1秒以上?#26144;?#30340;场景下使用,比如实时金融系统,要求纯实时进行金融交易和分析
    Ø 对于实时计算的功能中,要求可靠的事务机制和可靠性机制,即数据的处理完全精准,一条也不能多,一条也不能少,也可以考虑使用Storm
    Ø 需要针对高峰?#22836;?#26102;间段,动态调整实时计算程序的并行度,以最大限度利用集群资源(通常是在小型公司,集群资源紧张的情况),也可以考虑用Storm
    Ø 一个大数据应用系统,它就是纯粹的实时计算,不需要在中间执行SQL交互式查询、复杂的transformation算子等,那么用Storm是比较好的选择
    对于Spark Streaming来说:
    Ø 如果对上述适用于Storm的三点,一条都不满足的实时场景,即,不要求纯实时,不要求强大可靠的事务机制,不要求动态调整并行度,那么可以考虑使用Spark Streaming
     

    更多大数据相关资讯敬请关注魔据教育,为您分享最及时的大数据资讯。
    学习大数据敬请关注魔据教育微信二维码。
    魔据教育微信二维码

    ?#26223;?#26435;与免责声明】如发现内容存在版权问题,烦请提供相关信息发?#22987;?#33267;[email protected],我们将及时?#20302;?#19982;处理。本站内容除非来源注明魔据教育,否则均为网友转载,涉及言论、版权与本站无关。

    全国咨询热线:18501996998,值班手机:18501996998(7*24小时)

    在线咨询:张老师QQ 320169340

    企业合作服务专线:010-82340234-821, 院校合作洽谈专线:010-82340234

    Copyright 2001-2019 魔据教育 - 北京华育兴业科技有限公司 版权所?#26657;?#20140;ICP备17018991号-2

    安徽十一选五开奖号码