更新时间:2024-12-25 GMT+08:00
分享

DLI Delta表概述

Delta表是一种基于Delta Lake技术实现的数据存储解决方案,它使用基于文件的事务日志扩展了 Parquet 数据文件,可以处理 ACID 事务和可缩放的元数据。 Delta Lake与Apache Spark API完全兼容,并且其设计能够与结构化流式处理紧密集成,可以轻松地将单个数据副本用于批处理和流式处理操作,并提供大规模增量处理。

DLI中Delta的使用限制

  • 仅Spark 3.3.1(3.0.0)及以上版本支持Delta。
  • DLI支持的Delta版本是Delta 2.3.0。
  • Spark 3.3.1(3.0.0)版本的SQL仍有部分不支持Delta表的相关开源语法,具体内容请参考表1
    表1 Spark 3.3.1-3.0.0版本SQL不支持的Delta表相关开源语法

    不支持的语法

    示例

    ALTER TABLE REPLACE COLUMNS替换列

    alter table table0 replace columns(id1 int,name1 string);

    SHOW CREATE TABLE显示建表语句

    show create table table1;

    INSERT INTO/OVERWRITE指定静态分区插入表

    insert into table1 partition(part='part1') select * from table2;

    ALTER TABLE ADD/DROP PARTITION管理分区

    alter table test_delta_parts1 add partition('2024-10-28');

    CONVERT TO DELTA语法暂不支持parquet.`tablePath`格式的表

    convert to delta parquet.`obs://bucket0/db0/table0`;

相关文档