3.2流计算与Storm.pptx

  1. 1、本文档共21页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
3.2 流数据:实时计算、Storm;流计算概述 依据数据变化程度分为静态和动态: 静态数据:来自不同的数据源,不会发生更新的历史数据,适合MapReduce离线、批量处理。;动态数据:以大量、快速、时变的流形式持续到达,譬如:Web应用、网络监控、传感检测、电信、金融或生产制造等领域。 流数据(或数据流)是指在时间分布和数量上无限的一系列动态数据的集合体,数据记录是流数据的最小组成单元。流数据具有如下特征: 数据快速持续到达,潜在大小也许是无穷无尽的 数据来源众多,格式复杂 数据量大,但是不十分关注存储,一旦经过处理,要么被丢弃,要么被归档存储 注重数据的整体价值,不过分关注个别数据 数据顺序颠倒,或者不完整,系统无法控制将要处理的、新到达的数据元素的顺序 ;批量计算和实时计算 批量计算以“静态数据”为对象,可在充裕的时间内对海量数据进行批量处理,计算得到有价值的信息。Hadoop是典型的批处理模型,由HDFS和HBase存放大量的静态数据,由MapReduce负责对海量数据执行批量计算 实时计算最重要的一个需求是能够实时得到计算结果,一般要求响应时间为秒级。,在大数据时代,针对流数据的实时计算——流计算。;流计算:是指实时获取来自不同数据源的海量数据,经过实时分析处理,获得有价值的信息。 基本理念:数据的价值随着时间的流逝而降低。 ;对于一个流计算系统来说,它应达到如下需求: 高性能:处理大数据的基本要求,如每秒处理几十万条数据 海量式:支持TB级甚至是PB级的数据规模 实时性:保证较低的延迟时间,达到秒级别,甚至是毫秒级别 分布式:支持大数据的基本架构,必须能够平滑扩展 易用性:能够快速进行开发和部署 可靠性:能可靠地处理流数据;流计算框架(流计算平台/系统)分类: 1.商业级的流计算平台 IBM InfoSphere IBM StreamBase 2.开源计算框架 Twitter Storm Yahoo!S4(Simple Scalable Streaming System) 3.公司为支持自身业务开发的流计算框架 Facebook Puma 百度 Dstream 淘宝 银河流数据处理平台 量子恒道 Super Mario 4.实时大数据流处理服务的公司:SQLStream;流计算的处理流程 一般包括三个阶段: 数据实时采集 数据实时计算 实时查询服务;数据实时采集:通常采集多个数据源的海量数据,需要保证实时性、低延迟与稳定可靠。 数据采集系统的基本架构: Agent:主动采集数据,并把数据推送到Collector部分。 Collector:接收多个Agent的数据,并实现有序、可靠、高性能的转发。 Store:存储Collector转发过来的数据。但对于流计算,一般在Store部分不进行数据的存储,而是直接发送给流计算平台。 ;数据实时计算:对采集的数据进行实时分析和计算,并反馈实时结果。 经流处理系统处理后的数据,可视情况进行存储,以便之后再进行分析计算。在时效性要求较高的场景中,处理之后的数据也可以直接丢弃。;实时查询服务:经由流计算框架得出的结果可供用户进行实时查询、展示或储存。 在传统的数据处理流程中,用户需要主动发出查询才能获得想要的结果(pull,拉方式)。在流处理流程中,实时查询服务可以不断更新结果,并将用户所需的结果实时推送给用户(push,推方式)。;流计算的应用 实时分析:基于用户行为的分析实现个性化推荐(秒级响应)。譬如:量子恒道Super Mario流计算框架,每天可处理TB级Log数据流,从用户发出请求到数据展示,整个延时控制在2~3秒。 实时交通:根据交通情况的变化实时更新线路,始终为用户提供最佳的行驶路线。譬如:IBM InfoSphereStreams应用于斯德哥尔摩的交通信息管理。;开源流计算框架Storm Twitter Storm自2011年发布,是一个免费、开源的分布式实时计算系统。Twitter是全球访问量最大的社交网站之一,Twitter开发Storm流处理框架是为了应对其不断增长的流数据实时处理需求。Storm对于实时计算的意义类似于Hadoop对于批处理的意义。 Storm可以简单、高效、可靠地处理流数据,并支持多种编程语言,可以方便地与数据库系统进行整合,从而开发出强大的实时计算系统。 ;Storm的特点 整合性:Storm可方便地与队列系统和数据库系统进行整合; 简易的API:Storm的API在使用上即简单又方便; 可扩展性:Storm的并行特性使其可以运行在分布式集群中; 容错性:Storm可自动进行故障节点的重启、任务的重新分配; 可靠的消息处理:Storm保证每个消息都能完整处理; 支持各种编程语言:Storm支持使用各种编程语言来定义任务; 快速部署:St

您可能关注的文档

文档评论(0)

shaoye348 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档