データセットの概要
このページでは、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 でデータセットへのアクセスを制御するには、データセットへのアクセスの制御をご覧ください。データ暗号化の詳細については、保存データの暗号化をご覧ください。
次のステップ
- データセット作成の詳細については、データセットの作成をご覧ください。
- データセットにアクセス制御を割り当てる方法について詳しくは、データセットへのアクセス制御をご覧ください。