应用场景与实时计算 Flink 版产品介绍 | 学习笔记

本文涉及的产品
实时数仓Hologres,5000CU*H 100GB 3个月
实时计算 Flink 版,5000CU*H 3个月
云原生大数据计算服务 MaxCompute,5000CU*H 100GB 3个月
简介: 快速学习应用场景与实时计算 Flink 版产品介绍,介绍了应用场景与实时计算 Flink 版产品介绍系统机制, 以及在实际应用过程中如何使用。

开发者学堂课程【实时计算 Flink 实战课程应用场景与实时计算 Flink 版产品介绍】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/330/detail/3705


应用场景与实时计算 Flink 版产品介绍

内容介绍:

一、技术原理

二、技术场景

三、应用场景

四、行业案例

五、总结


一、技术原理

1.通晓原理举一反三

image.png

通晓产品背后技术原理,开发架构设计举一反三

对于数据开发人员,提升效率避免踩坑

对于数据架构人员,培养全局架构嗅觉

2.数据处理时效性的四大概念

(1)实时计算

强调计算实时特征

指计算过程快速、请求响应快速

描述的是业务实时需求特征:出结果一定要快

(2)离线计算

强调计算离线特征(非实时)

计算过程离线(非实时)、请求响应离线(非实时)业务离线需求特征:不要求快,最终出结果就行

(3)流计算(流处理)

强调计算是流式处理的

常驻、事件触发、通常具备实时性

技术特征,而非业务特征

(4)批处理

强调计算是批式处理的

非常驻,外界触发、通常不具备实时性技术特征,而非业务特征

实时计算与离线计算和流计算与批处理两个维度,实时计算、离线计算描述业务特征,处理业务需求;流计算与批处理强调技术需求。

3.数据处理两大门派

image.png

批处理分为三步,第一步为数据装载,装载到存储系统中,第二步批量计算系统将数据加载到存储中,可能进行一部分处理,第三步外界发起数据请求或计算请求,计算出结果,返回给用户。本质是装载、存储、计算。

流处理它的使用的方式完全不一样,用户通常会把一个流作业提前写好,提交集群或者提交到计算系统里面,数据写入一条,就会触发一条流式计算的运算,可以理解为数据写入一条,流式计算就会触发一次,运算一次,并最终写出一个结果

本质事件触发的一个计算。转数据来一条算一条,输出一条,这个过程非常的短批处理,处理描述的是这个数据处理的两大门派,是截然相反的两种处理模式。

4.流式处理特征

(1) Event 时间属性的事件

由事件触发的计算,Event 是计算的触发源,强调与时间相关。

(2) Stream 无界的事件集合

对于流计算,数据是源源不断的进入流计算系统,数据源不进行人为的干扰,数据会源源不断的进入消息队列,最终进入流式处理系统。

(3) Process 实时的在线处理

5.流式处理的业务价值

image.png

数据的价值随着时间流逝会迅速降低

案例:

image.png

实时化的价值:电商营销活动提升成交金额

 

二、技术场景

1. Stream Analytics

image.png

传统的分析方式通常是利用批查询,或将事件记录下来并基于此有限数据集构建应用来完成。为了得到最新数据的分析结果,必须先将它们加入分析数据集并重新执行查询或运行应用,随后将结果写入存储系统或生成报告。

image.png

流式查询应用会接入实时事件流,并随着事件消费持续产生和更新结果。

这些结果数据可能会写入外部数据库系统或以内部状态的形式维护。仪表展示应用可以相应地从外部数据库读取数据或直接查询应用的内部状态。

image.png

流式分析应用的优势

和批呈分析相比,由于流式分析省掉了周期性的数据导入和查询过程,因此从事件中获取指标的延迟更低。不仅如此,批量查询必须处理那些由定期导入和输入有界性导致的人工数据边界,而流式查询则无须考虑该问题。

Flink 如何支持数据分析类应用

Flink 内置了一个符合 ANSI 标准的 SQL 接口,将批、流查询的语义统一起来。无论是在记录事件的静态数据集上还是实时事件流上,相同SQL查询都会得到一致的结果。

同时 Flink 还支持丰富的用户自定义函数,允许在SQL中执行定制化代码。如果还需进—步定制逻辑,可以利用 Flink DataStream  API和 DataSet API 进行更低层次的控制

应用场景:

实时数仓、实时数据中台、实时BI

2.Stream Pipelines

image.png

数据管道和ETL作业的用途相似,都可以转换、丰富数据,并将其从某个存储系统移动到另一个。

但数据管道是以持续流模式运行,而非周期性触发。因此它支持从一个不断生成数据的源头读取记录,并将它们以低延迟移动到终点。例如:数据管道可以用来监控文件系统目录中的新文件,并将其数据写入事件日志;另一个应用可能会将事件流物化到数据库或增量构建和优化查询索引。

