全部产品
Search
文档中心

云原生大数据计算服务 MaxCompute:Transaction Table2.0概述

更新时间:Aug 01, 2023

随着当前数据处理业务场景日趋复杂,很多业务场景并不要求延时秒级更新可见或者行级更新,更多的需求是分钟级或者小时级的近实时数据处理叠加海量数据批处理场景,MaxCompute支持基于Transaction Table2.0实现近实时的增全量一体的数据存储、计算解决方案,本文为您介绍本方案可解决的业务痛点和主要架构功能。

现状分析

当前典型的数据处理业务场景中,对于时效性要求低的大规模数据全量批处理的单一场景,直接使用MaxCompute足以很好的满足业务需求,对于时效性要求很高的秒级实时数据处理或者流处理,则需要使用实时系统或流系统来满足需求。但对于综合业务场景,比如时效性要求为分钟级或者小时级的近实时数据处理场景和海量数据批处理场景的解决方案,使用单一或者联邦多引擎都会存在一些问题。

image.png

如上图所示,如果使用单一的MaxCompute离线批量处理链路,有些场景需持续将用户分钟级增量数据和全量数据做合并处理和存储,产生冗余的计算和存储成本,也有场景需要将各种复杂的一些链路和处理逻辑转化成T+1的批次处理,极大增加链路复杂度,且时效性也较差。但如果使用单一的实时系统,资源消耗的成本比较高,性价比也较低,并且大规模数据批处理的稳定性也不足。因此当前比较典型的解决方案是Lambda架构,全量批处理使用MaxCompute链路,时效性要求比较高的增量处理使用实时系统链路,但该架构也存在大家所熟知的一些固有缺陷,比如多套处理和存储引擎引发的数据不一致问题,多份数据冗余存储和计算引入的额外成本,架构复杂以及开发周期长等。

针对这些问题近几年大数据开源生态也推出了各种解决方案,最流行的就是Spark/Flink/Presto开源数据处理引擎,深度集成开源数据湖Hudi、Delta Lake和Iceberg三剑客,践行统一的计算引擎和统一的数据存储思想来综合提供解决方案,解决Lamdba架构带来的一系列问题,而MaxCompute近一年在离线批处理计算引擎架构上,自研设计开发的增量数据存储和处理架构,同样可提供离线&近实时增量处理一体化解决方案,在保持经济高效的批处理优势下,同时具备分钟级的增量数据读写和处理的业务需求,另外,可提供Upsert,Timetravel等一系列实用功能来扩展业务场景,可有效地节省数据计算,存储和迁移成本,切实提高用户体验。

增全量数据存储和处理一体化架构

image.png

上图所示即为MaxCompute高效支持上述综合业务场景的全新架构,支持丰富的数据源方便地通过定制开发的接入工具实现增量和离线批量数据导入到统一的存储中,由后台数据管理服务自动优化编排数据存储结构,使用统一的计算引擎支持近实时增量处理链路和大规模离线批量处理链路,而且由统一的元数据服务支持事务和文件元数据管理。它带来的优势非常显著,比如,可有效解决纯离线系统处理增量数据导致的冗余计算和存储、时效低等问题,也能避免实时或流系统高昂的资源消耗成本,同时可消除Lambda架构多套系统的不一致问题和减少冗余多份存储成本以及系统间的数据迁移成本。总体而言,使用该全链路一体化架构既可以满足增量处理链路的计算存储优化以及分钟级的时效性,又能保证批处理的整体高效性,还能有效节省资源使用成本。

核心功能

在使用Transaction Table2.0前,您可以先了解下当前Transaction Table2.0的功能架构,有助于了解在不同的业务场景下如何配置合理的参数,来有效节省存储和计算成本,提升整体链路性能。详细的架构原理和相关操作指导请参见架构原理基本操作

以下为核心功能简介。

  • 表数据格式:新类型表,Transactional Table2.0,高效支持增/全量数据的存储和读写。如果设置Primary Key,则可支持Upsert格式记录写入。

  • 近实时增量导入:支持分钟级Upsert / Delete格式数据增量导入。

  • 增量查询:支持SQL语法,用于增量处理链路和增量计算优化。

  • SQL支持: 支持全套SQL语法覆盖所有功能,包括CRUD语法 / TimeTravel和增量查询语法 / 配置表主键和属性等。

  • 数据组织优化:

    • Clustering:支持自动合并大量增量小文件,避免存储压力大,IO读写低效等问题。

    • Compaction:支持手动和自动合并数据中间历史状态,有效减少数据存储和计算成本,提升数据查询效率。

    • 数据回收:系统自动回收过期数据和操作日志,减少存储成本。

  • TimeTravel:支持SQL语法,有助于回溯业务历史数据状态以及错误数据恢复。

  • 事务管理:基于MVCC模型支持快照隔离,读写并发互不影响,支持写并发冲突检测和自动重试优化。

优势

为了尽可能支持开源数据湖(HUDI / Iceberg)的业务场景和业务迁移,新架构会尽量覆盖一些通用功能,此外,作为完全自研设计的新架构,在功能,性能,稳定性,集成等方面也具备很多独特亮点:

  • 统一的存储、元数据、计算引擎一体化设计,做了非常深度和高效的集成,具备存储成本低,数据文件管理高效,查询效率高,并且Timetravel / 增量查询可复用MaxCompute批量查询的大量优化规则等优势。

  • 全套统一的SQL语法支持所有功能,非常便于用户使用。

  • 深度定制优化的数据导入工具,支持很多复杂的业务场景。

  • 无缝衔接MaxCompute现有的业务场景,可以减少迁移、存储、计算成本。

  • 完全自动化管理数据文件,保证更好的读写稳定性和性能,自动优化存储效率和成本。

  • 基于MaxCompute平台完全托管,用户可以开箱即用,没有额外的接入成本,功能生效只需要创建一张新类型的表即可。

  • 作为完全自研的架构,需求开发节奏完全自主可控。

申请开通使用

目前Transaction Table2.0处于邀测阶段,默认不支持直接使用,如需您需要使用此功能,请点击申请开通,在新功能试用申请页面申请开通使用Transaction Table2.0功能。