分布式计算引擎流处理_流计算

549f42ed5bb8330d2291eccb37397f5f.png

0 前言

讲流计算之前看下先来看下流计算以及批计算的计算模型:

≈ 流处理当一条数据被处理完成后,序列化到缓存中,然后立刻通过网络或消息传输到下一个节点,数据指标支持复杂化加工,以满足业务场景需要。

≡ 批处理数据批量处理,是一种适用于大规模并行批处理作业的分布式计算服务。BatchCompute可支持海量作业并发规模,系统自动完成资源管理,作业调度和数据加载,并按实际使用量计费。。

未来的流计算引擎方向,是既能满足流处理又能批处理,通俗讲就是数据加工时效性用时满足大发量,这里指的不是流计算替代批计算,而是下一代流计算引擎会兼容StreamCompute和BatchCompute,做到流批一体(流弊计算)。

1 流计算简介

流计算是一种融合CEP、可计算缓存的实时流数据处理平台, 其通过在数据流水流转过程中嵌入流处理引擎将所有流过的数据进行实时处理, 并将处理后的中间结果合并生成一个多维度的可计算数据魔方。

□ 数据维度: 可以是用户号、手机号、身份证号等小维度, 也可以是订单号、 等业务号之类大维度。

□ 计算指标: 某个数据维度的计算指标, 如某账号过去X日的产生的借款行为数据。

□ 时间窗口: 任意数据维度下任意计算指标都可以有时间窗口概念, 任意指定时间窗可以即时获取到对应的计算结果集。类似与Flink的时间窗口漂移。

应用场景有:实时风控、实时交易指标加工、各种平台的推荐系统等

2 CEP简介

CEP- Complex event processing, is event processing that combines data from multiple sources to infer events or patterns that suggest more complicated circumstances. The goal of complex event processing is to identify meaningful events (such as opportunities or threats) and respond to them as quickly as possible.

CEP几个特性:

□复杂性:多个流join,窗口聚合,时间序列或patterns检测

□低延时:毫秒级别计算,比如反欺诈,信用欺诈监测

□高吞吐:tps10000+ ,支持分布式扩展

3 主流框架对比

Storm:流处理,数据抽取、数据输出和算法逻辑需要手动编码实现,主要输出通过Topology实现

Spark Streaming:微批处理,通过Dstream定义实现定义数据源,开发程序达成Jar包后通过命令发布

Flink:流处理,根据数据类型自定义DataSet,DataStream或Table,通过调用不同API,输出计算结果

未来流计算:支持流处理、微批处理,根据预置算法,编写脚本,支持Restful接入,将结果集写入分布式缓存,快速产生结果指标

3 案例分享

阿里的实时流计算架构

e0f16fb6f46a4b307db31fb5b56e2a8a.png

如上图,数据源不停产生数据并推送到各类流式数据存储,进而触发流式计算任务进行处理和加工,流计算将计算结果直接推送到终端数据存储,在此基础上提供数据消费服务。

涉及生产环节

  • 数据产生
    数据发生源,各种业务场景实时产生大量数据。
  • 流式存储
    消息化的发布与订阅,数据实时进入流计算。
  • 流式计算
    通过各种维度的数据计算产生N多业务价值的数据指标,用于业务场景中使用。
  • 数据存储
    对接多种数据存储,为下游消费做准备。如Aerospike,Redis,关系数据库,Hbase/Hived等
  • 数据消费
    实时性强,只需毫米ms级,就可以订阅或消费得到结果数据。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值