image.png

数据管道的优势

和周期性 ETL 作业相比,持续数据管道可以明显降低将数据移动到目的端的延迟。此外,由于它能够持续消费和发送数据,因此用途更广,支持用例更多。

Flink 如何支持数据管道应用

很多常见的数据转换和增强操作可以利用Flink的SQL接口《或Table API)及用户自定义函数解决。如果数据管道有更高级的需求,可以选择更通用的 DataStream API 来实现。 Flink 为多种数据存储系统(如: Kafka、Kinesis.Elasticsearch、JDBC 数据库系统等)内置了连接器。

同时它还提供了文件系统的连续型数据源及数据汇,可用来监控目录变化和以时间分区的方式写入文件

应用场景:

实时数据清洗、实时索引构建、实施警告

3.Event-Driven Application

image.png

事件驱动型应用是一类具有状态的应用,它从一个或多个事件流提取数据,并根据到来的事件触发计算、状态更新或其他外部动作。事件驱动型应用是基于状态化流处理来完成。

在该设计中,数据和计算不会分离,应用只需访问本地(内存或磁盘)即可获取数据。系统容错性的实现依赖于定期向远程持久化存储写入checkpoint。下图描述了传统应用和事件驱动型应用架构的区别。

image.png

事件驱动型应用的优势

事件驱动型应用无须查询远程数据库,本地数据访问使得它具有更高的吞吐和更低的延迟。

而由于定期向远程持久化存储的 checkpoint 工作可以异步、塔量式完成,因此对于正常事件处理的影响甚微。事件驱动型应用的优势不仅限于本地数据访问。传统分层架构下,通常多个应用会共享同一个数据库,因而任何对数据库自身的更改(例如:由应用更新或服务扩容导致数据布局发生改变)都需要谨慎协调。反观事件驱动型应用,由于只需考虑自身数据,因此在更改数据表示或服务扩容时所需的协调工作将大大减少。

Flink 如何支持事件驱动型应用

事件驱动型应用会受制于底层流处理系统对时间和状态的把控能力,Flink 诸多优秀特质都是围绕这些方面来设计的。它提供了一系列丰富的状态操作原语,允许以精确一次的一致性语义合并海量规模〔TB级别)的状态数据。

此外,Flink 还支持事件时间和自由度极高的定制化窗口逻辑,而且它内置的 ProcessFunction 支持细粒度时间控制,方便实现一些高级业务逻辑。

同时,Flink 还拥有一个复杂事件处理( CEP )类库,可以用来检测数据流中的模式。

应用场景:

反欺诈、异常检测、复杂规则告警

 

三、应用场景

1.实时数仓

image.png

(1)实时数仓

传统意义上将数据汇总到离线计算引擎,通过N+1天生成数据报表的模式已经不能满足快速增长的业务需求,互联网的在线特性也将业务需求推向了实时化,随时根据当前客户行为而调整策略变得越来越常见,传统数仓开始向实时数仓转型。

(2)客户价值

快速响应业务需求

秒级返回业务指标,快速进行多维分析节省用户成本

业务结果实时数据化,协助用户及时调整方向,减少无用投入

2.实时风控

image.png

(1)实时风控

风控是用户业务中的核心功能,应用范围非常广泛,包括内容风控、金融风控、营销风控等几大类型。互联网时代的到来产生大量的数据、访问、请求,新的业务需求促使传统的风控系统需要向大数据场景转型

(2)客户价值

实时性强

大数据场景下高吞吐、低延时,毫秒级报警拦截

独有事件规则支持

实时计算 Flink 独有的 CEP 语法天然支持规则设定,完美适配风控场景

3.实时机器学习

image.png

(1)实时机器学习

机器学习作为大数据的重要场景在越来越多的行业得到应用,但传统的算法,主要侧重于使用静态模型和历史数据进行训练并提供预测,如何针对用户短期的行为进行准确的、个性化的预测,从而动态实施决策就成为新的难题

(2)客户价值

①运营精细化

可支持对百万级客户快速画像,精准定位用户特性,个性化运营提高客户成交量与留存率

②低门槛

无缝集成实时计算学习算法平台,一站式完成数据开发、模型训练、场景预测全流程


四、行业案例

1.金融行业应用

image.png

长链路且快速变化的业务︰从业务需求出发,需要分析用户的行为轨迹和交易记录,以应对业务的快速变化。

越来越多的实时数据需求:目前需要更多的实时数据来支持业务决策。比如需要依据流量监控、销售情况等,对不同的资源位做出相应调整;同时部分活动也需要实时数据来增强与用户的互动,尤其在金融产品营销活动中需要实时针对用户行为调整策略。

