7.2.7 Delta Lake Catalog¶
Delta Lake Catalog
通过 Trino Connector
兼容框架,使用 Delta Lake Connector
来访问 Delta Lake
表。
该功能自 Doris 3.0.1
版本开始支持。
Tip
这是一个实验功能。
1 使用须知¶
-
在使用
Trino Catalog
访问Delta Lake
表之前,必须先编译Trino
的Delta Lake
插件,并将其放在指定目录下。具体操作步骤参考下文。 -
当前
Doris
适配Trino 435
版本的插件,如果使用低于或高于435
版本的Trino
插件,可能会出现兼容性问题。 -
当前不支持
Delta Lake
的Time Travel
功能。 -
当前不支持查询
Delta Lake
的history
信息。
2 编译 Delta Lake Connector 插件¶
Tip
需要 JDK 17
版本。
Bash | |
---|---|
1 2 3 4 5 |
|
完成编译后,会在 trino/plugin/trino-delta-lake/target/
下得到 trino-delta-lake-435
目录。
也可以直接下载预编译的 trino-delta-lake-435-20240724.tar.gz
并解压。
3 部署 Delta Lake Connector¶
将 trino-delta-lake-435/
目录放到所有 FE
和 BE
部署路径的 connectors/
目录下。(如果没有,可以手动创建)。
Bash | |
---|---|
1 2 3 4 5 |
|
部署完成后,建议重启 FE
、 BE
节点以确保 Connector
可以被正确加载。
4 创建 Delta Lake Catalog¶
SQL | |
---|---|
1 2 3 4 5 6 7 |
|
其中:以 trino.
为前缀的属性都是 trino
原生的属性,更多有关 Delta Lake
的属性可以参考 Trino
文档。
5 列类型映射¶
Delta Lake | Trino | Doris |
---|---|---|
BOOLEAN | BOOLEAN | BOOLEAN |
INTEGER | INTEGER | INT |
BYTE | TINYINT | TINYINT |
SHORT | SMALLINT | SMALLINT |
LONG | BIGINT | BIGINT |
FLOAT | REAL | FLOAT |
DOUBLE | DOUBLE | DOUBLE |
DECIMAL(p,s) | DECIMAL(p,s) | DECIMAL(p,s) |
STRING | VARCHAR | STRING |
BINARY | VARBINARY | STRING |
DATE | DATE | DATE |
TIMESTAMPNTZ (TIMESTAMP_NTZ) | TIMESTAMP(6) | DATETIME |
TIMESTAMP | TIMESTAMP(3) WITH TIME ZONE | DATETIME |
ARRAY | ARRAY | ARRAY |
MAP | MAP | MAP |
STRUCT | ROW | STRUCT |