上海品茶

您的当前位置:上海品茶 > 报告分类 > PDF报告下载

4、李劲松-基于 Flink Dynamic Table 构建流批一体数仓.pdf

编号:101913 PDF 31页 4.43MB 下载积分:VIP专享
下载报告请您先登录!

4、李劲松-基于 Flink Dynamic Table 构建流批一体数仓.pdf

1、李劲松/阿里巴巴技术专家基于 Flink Dynamic Table 构建流批一体数仓业务痛点动态表流式数仓PLAN#2#3#4#5#1业务需求#1 1业务需求业务需求Streaming ETL搭建实时数仓搭建实时数仓Day ResultsWeek ResultsMonth ResultsJoinAggregationsODSDWDADS BOSS:快快快!给我看到实时的数据!即席查询与数据订正即席查询与数据订正JoinAggregationsODSDWD BOSS:我能不能随便查查数仓的数据?BOSS:有脏数据?清理下?Filter/ProjectDay ResultsWeek Result

2、sMonth ResultsIcebergHudiPresto/Spark/Hive即席查询Spark/Hive分区重刷新增实时业务指标新增实时业务指标JoinODSDWD BOSS:来,给我新增一些业务指标!IcebergPresto/Spark/HiveFilter/ProjectSpark/Hive分区重刷Day ResultsWeek ResultsMonth ResultsHybrid Source-Aggregations即席查询Hudi维表节省成本维表节省成本ODSDWD BOSS:成本太高了,给我省着点!IcebergPresto/Spark/HiveFilter/Projec

3、tSpark/Hive分区重刷Day ResultsWeek ResultsMonth ResultsHybrid Source-Aggregations即席查询HudiLookup JoinProject复用我们真的需要这么多系统吗?#2 2业务痛点业务痛点实时数仓痛点实时数仓痛点 Kafka 成本昂贵Kafka 只保留最近数据导出到 Hive?系统复杂度 Kafka 难以查询行存:几乎不可查询导出到 KV engine/OLAP,系统复杂度 流计算 难以使用各种 Changelog Kind,增量计算模型?“sink only accepts append-only messages”数据

4、怎么多了?手动去重?流批一体 难以达成流批割裂,数据、表结构和计算越行越远流批难以协作,比如 backfilling、流连接批维表workaroundworkaround:中间数据导出去:中间数据导出去HologresClickHouseIcebergHudi带给用户的复杂:Append Only&Upsert Primary Key&Timestamp 依赖 State 流与批 不一致的体验带给平台的复杂:运维成本:Maintain Servers 学习成本:用法各不相同 打通成本:不同系统难以打通#3 3动态表动态表RethinkRethink 流和批流和批Snapshot1Snapsho

5、t2Snapshot3Changelog(Binlog,WAL)流数据Database:统一流存储和批存储批数据数据仓库的流批一体存储:Database 的体验!动态表动态表:全新的:全新的FlinkFlink内置存储内置存储HologresDorisHudiClickhouseIcebergKafkaFlink 动态表 Snapshot+Log 满足所有 User Case 存储易用 直接查询DFS动态表:存储结构动态表:存储结构Distributed File System动态表存储Log QueueSinkStreaming Reading(Read Changes)Batch Read

6、ing(Read Snapshot)Lookup Join(Read Snapshot by Key)ColumnarMerge Tree动态表:流批一体动态表:流批一体 读取流读:读取 Log Changes批读:读取 Snapshot流批融合:Hybrid 读Lookup:支持点查 写入流写:持续插入批写:支持分区、支持Overwrite Lake StoreOn DFS,无服务,计算存储分离列存高性能分析Batch WriteStream WriteBatch ReadStream Read动态表:全面支持动态表:全面支持 SQLSQLCREATE TABLE user_behavior

