MaxCompute 近实时增全量处理一体化新架构和使用场景介绍

💡 原文中文,约12100字,阅读约需29分钟。
📝

内容提要

本文介绍了基于MaxCompute的离线近实时一体化新架构,提供了数据湖的大存储能力、海量数据高效批处理能力和延时敏感的近实时链路需求。通过整合开源数据处理引擎和数据湖,MaxCompute实现了离线&近实时数仓一体化架构,具有较低的成本、高吞吐、低延时和良好的用户体验。

🔎

延伸解读

从Lambda到一体化:架构选择的关键权衡

文章对比了三种传统方案:纯离线批处理时效差、纯实时引擎成本高、Lambda架构存在数据不一致和冗余存储。MaxCompute新架构试图在成本、时效和易用性之间取得平衡,通过统一存储和计算引擎,避免多套系统带来的复杂性和额外开销。对于面临类似选型的企业,这种一体化思路值得参考,但需评估自身对分钟级延时的真实需求。

TT2表属性配置:桶数量与历史保留的实践要点

创建TT2表需设置主键和transactional属性。桶数量write.bucket.num影响并发度和文件数量,需根据数据量、分区数等综合评估,避免小文件过多。acid.data.retain.hours控制Time travel可查询的历史范围,默认1天,最大7天,设置过长会增加存储成本并影响查询效率,无需历史查询时可设为0以节省成本。

自动治理与手动Compact的适用场景

TT2后台提供Auto Sort、Auto Merge、Auto Partial Compact和Auto Clean四种自动治理服务,无需用户干预即可优化存储和查询效率。对于查询性能要求极高的场景,可手动执行major compact,但会产生额外执行成本和存储成本,因此非必要不建议频繁操作。用户应根据业务对性能和成本的敏感度合理选择。

近实时写入链路:Flink Connector与资源考量

通过Flink Connector可将数据分钟级Upsert写入TT2,延时约5-10分钟,并支持快照隔离和exactly_once语义。写入吞吐与Flink sink并发数、TT2桶数量相关,建议桶数量为sink并发数的整数倍以获最佳性能。若对写入延时敏感,可考虑独享数据传输资源,但需额外收费;共享资源在竞抢时可能无法保障稳定吞吐。

❓

Q&A

MaxCompute的新架构有哪些主要特点?

MaxCompute的新架构支持大存储能力、高效批处理和近实时链路需求,具有低成本、高吞吐、低延时和良好的用户体验。

新架构如何解决传统数据处理方案的问题?

新架构通过整合开源数据处理引擎和数据湖,解决了传统方案的时效性差、成本高等问题,避免了Lambda架构的缺陷。

TT2表格式支持哪些数据处理场景?

TT2表格式支持主键表、Upsert实时写入、Time travel查询等多种数据读写场景,简化了建表操作。

MaxCompute的新架构如何优化数据治理?

新架构通过自动处理小文件和冗余记录,提升存储和计算效率,确保数据治理的优化。

如何使用MaxCompute进行分钟级近实时数据写入?

用户可以通过Flink Connector工具,将数据实时写入TT2表,确保数据在5-10分钟内可见,满足近实时需求。

MaxCompute的新架构在成本和性能上有什么优势?

新架构在低成本、功能、性能、稳定性和集成等方面具备独特亮点,提供高性价比的解决方案。

🏷️

标签

➡️

继续阅读