- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于Strm的实时大数据处理.doc
基于Storm的实时大数据处理
随着互联网的发展,需求也在不断地改变,基于互联网的营销业务生命周期越來越短,
业务发展变化越来越快,许多业务数据fi以指数级增长等等都耍求对大量的数据做实时处理, 并要求保证数裾准确可靠。而对这些挑战云计算、人数裾概念应运而生,Hadoop、Storm等 技术如雨后春笋般出现。本文就当今最火的实吋流数据处理系统Storm进行详细介绍。在介 绍Storm之前首先详细介绍了实吋计算和分布式系统相关技术概念以便为后面内界做铺垫。 通过对Storm的?木概念、核心理念、运行机制和编程场景进行了全而的探W,使得我们对 Storm奋了一个比较全面的理解和方便我们在这方面进行更进-?步的学习。
关键字:Storm;实时人数裾;流数裾处理
1概要
当今世界,信怠爆炸的吋代,互联网上的数据正以指数级别的速度增长。新浪微博注册 用户己经超过3亿,用户日平均迕线时长60min,平均每天发布超过1亿条微博111。在这种 背景下,云计算的概念被正式提出,立即引起了学术界和产业界的广泛关注和参与。Google 是云计算鉍早的們导者,随f各类大型软件公司都争先在“云计算”领域进行一系列的研究 和部署丁作。U前最流行的莫过于Apache的开源项kl Hadoop分布式计算平台,Hadoop专 注于大规模数裾存储和处理。这种模型对以往的许多情形虽已足够,如系统n志分析、网页 索引建立(它们往往都是把过去一段时间的数据进行集中处理),但是在实时大数据方而, Hadoop的MapReduce却显得力不从心,业务场景屮需要低延迟的响希単在秒级别成者 毫秒级别完成分析,得到响应,并希望能够随着数裾呈的增人而扩展。此时,Twitter公司 推!li开源分布式、容错的实吋流计算系统Storm,它的岀现使得大规模数据实时处理成为可 能,填补了该领域的空白。
Storm是一个类似于Hadoop可以处理人量数据流的分布式实时计算系统。俱是二者存 在很人的区,其最主要的区别在于Storm的数裾一S在内存屮流转,Hadoop使用磁盘作为 交换介质,需要读写磁盘。在应川领域方面,Storm足基于流的实吋处现,Hadoop足基于 任务调度的批量处理。另一个方面,Hadoop难于HDFS需要切分输入数据、产生中间数据 文件、排序、数裾压缩、多份复制等,效率比较低,而Storm菽于ZeroMQ这个高性能消息 通讯库,不持久化数据12]。
2实时计算介绍
实时计算(Real-time computing)也称为即时计算,是计算机科学中对受到“实时约束” 的计算机硬件和计算机软件系统的研究,实时约束是从事件发生到系统回应之间的敁长时间 限制。实吋程序必须保证在严格的吋间限制内响应。
瓦联网领域的实吋计算一般都是针对海M?数据进行的,实吋计算最秉要的-个需求是能 够实时响应计算结果,一般要求为秒级。互联网行业的实时计算可以分为以下两种应用场景:
持续计算:主要用于互联网流式数据处理。所谓流式数裾是指将数据看作是数据 流的形式來处理。数据流是一系列数据记录的集合体。常见的数据流如网站的访M PV/UV、 点击、搜索关键字。
实时分析:主要用于特定场合下的数裾分析处理。当数裾朵很人,且存在无穷的 査询条件组合,或穷举并提前计算和保存结果的代价很大时,实时计算就可以发挥作用,将 部分计算或全部计算过程推迟到査询阶段进行,但要求能够实吋响应。
实时计算需要解决的M题和难点是实时存储和实吋计算。实时存储可以通过使用高性能
的NoSQL存储来实现,实吋的计算需要依赖于计算过程全内存化。实时计筇过程一般划分 为以下三个阶段:数据的产生与收集、传输与分析处理、存储并对外捉供服务。对于分布式 系统來说,系统的可配置性、可维护性、可仲缩性十分重要,实吋计算丼不适川于所奋场景, 因此需要根据实际业务需求和实际场景,从众多的技术和框架屮进行选择。
3分布式系统相关技术介绍
HBase
HBase是一个高可哉、高性能、面叫列、可伸缩的开源分布式数摒库,根摒Google发 表的Bigtable论文进行设计,可以说是Google Bigtable的幵源实现。与Bigtable依赖于GFS 作为其文件存储系统和Chubby作为集群协同服务类似,HBase的依赖于Hadoop HDFS提供 的底屋文件存储服务和Zookeeper提供的协同服务,卯使用Hadoop MapReduce作为K海景 数据处理的编程模型。使用者利用廉价的PC服务器便可以搭建HBase组成的大规模结构化 存储集群⑴。HBase使川java开发,实现了 Bigtable的人部分特性,WM之上的语言可以直 接利用其提供的API,而其他语言可以通过Thrift API或RESFul API来实现调用。HBase基于 HDFS提
文档评论(0)