越来越高的数据质量要求:数据的结果会直接影响业务决策和线上运营活动的效果,数据质量也决定了计算结果是否可以作为判断的依据。越来越多的实时风控需求:传统风控系统需要完成从依赖专家规则到智能风控的实时化转变,如信用违约、账户安全、贷款欺诈等典型场景

2.在线教育行业应用

image.png

在线教育行业实时化和智能化转型的过程中,对实时数据处理面临很多问题:

(1)数据量大:包括日志、数据库、业务集群数据等均有实时分析需求。

(2)低延时:很多场景对低延时需求非常迫切。

(3)使用角色多样化:公司中各个角色,包括Bl分析师、其他技术人员、业务运营人员等对实时报表都有需求。

(4)需求复杂:在线教育行业业务模型复杂,一些实时B场景逻辑也非常复杂,需要平台有完善的 SQL 支持.

3.内容资讯行业应用

image.png

在日益激烈的行业竞争态势下,各个主流内容资讯提供商都在探索AI+大数据的解决方案,来进行精细化运营,助力业务发展新模式,从业务需求上来讲,在大数据方面遇到的挑战如下:

(1)数据量大,增速迅猛:主流内容分享平台在新增用户数、日均 UV/PV 等核心指标上,产品初期每年都会有翻倍的增长。

2业务形态复杂:大量内容分享产品的母公司都在探索新的内容输出方式,如新闻类、短视频类、直播类等。各种业务形态差异大,对平台的通用化要求高。

3实时性要求高:内容分享平台的核心系统有个性化推荐、广告计费、风控等业务,业务上要实现精细化运营,对数据的实时性要求更高。

4.实时计算电商行业应用

image.png

在大数据时代,所有服务抢夺的关键是用户的剩余时间,用户在某个平台可能停留的时间以分钟为单位统计,传统离线T+1的分析统计已经远远不能够满足业务上的实时需求,而且用户每一天的需求都可能发生变化,用前一天的数据预测用户今天的变化显然也是不合理的,因此实时计算在电商行业的重要性越发突出。

5. 实时计算在广告行业应用

image.png

(1)在线反作弊:互联网广告的核心是流量,流量作假将直接影响收益。据ANA统计,大约有37%的在线广告点击存在作弊,可见在线反作弊模块的重要性,处理不当可能造成巨大的资金浪费。

(2)在线计费:很多广告系统是程序化交易(如 DSP),每次点击都会扣除广告主相应的费用,这要求系统能够快速完成结算、扣除费用,并下线费用不足的广告。并且计费需要扣除作弊流量,维护广告主的权益。

(3)在线受众定向:受众定向主要是计算用户的各种标签,有时用户短期内的行为更有参考价值,产出的短期标签更有效,比如受众突然看到某篇文章进而对某类产品产生了兴趣。这在效果类广告上更加明显。

(4)在线点击反馈:可以根据用户在线点击情况去调整CTR模型以更好的预估点击率。

(5)实时索引:广告是一种商业行为,广告主会根据当前广告的效果调整广告策略,每次调整后都需要尽快生效,否则将造成资金浪费,因此需要实时把广告的更新或发布都建到广告索引中去。

(6)实时广告链接检测:根据访问日志快速判断某些广告链接是否失效,如果失效则快速将其下线,防止资损。

 

五、总结

1.技术原理

从计算四大分类到批处理、流处理以及处理的具体特点,引出流计算的业务价值,通过天猫双11举例阐释。

2.技术场景

三个技术场景,所有的业务的场景和案例都是基于三个技术场景做叠加、转化、包装出来的结果。

3. 业务场景

三个不带行业属性的业务场景。

4. 行业案例

五个行业案例是三个技术场景三个业务场景在不同行业落地的最佳实践,行业中遇到的问题以及如何解决。

