功能边界:数据导入导出
功能边界:数据导入导出
本文介绍了 StarRocks 导入导出的能力边界 以及所涉及功能的支持版本。
文件格式
导入文件格式
| 数据源 | 文件格式 | |||||||
|---|---|---|---|---|---|---|---|---|
| CSV | JSON [3] | Parquet | ORC | Avro | ProtoBuf | Thrift | ||
| Stream Load | 本地文件系统、应用及 Connector | Yes | Yes | 待支持 | 待支持 | 待支持 | ||
| INSERT from FILES | HDFS, S3, OSS, Azure, GCS, NFS(NAS) [5] | Yes (v3.3+) | 待支持 | Yes (v3.1+) | Yes (v3.1+) | Yes (v3.4.4+) | 待支持 | |
| Broker Load | Yes | Yes (v3.2.3+) | Yes | Yes | 待支持 | |||
| Routine Load | Kafka | Yes | Yes | 待支持 | 待支持 | Yes (v3.0+) [1] | 待支持 | 待支持 |
| Spark Load | Yes | 待支持 | Yes | Yes | 待支持 | |||
| Connectors | Flink, Spark | Yes | Yes | 待支持 | 待支持 | 待支持 | ||
| Kafka Connector [2] | Kafka | Yes (v3.0+) | 待支持 | 待支持 | Yes (v3.0+) | 待支持 | ||
| PIPE [4] | 同 INSERT from FILES | |||||||
备注
[1], [2]:需要依赖 Schema Registry。
[3]:JSON 支持多种 CDC 格式。有关 StarRocks 支持的 JSON CDC 格式的详细信息,参见 JSON CDC 格式。
[4]:PIPE 当前只支持 INSERT from FILES。
[5]:需要将同一 NAS 设备作为 NFS 挂载到每个 BE 或 CN 节点的相同目录下,才能通过 file:// 协议访问 NFS 中的文件。
JSON CDC 格式
| Stream Load | Routine Load | Broker Load | INSERT from FILES | Kafka Connector | |
|---|---|---|---|---|---|
| Debezium | 待支持 | 待支持 | 待支持 | 待支持 | Yes (v3.0+) [1] |
| Canal | 待支持 | ||||
| Maxwell | |||||
备注
[1]:在将 Debezium CDC 格式数据导入到 StarRocks 主键表时,必须配置 transforms 参数。
导出文件格式
| 导出目标 | 文件格式 | |||||
|---|---|---|---|---|---|---|
| 表格式 | 远端存储 | CSV | JSON | Parquet | ORC | |
| INSERT INTO FILES | N/A | HDFS, S3, OSS, Azure, GCS, NFS(NAS) [3] | Yes (v3.3+) | 待支持 | Yes (v3.2+) | Yes (v3.3+) |
| INSERT INTO Catalog | Hive | HDFS, S3, OSS, Azure, GCS | Yes (v3.3+) | 待支持 | Yes (v3.2+) | Yes (v3.3+) |
| Iceberg | HDFS, S3, OSS, Azure, GCS | 待支持 | 待支持 | Yes (v3.2+) | 待支持 | |
| Hudi/Delta | 待支持 | |||||
| EXPORT | N/A | HDFS, S3, OSS, Azure, GCS | Yes [1] | 待支持 | 待支持 | 待支持 |
| PIPE | 待支持 [2] | |||||
备注
[1]:支持配置 Broker 进程。
[2]:目前,不支持使用 PIPE 导出数据。
[3]:需要将同一 NAS 设备作为 NFS 挂载到每个 BE 或 CN 节点的相同目录下,才能通过 file:// 协议访问 NFS 中的文件。
文件格式相关参数
导入文件格式相关参数
| 文件格式 | 参数 | 导入方式 | ||||
|---|---|---|---|---|---|---|
| Stream Load | INSERT from FILES | Broker Load | Routine Load | Spark Load | ||
| CSV | column_separator | Yes | Yes (v3.3+) | Yes [1] | ||
| row_delimiter | Yes | Yes [2] (v3.1+) | Yes [3] (v2.2+) | 待支持 | ||
| enclose | Yes (v3.0+) | Yes (v3.0+) | Yes (v3.0+) | 待支持 | ||
| escape | ||||||
| skip_header | 待支持 | |||||
| trim_space | Yes (v3.0+) | |||||
| JSON | jsonpaths | Yes | 待支持 | Yes (v3.2.3+) | Yes | 待支持 |
| strip_outer_array | ||||||
| json_root | ||||||
| ignore_json_size | 待支持 | |||||
备注
[1]:对应的参数是 COLUMNS TERMINATED BY。
[2]:对应的参数是 ROWS TERMINATED BY。
[3]:对应的参数是 ROWS TERMINATED BY。
导出文件格式相关参数
| 文件格式 | 参数 | 导出方式 | |
|---|---|---|---|
| INSERT INTO FILES | EXPORT | ||
| CSV | column_separator | Yes (v3.3+) | Yes |
| line_delimiter [1] | |||
| enclose | Yes | No | |
| escape | Yes | No | |
| include_header | Yes | No | |
备注
[1]:数据导入中对应的参数是 row_delimiter.
压缩格式
导入压缩格式
| 文件格式 | 压缩格式 | 导入方式 | ||||
|---|---|---|---|---|---|---|
| Stream Load | Broker Load | INSERT from FILES | Routine Load | Spark Load | ||
| CSV |
| Yes [1] | Yes [2] | 待支持 | 待支持 | |