このドキュメントでは、BigQuery でデータセットを管理する方法について説明します。データセットを作成した後、以下のようにデータセットを管理できます。
データセットの名前変更
現在、既存のデータセットの名前を変更することはできませんが、データセットをコピーすることはできます。データセットのコピーをご覧ください。
データセットのコピー
データセットをコピーする手順(リージョン間でのコピーを含む)については、データセットのコピーをご覧ください。
データセットの移動
データセットをあるロケーションから別のロケーションに手動で移動するには、次の手順に従います。
-
BigQuery テーブルから、データセットと同じロケーションにあるリージョンまたはマルチリージョンの Cloud Storage バケットにデータをエクスポートします。たとえば、データセットが EU のマルチリージョン ロケーションにある場合は、EU のリージョン バケットまたはマルチリージョン バケットにデータをエクスポートします。
BigQuery からのデータのエクスポートに対しては課金されませんが、エクスポートしたデータを Cloud Storage に保存する場合は課金の対象になります。BigQuery からのエクスポートには、エクスポート ジョブの上限が適用されます。
-
Cloud Storage バケットから新しいロケーションのリージョン バケットまたはマルチリージョン バケットに、データをコピーするか移動します。たとえば、米国のマルチリージョン ロケーションから東京のリージョン ロケーションにデータを移動すると、データは東京のリージョン バケットに転送されます。Cloud Storage オブジェクトの転送について詳しくは、Cloud Storage ドキュメントのオブジェクトのコピー、名前変更、移動をご覧ください。
リージョン間でデータを転送すると、Cloud Storage でネットワークの下り(外向き)料金が発生することに注意してください。
-
新しいロケーションの Cloud Storage バケットにデータを転送した後、新しい BigQuery データセットを(新しいロケーションに)作成します。次に、Cloud Storage バケットから BigQuery にデータを読み込みます。
BigQuery へのデータの読み込みに対しては課金されませんが、Cloud Storage にデータを保存した場合は課金の対象となり、データまたはバケットを削除するまで料金が請求されます。読み込まれたデータを BigQuery に保存することについても、請求の対象になります。BigQuery へのデータの読み込みには、読み込みジョブの上限が適用されます。
また、Cloud Composer を使用して、大規模なデータセットをプログラムで移動し、コピーすることもできます。
Cloud Storage を使用した大量のデータセットの保存や移動に関する詳細は、Cloud Storage とビッグデータの使用をご覧ください。
データセットが存在するかどうかを確認する
Java
このサンプルを試す前に、BigQuery クイックスタート: クライアント ライブラリの使用の Java の設定手順を実施してください。詳細については、BigQuery Java API のリファレンス ドキュメントをご覧ください。
Python
このサンプルを試す前に、BigQuery クイックスタート: クライアント ライブラリの使用の Python の手順に従って設定を行ってください。詳細については、BigQuery Python API のリファレンス ドキュメントをご覧ください。
データセットの削除
データセットは、次の方法で削除できます。
- Cloud Console を使用する。
bq
コマンドライン ツールでbq rm
コマンドを使用する。datasets.delete
API メソッドを呼び出す。- クライアント ライブラリを使用する。
必要な権限
データセットを削除するには、少なくとも bigquery.datasets.delete
権限が付与されている必要があります。データセットにテーブルまたはビューが含まれている場合は、bigquery.tables.delete
も必要です。bigquery.datasets.delete
権限および bigquery.tables.delete
権限はいずれも、事前定義された以下の IAM ロールに含まれています。
bigquery.dataOwner
bigquery.admin
また、bigquery.datasets.create
権限を持つユーザーがデータセットを作成すると、そのデータセットに対する bigquery.dataOwner
アクセス権がユーザーに付与されます。bigquery.dataOwner
アクセス権により、ユーザーが作成したデータセットとテーブルの削除が許可されます。
BigQuery での IAM のロールと権限については、事前定義ロールと権限をご覧ください。
データセットの削除
Cloud Console を使用してデータセットを削除すると、データセット内のテーブルとビュー(およびそこに含まれるデータ)が削除されます。bq
コマンドライン ツールを使用してデータセットを削除する場合は、-r
フラグを使用してデータセットのテーブルとビューを削除する必要があります。
データセットを削除するには:
Console
[エクスプローラ] パネルでプロジェクトを展開し、データセットを選択します。
[データセットを削除] をクリックします。
[データセットの削除] ダイアログで、テキスト ボックスにデータセットの名前を入力し、[削除] をクリックします。
bq
データセットを削除するには、bq rm
コマンドを --dataset
または -d
ショートカット フラグ付き(省略可)で使用します。bq
コマンドライン ツールを使用してデータセットを削除する場合は、コマンドを確認する必要があります。-f
フラグを使用すると、確認をスキップできます。
また、データセット内にテーブルがある場合は、-r
フラグを使用してデータセット内のすべてのテーブルを削除する必要があります。削除するテーブルがデフォルト プロジェクト以外のプロジェクトにある場合は、project_id:dataset
の形式でプロジェクト ID をデータセット名に追加します。
bq rm -r -f -d project_id:dataset
次のように置き換えます。
project_id
はプロジェクト ID です。dataset
は、削除するデータセットの名前です。
例:
デフォルトのプロジェクトから mydataset
と含まれるすべてのテーブルを削除するには、次のコマンドを入力します。このコマンドではオプションの -d
ショートカットを使用しています。
bq rm -r -d mydataset
プロンプトが表示されたら、「y
」と入力して Enter キーを押します。
myotherproject
から mydataset
と含まれるすべてのテーブルを削除するには、次のコマンドを入力します。このコマンドではオプションの -d
ショートカットを使用していません。確認をスキップするために -f
フラグを使用しています。
bq rm -r -f myotherproject:mydataset
API
datasets.delete
メソッドを呼び出してデータセットを削除します。その際、データセット内のテーブルも削除するには、deleteContents
パラメータを true
に設定します。
C#
このサンプルを試す前に、BigQuery クイックスタート: クライアント ライブラリの使用の C# の設定手順を実施してください。詳細については、BigQuery C# API のリファレンス ドキュメントをご覧ください。
Go
このサンプルを試す前に、BigQuery クイックスタート: クライアント ライブラリの使用の Go の手順に従って設定を行ってください。詳細については、BigQuery Go API のリファレンス ドキュメントをご覧ください。
Java
このサンプルを試す前に、BigQuery クイックスタート: クライアント ライブラリの使用の Java の設定手順を実施してください。詳細については、BigQuery Java API のリファレンス ドキュメントをご覧ください。
Node.js
このサンプルを試す前に、BigQuery クイックスタート: クライアント ライブラリの使用の Node.js の設定手順を実施してください。詳細については、BigQuery Node.js API のリファレンス ドキュメントをご覧ください。
PHP
このサンプルを試す前に、BigQuery クイックスタート: クライアント ライブラリの使用にある PHP 向けの手順に従って設定を行ってください。詳細については、BigQuery PHP API のリファレンス ドキュメントをご覧ください。
Python
このサンプルを試す前に、BigQuery クイックスタート: クライアント ライブラリの使用の Python の手順に従って設定を行ってください。詳細については、BigQuery Python API のリファレンス ドキュメントをご覧ください。
Ruby
このサンプルを試す前に、BigQuery クイックスタート: クライアント ライブラリの使用で説明している Ruby 向けの手順に沿って設定を行ってください。詳細については、BigQuery Ruby API のリファレンス ドキュメントをご覧ください。
次のステップ
- データセット作成の詳細については、データセットの作成をご覧ください。
- データセットの更新の詳細については、データセットの更新をご覧ください。
- データセットのコピーの詳細については、データセットのコピーをご覧ください。