このトピックでは、Doris が提供するデータインポート方法、インポート可能なデータのサポートされている形式、および Doris を使用したデータインポートの共通機能について説明します。
データインポート方法
Doris はさまざまなデータインポート方法を提供しています。使用するデータソースに基づいて、データインポート方法を選択できます。
サポートされているデータ形式
インポートできるデータのサポートされている形式は、データインポート方法によって異なります。
| データインポート方法 | サポートされているデータ形式 |
| Broker Load | Parquet、ORC、CSV、および GZIP |
| Stream Load | CSV、GZIP、および JSON |
| Routine Load | CSV および JSON |
機能
このセクションでは、Doris を使用したデータインポートの共通機能について説明します。
アトミック性
Doris の各インポートジョブは、Broker Load を使用して複数のデータレコードを同時にインポートするか、INSERT ステートメントを使用して単一のデータレコードをインポートするかに関係なく、完全なトランザクションです。インポートトランザクションは、バッチでインポートされるデータのアトミック性を保証できます。これにより、インポートプロセス中にデータが失われるのを防ぎます。
ラベルは、インポートジョブを識別するために使用されます。各インポートジョブにはラベルがあります。データベース内のインポートジョブのラベルは一意です。インポートジョブのラベルを指定するか、インポートジョブ用に Doris によって生成されたラベルを使用できます。
インポートジョブのラベルは、インポートジョブのデータが一度だけ正常にインポートされることを保証します。インポートジョブが成功した場合、そのインポートジョブのラベルを別のインポートジョブに使用することはできません。別のインポートジョブにラベルを使用すると、リクエストは拒否され、エラーメッセージ「Label already used」が返されます。このようにして、Doris の at-most-once セマンティクスが実装されます。Doris の at-most-once セマンティクスとアップストリームシステムの at-least-once セマンティクスに基づいて、データインポートの exactly-once セマンティクスを実装できます。
同期モードと非同期モード
同期モードまたは非同期モードでデータをインポートできます。同期モードでは、インポートジョブが完了すると、Doris は結果を返します。結果に基づいて、データが正常にインポートされたかどうかを判断できます。非同期モードでは、インポートジョブが送信されると、「Successful」が返されます。ただし、この結果はデータがインポートされたことを意味するものではありません。インポートジョブのステータスを確認するには、関連するコマンドを実行する必要があります。