分布式流处理技术

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
面向的是带有时间戳的有序数据。 它采用了低位线方式对数据进行批 次切分和局部排序,以内部计时器 触发机制保证数据按顺序处理,支 持状态的持久化保存。
主流技术
Spark Streaming
引入微批次的概念,将数据 的处理粒度由单条记录粗化 为数据集合,把对于数据流 的操作看作是接连不断的批 处理操作。
数据时效性强
特征2
数据规模大,往往达到PB级别。根据 IDC的“数字宇宙”的报告,预计到 2020年,全球数据使用量将达到35.2ZB。
数据量大
特征3
数据产生速度快,可以达到GB/S级别, 数据量暴增场景频现。
数据量增速快
特征4
分布式流处理技术演变历程
分布式流处理技术发展并非一蹴而就,其演变历程大致可分为三个阶段:初始期、发展期以 及成熟期。实时数据库、主动数据库以及信息过滤系统为流处理技术初始期形态;集中式数据量 管理系统为流处理技术发展形态;最后演变成成熟期的分布式流处理技术平台。
社交 电信 交通
用户流量、资费实时统计做到 个性化提醒服务;套餐、终端、 阅读、动漫等根据用户画像进 行个性化推荐服务。
实时接收用户使用手机软件发送 的约车请求,司机根据约车请求 进行接单(或派单),到达目的 地后进行实时结算服务。
交通服务应用场景举例
支付
乘客
司机
查询LBS
实时更新LBS
LBS
应用场景—实时监控
76543210
76543210
partition 1
Samza Job
76543210
partition 2
YARN
Task
76543210 76543210
76543210
Kafka input stream
Task Samza Containers
76543210 changelog stream
研发成果 向社会公开
带给IT管理者 全面的平台建 设经验
技术组件 开放研发
带给开发者群 体以技术能力 提升
用分享,降低创新的社会成本
让我们遇见未来
平台 · 让创新无限
(spout和bolt组成的网络)
Nimbus 2
Nimbus 3
Client
Kafka Flume HDFS …
Zookeeper 获取task 管理worker
发送 心跳 执行 task Supervisor
Supervisor 启动worker worker Netty
worker
Task
LMAX Disruptor
Task
Task
r3
Samza简介
Samza是由三层构成: 1. 数据流层:分布式消息中间件Kafka;
2. 执行层:Hadoop资源调度管理系统YARN;
3. 处理层:Samza API。
Samza API
YARN
Kafka
Samza运行原理
partition 0
Task
output stream
分布式流处理技术总结对比
对比项
产生时间 软件结构 数据模型 2010 去中心化 Event
S4
2011
Storm
弱中心化 Tuple
Spark Streaming
2012 中心化 Object 2013
Samza
2013 中心化 Object
MillWheel
中心化 <key,value, timestamp>
Samza
数据传输依赖于LinkedIn公司的另一 开源项目Kafka分布式队列,原生支 持与YARN协作,共享计算节点以及 完成集群控制和故障恢复等工作。
Storm简介
Strom采用弱中心化结构,提供消息处理反馈机制、巧妙的利用异或计算保障记录被完全处理,抽 象出部分如连接、聚合等复杂运算的编程接口。
1.实时数据库 集中式
2.主动数据库
3.信息过滤系 统
数据流
分布式流 处理平台
管理系统
2000年
2010年
初始期
发展期
成熟期
分布式流处理技术定义
针对流式数据的一种分布式、高吞吐、高可用、低延迟、具有自身容错性的实时计算技术,它 根据一组处理规则来进行持续计算的技术。
科学排水系统
目录
分布式流处理技术概述 分布式流处理主流技术
Task
Task
Spark Streaming简介
Spark Streaming是建立在Spark上的实时计算框架,通过它提供的丰富的API、基于内存 的高速执行引擎,用户可以结合流式、批处理和交互试查询应用。 User Application 用户应用 Spark Streaming 流计算 Spark SQL 分析计算 MLlib 机器学习 Graphx 图计算与挖掘
处理单元
数据有序 路由 负载均衡
单条
不支持 by key 静态策略
单条/批量
不支持 多种 动态策略
微批次
不支持 / 动态策略
单条/批量/窗口
不支持 依靠kafka 动态策略
单条/窗口
支持 by key 动态自适应
ACK机制
语义保障 状态存储 中间结果存储 故障恢复
不支持
最多一次 本地内存 本地内存 被动备用
分布式流处理技术
平台 · 让创新无限
平台 · 让创新无限
目录
分布式流处理技术概述 分布式流处理主流技术
分布式流处理技术应用场景
分布式流处理技术产生背景
数据价值高
特征1 数据
数据已经渗透到每一个行业和业务职能 领域,对数据的占有、控制、挖掘和运 用已成为国家间和企业间新的争夺焦点。 营销时机转瞬即逝、风险防控分秒必争、 重大决策快速精准,数据处理必须在秒 级或更短的时间内得到结果。
基于kafka的Ack 支持 不支持 支持 严格一次/至少一次/ 严格一次/至少一次/ 最多一次 最多一次 至少一次 严格一次 本地持久化/远程备 本地内存/远程数据库 本地内存 份 备份仓库 本地内存/分布式文件 Kafka 内存/备份仓库 本地内存 系统
上游备份 检查点并行恢复 上游备份 检查点备份
目录
分布式流处理技术概述 分布式流处理主流技术
分布式流处理技术应用场景
应用场景—实时营销
根据特定消费者当前的个性需求,为其提供商品,该商品在被消费过程中可自动收集顾客信息, 分析、了解消费者的偏好和习惯,自动调整产品功能,实时地适应消费者变化着的需求。
根据客户信用卡消费记录,掌握
客户的消费习惯和偏好,预测客
实时监控一般是指利用软件或硬件采集信息,并用采集到的信息对系统、环境、硬件等运行状 态进行实时的监控。
对机械运行状态信息进行实
时监控,分析出可能产生问
题的部件进行预警。
制造
金融
信用卡诈骗、保险诈骗、 证券交易诈骗、程序交易 等需要实时跟踪发现。
通过传感器实时感知车辆、道 路的状态,并分析和预测一定范 围、一段时间内的道路流量情 况,以便有效地进行分流、调度 和指挥。
分布式流处理技术应用场景
分布式流处理主流技术平台
S4
通用分布式流处理平台,采用 去中心化结构,各对等节点通 过ZooKeeper进行协调工作。
Storm
弱中心化结构,提供消息处 理反馈机制、巧妙的利用异 或计算保障记录被完全处理, 抽象出部分如连接、聚合等 复杂运算的编程接口。
MillWheel
Numbus
ZooKeeper
ZooKeeper
Spout
Bolt Bolt
Supervisor
Supervisor
worker Executor Task Task …

