フォルダの作成と管理
次のドキュメントでは、BigQuery でフォルダを作成して管理する方法について説明します。フォルダを使用して、ノートブック、保存済みクエリ、データ キャンバス、データ準備ファイルなどの単一ファイル コードアセットを整理し、アクセスを制御できます。BigQuery には、個人が独自のコードアセットを管理するためのユーザー フォルダと、チームのコードアセットを管理するためのチーム フォルダがあります。
BigQuery フォルダは Dataform を活用しています。
フォルダを作成する前に、フォルダを使用してコードアセットを整理するを読んで、BigQuery フォルダの仕組みを確認してください。
始める前に
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
Enable the BigQuery and Dataform APIs.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles. -
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
Enable the BigQuery and Dataform APIs.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles. - フォルダを作成する:
- 親ユーザー フォルダ、チームフォルダ、プロジェクトに対する
folders.create - 親フォルダまたはチームフォルダに対する
folders.addContents
- 親ユーザー フォルダ、チームフォルダ、プロジェクトに対する
- フォルダのプロパティを取得する: フォルダの
folders.get - フォルダまたはチームフォルダのコンテンツをクエリする: フォルダに対する
folders.queryContents - フォルダを更新する: フォルダに対する
folders.update - フォルダを削除する: フォルダの
folders.delete - フォルダの IAM ポリシーを取得する: フォルダに対する
folders.getIamPolicy - フォルダの IAM ポリシーを設定する: フォルダに対する
folders.setIamPolicy - フォルダを移動する:
- 移動するフォルダに対する
folders.move - 移動先のフォルダまたはチームフォルダに対する
folders.addContents(ルートフォルダに移動する場合は不要)
- 移動するフォルダに対する
- チームフォルダを作成する: プロジェクトに対する
teamFolders.create - チームフォルダを削除する: チームフォルダの
teamFolders.delete - チームフォルダの IAM ポリシーを取得する: チームフォルダに対する
teamFolders.getIamPolicy - チームフォルダの IAM ポリシーを設定します。チームフォルダに対する
teamFolders.setIamPolicy - チームフォルダのプロパティを取得します。チームフォルダの
teamFolders.get - チームフォルダを更新する: チームフォルダに対する
teamFolders.update - Dataform 管理者
(
roles/dataform.admin) - Dataform 編集者
(
roles/dataform.editor) - Dataform 閲覧者(
roles/dataform.viewer) [BigQuery] ページに移動します。
左側のペインで [ファイル] をクリックして、ファイル ブラウザを開きます。
左側のペインが表示されていない場合は、 左ペインを開くをクリックしてペインを開きます。
選択したプロジェクトとコードリージョンでフォルダとコードアセットを表示するには、次のいずれかを行います。
- [ユーザー(メールアドレス)] ノードを開くと、作成したフォルダとファイルが表示されます。
- [チームフォルダ] ノードを開くと、アクセス権のあるすべてのチームフォルダが表示されます。
- [共有アイテム] ノードを開くと、他のユーザーが自分と共有しているすべてのフォルダとファイルが表示されます。
[BigQuery] ページに移動します。
左側のペインで [ファイル] をクリックして、ファイル ブラウザを開きます。
プロジェクト名の横にある (ファイル パネルのアクションを表示)> [コード リージョンを切り替える] をクリックします。
表示するコード領域を選択します。
[保存] をクリックします。
- 任意のレベルのユーザー フォルダまたはコードアセット。
- チームフォルダ内のサブフォルダ。
- チームフォルダのサブフォルダにあるコードアセット。
[BigQuery] ページに移動します。
左側のペインで [ファイル] をクリックして、ファイル ブラウザを開きます。
リソースを作成するユーザー ルートノードまたはフォルダを選択します。
(アクションを表示)> [作成] をクリックし、作成するリソースのタイプを選択します。
リソースの作成ペインで、新しいリソースの名前を入力します。
[保存] をクリックします。
[BigQuery] ページに移動します。
左側のペインで [ファイル] をクリックして、ファイル ブラウザを開きます。
チームフォルダのルートノードを選択します。
(アクションを表示)> [チームフォルダを作成] をクリックします。
[チームフォルダを作成] ダイアログで、チームフォルダの名前を入力します。
[作成] をクリックします。
[BigQuery] ページに移動します。
左側のペインで [ファイル] をクリックして、ファイル ブラウザを開きます。
コードアセットをアップロードするフォルダを選択します。
(アクションを表示)> [アップロード] をクリックし、アップロードするコードアセットのタイプを選択します。
アップロード リソース ペインで、次のいずれかを行います。
- [File upload] ラジオボタンをクリックし、ローカル ファイルを参照して選択します。
- [URL] ラジオボタンをクリックし、GitHub リポジトリにあるコードアセット ファイルの URL を入力します。
コードアセットの名前を入力します。
省略可: コードアセットを保存するリージョンを選択します。デフォルト値とは異なるリージョンを選択すると、選択したリージョンが、今後すべての新しいコードアセットが作成されるデフォルト リージョンになります。
[保存] をクリックします。
[BigQuery] ページに移動します。
左側のペインで [ファイル] をクリックして、ファイル ブラウザを開きます。
ダウンロードするコードアセットを選択します。
(アクションを表示)> [ダウンロード] をクリックします。
[BigQuery] ページに移動します。
左側のペインで [ファイル] をクリックして、ファイル ブラウザを開きます。
名前を変更するフォルダまたはコードアセットを選択します。
[アクションを表示] > [名前を変更] をクリックします。
リソースの名前変更ダイアログで、リソースの新しい名前を入力します。
[名前を変更] をクリックします。
[BigQuery] ページに移動します。
左側のペインで [ファイル] をクリックして、ファイル ブラウザを開きます。
共有するフォルダまたはコードアセットを選択します。
[共有権限] ペインで、[ユーザー / グループを追加] をクリックします。
[新しいプリンシパル] フィールドに、プリンシパルを入力します。
次のいずれかを行います。
[ロール] リストで、ユーザー フォルダなどのコードアセットを共有する次のいずれかのロールを選択します。
roles/dataform.codeOwner: コードアセットの削除や共有など、コードアセットに対するあらゆるアクションを実行できます。roles/dataform.codeEditor: コードアセットの削除と共有を除く、あらゆるアクションを実行できます。roles/dataform.codeCommenter: コードアセットを表示してコメントできます。roles/dataform.codeViewer: コードアセットを表示できます。
[ロール] リストで、チームフォルダを共有する次のいずれかのロールを選択します。
roles/dataform.teamFolderOwner: チームフォルダの削除や共有など、チームフォルダに対するあらゆるアクションを実行できます。roles/dataform.teamFolderContributor: チームフォルダの削除や共有以外のあらゆる操作を行うことができます。roles/dataform.teamFolderCommenter: チームフォルダとその中に含まれるコード アセットを表示してコメントできます。roles/dataform.teamFolderViewer: チームフォルダとその中にあるコード アセットを表示できます。
[保存] をクリックします。
ノートブック情報ページに戻るには、[閉じる] をクリックします。
[BigQuery] ページに移動します。
左側のペインで [ファイル] をクリックして、ファイル ブラウザを開きます。
移動するフォルダまたはコードアセットを選択します。
(アクションを表示)> [移動] をクリックします。
[リソースの移動] ダイアログで、リソースの移動先のユーザー フォルダまたはチームフォルダを選択します。
[移動] をクリックします。
[BigQuery] ページに移動します。
左側のペインで [ファイル] をクリックして、ファイル ブラウザを開きます。
コピーするフォルダまたはコードアセットを選択します。
(アクションを表示)> [コピー] をクリックします。
リソースのコピー ダイアログで、リソースのコピー先となるユーザーまたはチームフォルダを選択します。
[コピー] をクリックします。
[BigQuery] ページに移動します。
左側のペインで [ファイル] をクリックして、ファイル ブラウザを開きます。
削除するフォルダまたはコードアセットを選択します。
[アクションを表示] > [削除] をクリックします。
リソースの削除ダイアログで、[削除] をクリックします。
必要なロール
このドキュメントのタスクを完了するために必要な権限を取得するには、プロジェクト、フォルダ、またはリソースに対する適切な IAM ロールを付与するよう管理者に依頼してください。
BigQuery ファイル ブラウザの使用に必要な権限を取得するには、プロジェクトに対する BigQuery ユーザー(roles/bigquery.user)または BigQuery Studio ユーザー(roles/bigquery.studioUser)ロールを付与するよう管理者に依頼してください。
フォルダに付与された権限は、そのフォルダ内のすべてのファイルとフォルダに伝播されます。
ファイルとそれを含むフォルダには、次のことが当てはまります。
| ロール | 付与日 | 権限とユースケース |
|---|---|---|
コードオーナー(roles/dataform.codeOwner) |
ファイルまたはフォルダ | ファイルとフォルダのシステム内のリソースに対する完全な制御権限を付与します。このロールを持つユーザーは、リソースの削除、IAM ポリシーの設定、移動など、すべての操作を実行できます。 |
コードエディタ(roles/dataform.codeEditor) |
ファイルまたはフォルダ | コンテンツの編集と管理が可能です。このロールを持つユーザーは、フォルダにコンテンツを追加したり、ファイルを編集したり、ファイルまたはフォルダの IAM ポリシーを取得したりできます。リソースを移動する場合は、宛先フォルダにもこのロールが必要です。 |
コード コメンター(roles/dataform.codeCommenter) |
ファイルまたはフォルダ | コード アセットまたはフォルダにコメントを追加できます。 |
コード閲覧者(roles/dataform.codeViewer) |
ファイルまたはフォルダ | 読み取り専用アクセス権を付与します。このロールを持つユーザーは、ファイルとフォルダのコンテンツをクエリできます。 |
コード作成者(roles/dataform.codeCreator) |
プロジェクト | プロジェクト内で新しいファイルとフォルダを作成する権限を付与します。 |
次のロールは、チームフォルダの管理に固有のものです。
| ロール | 付与日 | 権限とユースケース |
|---|---|---|
チームフォルダ オーナー(roles/dataform.teamFolderOwner) |
チームフォルダ | ファイルとフォルダのシステムでチームフォルダに対する完全な制御権限を付与します。このロールを持つユーザーは、チームフォルダを削除して IAM ポリシーを設定できます。 |
チームフォルダの投稿者(roles/dataform.teamFolderContributor) |
チームフォルダ | チームフォルダ内のコンテンツ管理を許可します。このロールを持つユーザーは、チームフォルダを更新できます。 |
チームフォルダの閲覧者(コメント可)(roles/dataform.teamFolderCommenter) |
チームフォルダ | チームフォルダとその中に含まれるコード アセットにコメントを追加できます。 |
チームフォルダ閲覧者(roles/dataform.teamFolderViewer) |
チームフォルダ | チームフォルダとその内容に対する読み取り専用アクセス権を付与します。このロールを持つユーザーは、チームフォルダを表示して IAM ポリシーを取得できます。 |
チームフォルダ作成者(roles/dataform.teamFolderCreator) |
プロジェクト | プロジェクト内で新しいチームフォルダを作成する権限を付与します。 |
ロールの付与については、プロジェクト、フォルダ、組織へのアクセス権の管理をご覧ください。
これらの事前定義ロールには、このドキュメントのタスクを完了するために必要な権限が含まれています。必要とされる正確な権限については、「必要な権限」セクションを開いてご確認ください。
必要な権限
カスタムロールや他の事前定義ロールを使用して、これらの権限を取得することもできます。
プロジェクト内のすべてのフォルダとファイルにフルアクセスするには、プロジェクトに対する次の IAM ロールを付与するよう管理者に依頼してください。
リソースを表示
BigQuery でフォルダとコードアセットを表示する手順は次のとおりです。
コードのリージョンを変更する
フォルダとコードアセットは異なるコード領域に配置できます。表示するコード領域を変更する手順は次のとおりです。
フォルダまたはコード アセットを作成する
この手順を使用して、次のいずれかのリソースを作成します。
チームフォルダの作成については、チームフォルダを作成するをご覧ください。
BigQuery でフォルダまたはコードアセットを作成する手順は次のとおりです。
チームフォルダを作成
BigQuery でチームフォルダを作成する手順は次のとおりです。
コードアセットをアップロードする
BigQuery でコードアセットをアップロードする手順は次のとおりです。
コードアセットをダウンロードする
BigQuery でコードアセットをダウンロードする手順は次のとおりです。
フォルダまたはコードアセットの名前を変更する
BigQuery でフォルダまたはコードアセットの名前を変更する手順は次のとおりです。
フォルダまたはコードアセットを共有する
BigQuery でフォルダまたはコードアセットを共有する手順は次のとおりです。
フォルダまたはコードアセットを移動する
BigQuery でフォルダまたはコードアセットを移動する手順は次のとおりです。
フォルダまたはコードアセットをコピーする
BigQuery でフォルダまたはコードアセットをコピーする手順は次のとおりです。
フォルダまたはコードアセットを削除する
BigQuery でフォルダまたはコードアセットを削除する手順は次のとおりです。