7.2.8 Kudu Catalog¶
Kudu Catalog
通过 Trino Connector
兼容框架,使用 Kudu Connector
来访问 Kudu
表。
该功能自 Doris 3.0.1
版本开始支持。
Tip
这是一个实验功能。
1 使用须知¶
-
在使用
Trino Catalog
访问Kudu
表之前,必须先编译Trino
的Kudu
插件,并将其放在指定目录下,具体操作步骤参考下文 -
当前
Doris
适配Trino 435
版本的插件,如果使用低于或高于435
版本的Trino
插件,可能会出现兼容性问题。 -
由于
Trino 435
版本的Kudu
插件不支持DATE
类型,所以建议使用我们提供的Kudu
插件。
2 编译 Kudu Connector 插件¶
需要 JDK 17
版本。
Bash | |
---|---|
1 2 3 4 5 |
|
完成编译后,会在 trino/plugin/trino-kudu/target/
下得到 trino-kudu-435/
目录。
也可以直接下载我们预编译的 trino-kudu-435-20240724.tar.gz
并解压。
3 部署 Kudu Connector¶
将 trino-kudu-435/
目录放到所有 FE
和 BE
部署路径的 connectors/
目录下。(如果没有,可以手动创建)。
Bash | |
---|---|
1 2 3 4 5 |
|
部署完成后,建议重启 FE
、 BE
节点以确保 Connector
可以被正确加载。
4 创建 Kudu Catalog¶
SQL | |
---|---|
1 2 3 4 5 6 |
|
其中:以 trino.
为前缀的属性都是 trino
原生的属性,更多有关 Kudu
的属性可以参考 Trino
文档。
5 列类型映射¶
Kudu | Trino | Doris | 说明 |
---|---|---|---|
BOOLEAN | BOOLEAN | BOOLEAN | |
INT8 | TINYINT | TINYINT | |
INT16 | SMALLINT | SMALLINT | |
INT32 | INTEGER | INT | |
INT64 | BIGINT | BIGINT | |
FLOAT | REAL | FLOAT | |
DOUBLE | DOUBLE | DOUBLE | |
BINARY | VARBINARY | STRING | 需要 HEX(col) 才会显示的和 Trino 一样 |
STRING | VARCHAR | STRING | |
DECIMAL(p,s) | DECIMAL(p,s) | DECIMAL(p,s) | |
DATE | DATE | DATE | |
UNIXTIME_MICROS | TIMESTAMP(3) | DATETIME(3) | |
VARCHAR | UNSUPPORTED | ||
UTF-8 encoded string | UNSUPPORTED |