相关实践学习
基于Hologres轻松玩转一站式实时仓库
本场景介绍如何利用阿里云MaxCompute、实时计算Flink和交互式分析服务Hologres开发离线、实时数据融合分析的数据大屏应用。
Linux入门到精通
本套课程是从入门开始的Linux学习课程,适合初学者阅读。由浅入深案例丰富,通俗易懂。主要涉及基础的系统操作以及工作中常用的各种服务软件的应用、部署和优化。即使是零基础的学员,只要能够坚持把所有章节都学完,也一定会受益匪浅。
相关文章
|
2月前
|
消息中间件 JSON 数据库
探索Flink动态CEP:杭州银行的实战案例
本文由杭州银行大数据工程师唐占峰、欧阳武林撰写,介绍Flink动态CEP的定义、应用场景、技术实现及使用方式。Flink动态CEP是基于Flink的复杂事件处理库,支持在不重启服务的情况下动态更新规则,适应快速变化的业务需求。文章详细阐述了其在反洗钱、反欺诈和实时营销等金融领域的应用,并展示了某金融机构的实际应用案例。通过动态CEP,用户可以实时调整规则,提高系统的灵活性和响应速度,降低维护成本。文中还提供了具体的代码示例和技术细节,帮助读者理解和使用Flink动态CEP。
449 2
探索Flink动态CEP:杭州银行的实战案例
|
17天前
|
消息中间件 关系型数据库 MySQL
Flink CDC 在阿里云实时计算Flink版的云上实践
本文整理自阿里云高级开发工程师阮航在Flink Forward Asia 2024的分享,重点介绍了Flink CDC与实时计算Flink的集成、CDC YAML的核心功能及应用场景。主要内容包括:Flink CDC的发展及其在流批数据处理中的作用;CDC YAML支持的同步链路、Transform和Route功能、丰富的监控指标;典型应用场景如整库同步、Binlog原始数据同步、分库分表同步等;并通过两个Demo展示了MySQL整库同步到Paimon和Binlog同步到Kafka的过程。最后,介绍了未来规划,如脏数据处理、数据限流及扩展数据源支持。
154 0
Flink CDC 在阿里云实时计算Flink版的云上实践
|
2月前
|
存储 物联网 大数据
探索阿里云 Flink 物化表:原理、优势与应用场景全解析
阿里云Flink的物化表是流批一体化平台中的关键特性,支持低延迟实时更新、灵活查询性能、无缝流批处理和高容错性。它广泛应用于电商、物联网和金融等领域,助力企业高效处理实时数据,提升业务决策能力。实践案例表明,物化表显著提高了交易欺诈损失率的控制和信贷审批效率,推动企业在数字化转型中取得竞争优势。
103 16
zdl
|
3月前
|
消息中间件 运维 大数据
大数据实时计算产品的对比测评:实时计算Flink版 VS 自建Flink集群
本文介绍了实时计算Flink版与自建Flink集群的对比,涵盖部署成本、性能表现、易用性和企业级能力等方面。实时计算Flink版作为全托管服务,显著降低了运维成本,提供了强大的集成能力和弹性扩展,特别适合中小型团队和业务波动大的场景。文中还提出了改进建议,并探讨了与其他产品的联动可能性。总结指出,实时计算Flink版在简化运维、降低成本和提升易用性方面表现出色,是大数据实时计算的优选方案。
zdl
195 56
|
2月前
|
存储 关系型数据库 BI
实时计算UniFlow:Flink+Paimon构建流批一体实时湖仓
实时计算架构中,传统湖仓架构在数据流量管控和应用场景支持上表现良好,但在实际运营中常忽略细节,导致新问题。为解决这些问题,提出了流批一体的实时计算湖仓架构——UniFlow。该架构通过统一的流批计算引擎、存储格式(如Paimon)和Flink CDC工具,简化开发流程,降低成本,并确保数据一致性和实时性。UniFlow还引入了Flink Materialized Table,实现了声明式ETL,优化了调度和执行模式,使用户能灵活调整新鲜度与成本。最终,UniFlow不仅提高了开发和运维效率,还提供了更实时的数据支持,满足业务决策需求。
|
2月前
|
流计算 开发者
【开发者评测】实时计算Flink场景实践和核心功能体验测评获奖名单公布!
【开发者评测】实时计算Flink场景实践和核心功能体验测评获奖名单公布!
105 1
|
3月前
|
运维 数据挖掘 网络安全
场景实践 | 基于Flink+Hologres搭建GitHub实时数据分析
基于Flink和Hologres构建的实时数仓方案在数据开发运维体验、成本与收益等方面均表现出色。同时,该产品还具有与其他产品联动组合的可能性,能够为企业提供更全面、更智能的数据处理和分析解决方案。
|
3月前
|
SQL 运维 数据可视化
阿里云实时计算Flink版产品体验测评
阿里云实时计算Flink基于Apache Flink构建,提供一站式实时大数据分析平台,支持端到端亚秒级实时数据分析,适用于实时大屏、实时报表、实时ETL和风控监测等场景,具备高性价比、开发效率、运维管理和企业安全等优势。
|
Java 流计算
Flink学习笔记记录
Flink学习笔记记录
2262 0
|
5月前
|
运维 数据处理 数据安全/隐私保护
阿里云实时计算Flink版测评报告
该测评报告详细介绍了阿里云实时计算Flink版在用户行为分析与标签画像中的应用实践,展示了其毫秒级的数据处理能力和高效的开发流程。报告还全面评测了该服务在稳定性、性能、开发运维及安全性方面的卓越表现,并对比自建Flink集群的优势。最后,报告评估了其成本效益,强调了其灵活扩展性和高投资回报率,适合各类实时数据处理需求。