データの読み込みの概要
このドキュメントでは、BigQuery にデータを読み込む方法について説明します。データ統合の一般的なアプローチは、データの抽出、読み込み、変換(ELT)と、データの抽出、変換、読み込み(ETL)の 2 つです。
ELT と ETL のアプローチの概要については、データの読み込み、変換、エクスポートの概要をご覧ください。
外部データの読み込み方法またはアクセス方法
次の方法で BigQuery にデータを読み込んだり、BigQuery からデータにアクセスしたりできます。ユースケースとデータソースに基づいて、次のいずれかのオプションを選択します。
読み込み方法 | 説明 |
---|---|
バッチ読み込み | この方法は、さまざまなソースから大量のデータをバッチ読み込む場合に適しています。 Cloud Storage やその他のサポートされているデータソースからデータをバッチまたは増分読み込む場合は、BigQuery Data Transfer Service の使用をおすすめします。 BigQuery Data Transfer Service を使用すると、BigQuery へのデータ読み込みワークフローを自動化するために、読み込みジョブをスケジュールできます。1 回限りまたはバッチのデータ転送を定期的な間隔(毎日、毎月など)でスケジュールできます。BigQuery データが常に最新の状態になるように、転送をモニタリングしてログに記録できます。 BigQuery Data Transfer Service でサポートされているデータソースの一覧については、サポートされているデータソースをご覧ください。 |
ストリーミング ロード | この方法では、メッセージング システムからほぼリアルタイムでデータを読み込むことができます。 BigQuery にデータをストリーミングするには、Pub/Sub で BigQuery サブスクリプションを使用します。Pub/Sub は、BigQuery へのデータ読み込みの高スループットを処理できます。リアルタイムのデータ ストリーミングをサポートし、生成されたデータを読み込みます。詳細については、BigQuery サブスクリプションをご覧ください。 |
変更データ キャプチャ(CDC) | この方法では、データベースから BigQuery にデータをほぼリアルタイムで複製できます。 Datastream は、準リアルタイムのレプリケーションを使用して、データベースから BigQuery にデータをストリーミングできます。Datastream は CDC 機能を活用して、データソースからの行レベルの変更を追跡して複製します。 Datastream でサポートされているデータソースの一覧については、ソースをご覧ください。 |
外部データソースとの連携 | この方法では、BigQuery に読み込むことなく外部データにアクセスできます。 BigQuery は、Cloud Storage と連携クエリを介して、一部の外部データソースへのアクセスをサポートしています。この方法の利点は、後で使用するために変換する前にデータを読み込む必要がないことです。変換を実行するには、外部データに対して SELECT ステートメントを実行します。 |
次のプログラム方法を使用してデータを読み込むこともできます。
読み込み方法 | 説明 |
---|---|
バッチ読み込み | 読み込みジョブを作成して、Cloud Storage またはローカル ファイルからデータを読み込むことができます。 ソースデータの変更頻度が低い場合や、継続的に更新される結果を必要としない場合は、読み込みジョブは、BigQuery にデータを読み込むための費用とリソースの消費を抑えることができる方法です。 読み込まれるデータは、Avro、CSV、JSON、ORC、Parquet 形式のいずれかになります。読み込みジョブを作成するには、 LOAD DATA SQL ステートメントを使用することもできます。Spark やさまざまな ETL パートナーなどの一般的なオープンソース システムも、BigQuery へのデータのバッチ読み込みをサポートしています。 |
ストリーミング ロード | カスタム ストリーミング データソースをサポートする必要がある場合や、大規模なスループットで BigQuery にストリーミングする前にデータを前処理する必要がある場合は、Dataflow または BigQuery Engine for Apache Flink を使用します。 Dataflow から BigQuery への読み込みの詳細については、Dataflow から BigQuery に書き込むをご覧ください。 BigQuery Storage Write API を直接使用することもできます。 |
Cloud Data Fusion は、ETL プロセスを容易にします。BigQuery は、データを変換して BigQuery に読み込むサードパーティ パートナーとも連携しています。
データを取得するその他の方法
データを BigQuery に読み込まなくても、データに対してクエリを実行できます。以降のセクションでは、代替手段について説明します。
次のリストに、代替手段の一部を示します。
一般公開データに対してクエリを実行する
一般公開データセットとは、BigQuery に保存されて、一般公開されるデータセットです。詳細については、BigQuery 一般公開データセットをご覧ください。
共有データに対してクエリを実行する
他のユーザーから共有された BigQuery データセットに対してクエリを実行するには、Analytics Hub の概要をご覧ください。Analytics Hub は、データ共有を可能にするデータ交換プラットフォームです。
ログデータを使用してクエリを実行する
追加の読み込みジョブを作成せずに、ログに対してクエリを実行できます。
Cloud Logging を使用すると、ログを BigQuery の宛先に転送できます。
Log Analytics を使用すると、ログデータを分析するクエリを実行できます。
次のステップ
- BigQuery で Gemini を使用してデータを準備する方法を学習する。
- Dataform でのデータ変換の詳細を確認する。
- 読み込みジョブのモニタリングの詳細については、管理ジョブ エクスプローラと BigQuery 指標をご覧ください。