データセットの概要

このページでは、BigQuery のデータセットの概要について説明します。

データセット

データセットは、特定のプロジェクト内に含まれています。データセットは、テーブルビューへのアクセスを整理して制御するための最上位のコンテナです。テーブルとビューはデータセットに属していなければなりません。したがって、データを BigQuery に読み込む前に、1 つ以上のデータセットを作成する必要があります。データセット名を完全修飾するとき、GoogleSQL では projectname.datasetname 形式、bq コマンドライン ツールでは projectname:datasetname 形式を使用します。

ロケーション

データセットの作成時に BigQuery データを保存するロケーションを指定します。BigQuery データセットのロケーションの一覧については、BigQuery のロケーションをご覧ください。データセットの作成後はロケーションを変更することはできませんが、別のロケーションにコピーしたり、手動で別のロケーションに移動(再作成)したりすることは可能です。

BigQuery は、クエリ対象のテーブルを含むデータセットと同じロケーションでクエリを処理します。BigQuery では、サービス固有の規約に従って、選択されたロケーションにデータが保存されます。

データの保持

データセットでは、削除または変更されたデータを復元が必要となる場合に備えて短時間保持するために、タイムトラベルフェイルセーフ期間が組み合わせて使用されます。詳細については、タイムトラベルとフェイルセーフによるデータの保持をご覧ください。

ストレージの課金モデル

BigQuery データ ストレージの課金は、論理バイト、物理(圧縮)バイト、またはその両方の組み合わせに基づいて行われます。選択したストレージ課金モデルによって、ストレージの料金が決まります。選択したストレージ課金モデルは、BigQuery のパフォーマンスには影響しません。いずれの課金モデルを選択しても、データは物理バイトとして保存されます。

ストレージ課金モデルはデータセット レベルで設定します。データセットの作成時にストレージ課金モデルを指定しない場合、デフォルトで論理ストレージの課金モデルが使用されます。ただし、作成後にデータセットのストレージ課金モデルを変更することもできます。データセットのストレージ課金モデルを変更した後に再度変更するには、14 日間待つ必要があります。

データセットの課金モデルを変更した場合は、変更が反映されるまでに 24 時間かかります。データセットの課金モデルを変更しても、長期ストレージ内のテーブルまたはテーブル パーティションはアクティブ ストレージにリセットされません。 データセットの課金モデルを変更しても、クエリのパフォーマンスとクエリのレイテンシは影響を受けません。

データセットでは、データの保持にタイムトラベル ストレージとフェイルセーフ ストレージが使用されます。物理ストレージの課金モデルを使用する場合、タイムトラベル ストレージとフェイルセーフ ストレージにはアクティブ ストレージの料金が別途適用されますが、論理ストレージの課金モデルを使用する場合は基本料金に含まれます。物理ストレージの費用とデータの保持のバランスをとるために、データセットに使用するタイムトラベル期間を変更できます。フェイルセーフ期間を変更することはできません。データセットのデータ保持の詳細については、タイムトラベルとフェイルセーフによるデータの保持をご覧ください。ストレージ費用の予測の詳細については、ストレージ課金を予測するをご覧ください。

所属する組織が、対象のデータセットと同じリージョンで以前の定額制スロット コミットメントを利用している場合、そのデータセットに物理ストレージ課金を適用することはできません。これは、BigQuery エディションで購入したコミットメントには適用されません。

外部データセット

BigQuery データセットに加えて、次の外部データセット(外部データソースへのリンク)を作成できます。

外部データセットは連携データセットとも呼ばれ、どちらの用語も同じ意味で使用されます。

作成された外部データセットには、参照先の外部データソースのテーブルが含まれます。これらのテーブルのデータは BigQuery にコピーされず、使用のたびにクエリされます。詳細については、Spanner 連携クエリをご覧ください。

制限事項

BigQuery データセットには次の制限があります。

  • データセットのロケーションは、作成時にのみ設定できます。データセットの作成後はそのロケーションを変更できません。
  • 1 つのクエリで参照されるすべてのテーブルは、同じロケーションにあるデータセット内に保存されている必要があります。
  • 外部データセットでは一部のオプションがサポートされていません。これには、大文字と小文字を区別しないテーブル名の有効/無効、テーブルの有効期限、レプリカ、タイムトラベル、デフォルトの照合順序、デフォルトの丸めモードがあります。

  • テーブルをコピーする場合、コピー元とコピー先のテーブルが同じロケーションに存在する必要があります。

  • データセット名は各プロジェクトで一意である必要があります。

  • データセットのストレージ課金モデルを変更した後で、再度変更するには、14 日間待つ必要があります。

  • データセットと同じリージョンに以前の定額制スロット コミットメントがある場合、データセットに物理ストレージ課金を適用することはできません。

割り当て

データセットの割り当てと上限の詳細については、割り当てと上限をご覧ください。

料金

データセットの作成、更新、削除に対しては課金されません。

BigQuery の料金の詳細については、料金をご覧ください。

セキュリティ

BigQuery でデータセットへのアクセスを制御するには、データセットへのアクセスの制御をご覧ください。データ暗号化の詳細については、保存データの暗号化をご覧ください。

次のステップ