Feature Support: Data Loading and Unloading
機能サポート: データロードとアンロード
このドキュメントは、StarRocks がサポートするさまざまなデータロードおよびアンロード方法の機能を概説します。
ファイル形式
ロードファイル形式
| データソース | ファイル形式 | |||||||
|---|---|---|---|---|---|---|---|---|
| CSV | JSON [3] | Parquet | ORC | Avro | ProtoBuf | Thrift | ||
| Stream Load | ローカルファイルシステム、アプリケーション、コネクタ | 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 | サポート予定 | |||
| コネクタ | 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 format を参照してください。
[4]: 現在、PIPE を使用したロードでは INSERT from FILES のみがサポートされています。
[5]: 各 BE または CN ノードの同じディレクトリに NAS デバイスを NFS としてマウントし、file:// プロトコルを介して NFS 内のファイルにアクセスする必要があります。
JSON CDC 形式
| Stream Load | Routine Load | Broker Load | INSERT from FILES | Kafka Connector [1] | |
|---|---|---|---|---|---|
| Debezium | サポート予定 | サポート予定 | サポート予定 | サポート予定 | Yes (v3.0+) |
| Canal | サポート予定 | ||||
| Maxwell | |||||
[1]: StarRocks の主キーテーブルに Debezium CDC 形式のデータをロードする際には、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]: 各 BE または CN ノードの同じディレクトリに NAS デバイスを NFS としてマウントし、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] | |||
[1]: データロードでの対応するパラメータは row_delimiter です。
圧縮形式
ロード圧縮形式
| ファイル形式 | 圧縮形式 | ロード方法 | ||||
|---|---|---|---|---|---|---|
| Stream Load | Broker Load | INSERT from FILES | Routine Load | Spark Load | ||
| CSV |
| Yes [1] | Yes [2] | サポート予定 | サポート予定 | サポート予定 |
| JSON | Yes (v3.2.7+) [3] | サポート予定 | N/A | サポート予定 | N/A | |
| Parquet |
| N/A | Yes [4] | サポート予定 | Yes [4] | |
| ORC | ||||||
[1]: 現在、CSV ファイルを Stream Load でロードする場合のみ、format=gzip を使用して圧縮形式を指定できます。これは gzip 圧縮された CSV ファイルを示します。deflate および bzip2 形式もサポートされています。
[2]: Broker Load は、format パラメータを使用して CSV ファイルの圧縮形式を指定することをサポートしていません。Broker Load はファイルの拡張子を使用して圧縮形式を識別します。gzip 圧縮ファイルの拡張子は .gz であり、zstd 圧縮ファイルの拡張子は .zst です。さらに、trim_space や enclose などの他の format 関連のパラメータもサポートされていません。
[3]: compression = gzip を使用して圧縮形式を指定することがサポートされています。
[4]: Arrow Library によってサポートされています。compression パラメータを設定する必要はありません。
アンロード圧縮形式
| ファイル形式 | 圧縮形式 | アンロード方法 | ||||
|---|---|---|---|---|---|---|
| INSERT INTO FILES | INSERT INTO Catalog | EXPORT | ||||
| Hive | Iceberg | Hudi/Delta | ||||
| CSV |
| サポート予定 | サポート予定 | サポート予定 | サポート予定 | サポート予定 |
| JSON | N/A | N/A | N/A | N/A | N/A | N/A |
| Parquet |
| Yes (v3.2+) | Yes (v3.2+) | Yes (v3.2+) | サポート予定 | N/A |
| ORC | ||||||
認証情報
ロード - 認証
| 認証 | ロード方法 | ||||
|---|---|---|---|---|---|
| Stream Load | INSERT from FILES | Broker Load | Routine Load | External Catalog | |
| シングル Kerberos | N/A | Yes (v3.1+) | Yes [1] (v2.5 より前のバージョン) | Yes [2] (v3.1.4+) | Yes |
| Kerberos Ticket Granting Ticket (TGT) | N/A | サポート予定 | Yes (v3.1.10+/v3.2.1+) | ||
| シングル KDC マルチ Kerberos | N/A | ||||
| 基本アクセス認証 (アクセスキー ペア、IAM ロール) | N/A | Yes (HDFS および S3 互換オブジェクトストレージ) | Yes [3] | Yes | |
[1]: HDFS の場合、StarRocks はシンプル認証と Kerberos 認証の両方をサポートしています。
[2]: セキュリティプロトコルが sasl_plaintext または sasl_ssl に設定されている場合、SASL および GSSAPI (Kerberos) 認証の両方がサポートされています。
[3]: セキュリティプロトコルが sasl_plaintext または sasl_ssl に設定されている場合、SASL および PLAIN 認証の両方がサポートされています。
アンロード - 認証
| INSERT INTO FILES | EXPORT | |
|---|---|---|
| シングル Kerberos | サポート予定 | サポート予定 |
ロード - その他のパラメータと機能
| パラメータと機能 | ロード方法 | |||||||
|---|---|---|---|---|---|---|---|---|
| Stream Load | INSERT from FILES | INSERT from SELECT/VALUES | Broker Load | PIPE | Routine Load | Spark Load | ||
| 部分更新 | Yes (v3.0+) | Yes [1] (v3.3+) | Yes (v3.0+) | N/A | Yes (v3.0+) | サポート予定 | ||
| partial_update_mode | Yes (v3.1+) | サポート予定 | Yes (v3.1+) | N/A | サポート予定 | サポート予定 | ||
| COLUMNS FROM PATH | N/A | Yes (v3.2+) | N/A | Yes | N/A | N/A | Yes | |
| timezone または セッション変数 time_zone [2] | Yes [3] | Yes [4] | Yes [4] | Yes [4] | サポート予定 | Yes [4] | サポート予定 | |
| 時間精度 - マイクロ秒 | Yes | Yes | Yes | Yes (v3.1.11+/v3.2.6+) | サポート予定 | Yes | Yes | |
[1]: v3.3 以降、StarRocks は INSERT INTO で列リストを指定することにより、Row モードでの部分更新をサポートしています。
[2]: パラメータまたはセッション変数でタイムゾーンを設定すると、strftime()、alignment_timestamp()、from_unixtime() などの関数が返す結果に影響します。
[3]: パラメータ timezone のみがサポートされています。
[4]: セッション変数 time_zone のみがサポートされています。
アンロード - その他のパラメータと機能
| パラメータと機能 | INSERT INTO FILES | EXPORT |
|---|---|---|
| target_max_file_size | Yes (v3.2+) | サポート予定 |
| single | ||
| Partitioned_by | ||
| セッション変数 time_zone | サポート予定 | |
| 時間精度 - マイクロ秒 | サポート予定 | サポート予定 |