概述
DLC 原生表是基于 Iceberg 湖格式打造的性能强、易用性高、操作使用简单的表格式,用户可在该基础上完整数据探索,建设 Lakehouse 等应用。用户首次在使用 DLC 原生表时需要按照如下5个主要步骤进行:
1. 开通 DLC 托管存储。
2. 购买引擎。
3. 创建数据库表。结合使用场景,选择创建原生表,并携带优化参数。
4. 配置数据优化。结合表类型,选择独立的优化引擎,配置优化选项。
5. 导入数据到 DLC 原生表。DLC 支持多种数据写入,如 insert into/merge into/upsert,支持多种导入方式,如 spark/presto/flink/inlong/oceanus。
原生表类型
DLC 原生表作为 DLC lakehouse 主推格式,提供原生表(Iceberg)、原生表(TC-Iceberg)两种表格式类型,特点及使用场景如下:
说明:
表类型 | 说明 | 适用场景 |
原生表(Iceberg) | 采用 Apache Iceberg 表格式,包括ACID 事务、隐藏式分区、数据版本控制等特性,提供 V1/V2 两种表版本选择。 | 1. 传统批处理场景(Append):采用 Iceberg V1表版本,该场景表仅支持 Append,Overwrite,Merge into 方式写入。 2. 实时写入场景(Upsert):采用 Iceberg V2 表版本,相比 Append 场景,额外支持 Upsert 写入模式,可支持 inlong/oceans/自建flink 等实时写入。 |
原生表(TC-Iceberg) | 腾讯云基于 Iceberg 拓展的批流一体表格式,兼容并包含 Apache Iceberg 所有优势特性,并提供性能增强及近实时湖仓构建能力。 | 当前版本仅支持有主键更新,适用于有实时写入(Upsert)、近实时湖仓构建(CDC流式消费)场景客户业务需求。 |
原生表使用优势
DLC 原生表采用了存储数据托管模式,用户在使用原生表后,DLC 将 Iceberg 表的元数据与数据文件统一托管,为用户带来以下收益:
数据更安全
Iceberg 表数据分为元数据和数据两个部分,一点某系文件被破坏,将导致整个表查询异常(相比于 Hive 可能是损坏的文件数据不能查询),存储托管在 DLC 可减少用户在不理解 Iceberg 的情况下对某些文件进行破坏。
存储性能提升
DLC 存储托管默认采用 chdfs 作为存储,相比于普通 COS,性能有较大的提升。基于 DLC 对托管表的数据优化服务,定期合并小文件、清除孤儿快照,可进一步提升查询性能。
运维成本降低
免开通对象存储服务,自动完成存储资源分配,并提供内置表数据优化及生命周期管理功能,显著减少运维成本。