クラウド オブジェクト ストレージからデータを取り込む
この記事では、クラウド オブジェクト ストレージからの増分インジェストを構成する方法の一覧を示します。
データの追加 UI
追加のデータ UI を使用して、クラウド オブジェクト ストレージのデータからマネージド テーブルを作成する方法については、「Unity Catalog の外部の場所を使用したデータの読み取り」を参照してください。
ノートブックまたは SQL エディター
このセクションでは、ノートブックまたは Databricks SQL エディターを使用してクラウド オブジェクト ストレージからの増分インジェストを構成するためのオプションについて説明します。
自動ローダー
自動ローダーでは、追加の設定を行わなくても、クラウド ストレージに到着した新しいデータ ファイルが段階的かつ効率的に処理されます。 自動ローダーは、cloudFiles
と呼ばれる構造化ストリーミング ソースを提供します。 クラウド ファイル ストレージ上に入力ディレクトリ パスを指定すると、cloudFiles
ソースでは、新しいファイルが到着したときにそれらが自動的に処理されます。また、そのディレクトリ内の既存のファイルも処理できます。
COPY INTO
COPY INTO により、SQL ユーザーは、クラウド オブジェクト ストレージから Delta テーブルにデータを羃等で、かつ増分的に取り込むことができます。 Databricks SQL、ノートブック、Databricks ジョブで COPY INTO
を使用できます。
COPY INTO を使用する場合と自動ローダーを使用する場合
自動ローダーか COPY INTO
かを選択するときに考慮すべきいくつかの点を次に示します。
時間をかけて数千の順序でファイルを取り込む場合は、
COPY INTO
を使用できます。 時間の経過とともに数百万以上の順序のファイルが予想される場合は、自動ローダーを使用します。 自動ローダーでは、COPY INTO
と比較してファイルを検出する操作の合計が少なくて済み、処理を複数のバッチに分割できます。つまり、自動ローダーの方がコストが低く、大規模で効率が高くなります。データ スキーマが頻繁に展開する予定の場合は、自動ローダーにより、スキーマの推論と展開に関してより適切なプリミティブなデータ型が得られます。 詳細については、「自動ローダーでのスキーマの推論と展開の構成」を参照してください。
再アップロードされたファイルのサブセットの読み込みは、
COPY INTO
のほうが少し簡単に管理できます。 自動ローダーでは、選択したファイルのサブセットの再処理が難しくなります。 ただし、自動ローダー ストリームを同時に実行しながら、COPY INTO
を使用して、ファイルのサブセットを再度読み込むことは可能です。ファイル取り込みの拡張性と堅牢度を上げるため、自動ローダーでは、SQL ユーザーはストリーミング テーブルを活用できます。 「Databricks SQL でストリーミング テーブルを使用してデータを読み込む」を参照してください。
自動ローダーと COPY INTO
の概要とデモについては、次の YouTube 動画 (2 分) をご覧ください。
Delta Live Tables と自動ローダーを使用して ETL を自動化する
自動ローダーと Delta Live Tables を使用すると、スケーラブルな増分インジェスト インフラストラクチャのデプロイを簡略化できます。 Delta Live Tables では、ノートブックに含まれる標準の対話型実行は使用されず、代わりに運用環境に対応したインフラストラクチャのデプロイが重視されます。
サード パーティのインジェスト ツール
Databricks は、クラウド オブジェクト ストレージを含むさまざまなソースから取り込むためのテクノロジ パートナー統合を検証します。 これらの統合により、さまざまなソースから Azure Databricks へ、少量のコードでスケーラブルなデータ インジェストが可能になります。 「テクノロジ パートナー」を参照してください。 一部のテクノロジ パートナーは「Databricks Partner Connect とは」で紹介されており、サード パーティ製ツールをレイクハウス データに簡単に接続できる UI が提供されます。