Doris は、複数のデータソース、データフォーマット、およびインポート機能をサポートしており、データを効率的にロードできます。
サポートされているデータソース
Doris は複数のデータインポート方法を提供します。データソースに基づいて方法を選択してください。
サポートされているデータフォーマット
サポートされているデータフォーマットは、インポート方法によって異なります。
|
インポート方法 |
対応フォーマット |
|
Broker Load |
Parquet、ORC、CSV、GZIP |
|
Stream Load |
CSV、GZIP、JSON |
|
Routine Load |
CSV、JSON |
インポートの詳細
Doris のデータインポートには、次の機能があります。
インポートの原子性
Doris のすべてのインポートジョブは、Broker Load を使用したバッチインポートであっても、INSERT 文を使用した 1 行のインポートであっても、完全なトランザクションです。インポートトランザクションは、バッチ内のすべてのデータを原子的にコミットし、部分的なデータ書き込みを防止します。
各インポートジョブにはラベルがあります。ラベルはデータベース内で一意であり、インポートジョブを一意に識別します。ラベルは指定できます。また、システムが自動的に生成することもできます。
ラベルにより、対応するインポートジョブは 1 回のみ成功します。成功したインポートで使用したラベルを再利用した場合、リクエストはエラー Label already used で拒否されます。この仕組みは、Doris に At-Most-Once セマンティクスを提供します。これを上流システムの At-Least-Once セマンティクスと組み合わせることで、データインポートにおいて Exactly-Once セマンティクスを実現できます。
同期および非同期のインポート
インポート方法は、同期または非同期のいずれかです。同期インポートでは、返される結果によりインポートが成功したか失敗したかが分かります。非同期インポートでは、成功のレスポンスはジョブが送信されたことのみを示し、データがインポートされたことを示すものではありません。適切なコマンドを使用して、インポートジョブのステータスを確認してください。