7、(user_id BIGINT,item_id BIGINT,category_id BIGINT,behavior STRING,dt STRING,PRIMARY KEY(user_id,item_id)NOT ENFORCED)PARTITIONED BY(dt);OptionalOptional不用定义OptionsINSERT INTO user_behavior SELECT 支持任意 SQL 的写入 支持任意 DDL 定义只有业务逻辑主键定义可选支持所有类型 支持任意 SQL 插入任意消息类型全面DML支持动态表:动态表:MergeMerge TreeTree LSM:Log-S

8、tructured Merge Tree 支持大量快速更新更新写增量文件基于 Sorted File 的按需 Merge 支持高效分析全局有序 Sorted File 的 Data SkippingSort Aggregation and Sort Merge Join 支持点查HologresClickHouseFlink stateMerge Tree 是实时的核心#4 4流式数仓流式数仓流式数仓:流式数仓:StreamingStreaming WarehouseWarehouse业务数据DWDDWSADSFlink OLAP SQLTable动态表LogFlink CDCTable动态表

9、LogFlink ETLFlink SQL流式数仓:流写流读流式数仓:流写流读Streaming WriteStreaming Read最好用的 Log Connector 实时:最低毫秒级延迟 准确:Exactly-once 全面:输入支持Changes 优化:减少物化SET execution.runtime-mode=streaming;INSERT INTO user_behavior SELECT SELECT*FROM user_behavior;Table动态表Log流式数仓:流式数仓:OLAPOLAPStreaming WriteOLAP 分析Snapshot Read OLA

10、P 查询实时数据 OLAP 查询历史数据 快速:强大的 Data Skipping 准确:保存所有数据 灵活:支持分布式 Join、聚合、Over等SET execution.runtime-mode=batch;SELECT address,COUNT(*)AS cntFROM user_behavior b JOIN user_attribute aON b.user_id=a.user_idGROUP BY b.address;Table动态表Log流式数仓流式数仓-离线:分区重刷离线:分区重刷业务数据DWDDWSADSTable动态表LogFlink CDCTable动态表LogFli

11、nk ETLFlink SQLBatch 读取分区重刷Batch 读取Flink Batch SQL流式数仓流式数仓-离线:数据订正离线:数据订正Streaming WriteStreaming Read ACID:并发写入,流批互不干扰 全面:支持各种 Batch DML 当做离线数仓构建 Batch PipelineSET execution.runtime-mode=batch;INSERT OVERWRITE user_behavior PARTITION(dt=20211130)SELECT;Table动态表LogBatch 覆写分区OLAP 查询流式数仓:上线新业务流式数仓:上线新

12、业务业务数据DWDDWSADSFlink CDCFlink ETLFlink SQL批流融合:Hybrid新业务指标TableLogTable动态表LogTable动态表Log Exactly-once,严格对齐 全量+Partition Pruning=增量SET execution.runtime-mode=streaming;SELECT*FROM user_behavior/*+OPTIONS(log.scan=full)*/WHERE dt=20211130;Partition Prunelog scan 支持:1.full(默认)2.latest3.from-timestamp流式

13、数仓:新增实时指标流式数仓:新增实时指标Table动态表LogSnapshotLog流式数仓:高性能流式数仓:高性能 JoinJoinJoin Table 无服务 存储计算分离:点查 LSM 三级存储:内存、本地磁盘和 DFS Watermark 对齐SET execution.runtime-mode=streaming;SELECT*FROM my_stream LEFT JOIN user_behavior FOR SYSTEM AS OFmy_stream.proctime ON id=user_id;Table动态表LogLookupDemoDemo演示演示#5 5PLANPLANPLANPLAN Flink 1.15 推出 MVP 版本 后续支持 Lookup 后续支持 Join Engine请联系邮箱:微信:lzljs3620320提供专项支持

友情提示

1、下载报告失败解决办法
2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
4、本站报告下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。

本文(4、李劲松-基于 Flink Dynamic Table 构建流批一体数仓.pdf)为本站 (云闲) 主动上传,三个皮匠报告文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三个皮匠报告文库(点击联系客服),我们立即给予删除!

温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。
会员购买
客服

专属顾问

商务合作

机构入驻、侵权投诉、商务合作

服务号

三个皮匠报告官方公众号

回到顶部