worker Executor Task Task … Spout
Bolt
集群
Topology
Storm运行原理
提交topology 建立topology本地目录 Nimbus 1 监控task心跳 分配tasks
户未来的消费需求,并为其推荐 个性化的金融产品。
金融
电商 广告
根据电商平台用户浏览商品的分 类、价格区间、品牌等因素对用 户进行个性化推荐促成交易。
根据客户的查询偏好、浏览历
史、地理位置等综合语义决定 插入什么广告、在什么位置插
入这些广告能得到最佳效果。
电商个性化实时推荐场景举例
电商平台 实 时 推 荐
Spark Core Spark核心
Standalone 独立运行
Yarn 资源管理器
Mesos 资源管理器
… 其他
HDFS 分布式文件系统
Spark Streaming运行原理
Client
Kafka 数据输入流 Flume
Worker node
Executor
Driver Program
cache
自动化 算法修正 商品、店铺等推荐 推荐接口
网站 APP …
非电商 业务系统
用户 画像
结果排序
效果统计
外部数据
用户操作
应用场景—实时服务
对消费者动态需求的快速反应,随时满足消费者在消费过程中新产生的需求,提高消费者的满意
程度,培养消费者对企业的忠诚度并提升企业的竞争力。 实时分析用户的状态信息,及时提 供最新的用户分享信息到相关的 朋友,准确地推荐朋友,推荐主题,提 升用户体验,并能及时发现和屏蔽 各种欺骗行为。
StreamingContext
处理接收数据Job
Task 处理接收数据Task
Receiver
t
t
tHale Waihona Puke Baidu
HDFS

Cluster Manager
处理接收数据Task Worker node Executor
SparkContext
Storage
输出批量结果流
r1 r2 Database HDFS …
cache
交通
运维实时监控
流量监控 进程监控 日志监控 接口监控 网络监控 服务器资源 监控 … 监控点 预处理 实时计算 告警通知 数据采集 传输 异常告警
存储
监控平台
普元云计算研发开放计划
参与DevOps、微服务、大数据
用开放,形成创新的社会生态
研发过程 向内外公开
形成云计算社 会化创新生态
公开课,欢迎关注如下微信号, 并回复 “wz+微信号”
相关文档
最新文档