BigQuery とデータポータルで Colab Data Apps を使用する
Colab Data Apps を使用すると、Colab ノートブックのデータ分析を洗練されたインタラクティブなアプリケーションに変換できます。コードや静的なレポートを共有する代わりに、インタラクティブな可視化、データテーブル、機械学習の推論を含む共有可能なエクスペリエンスを構築できるようになりました。
Colab Data Apps には次の機能があります。
- セルフサービス インサイト: ビジネス ユーザーは、コードを編集せずに、日付 範囲やフィルタなどのパラメータを調整して必要なデータを表示できます。
- アプリの閲覧者の設定は不要: コンシューマーは URL を使用してアプリにアクセスします。 コンソールに移動したり、ノートブックを実行したりする必要はありません。 Google Cloud
- 柔軟性: Python の可視化ライブラリやウィジェットを統合して、 カスタムの複雑な Data Apps を簡単に構築できます。時間を節約するには、統合エージェントを使用してコードを生成します。
- 管理されたライフサイクル: 管理者と作成者は、共有、バージョン、リソースの使用状況を管理できます。
始める前に
- アカウントにログインします。 Google Cloud を初めて使用する場合は、 アカウントを作成して、実際のシナリオで Google プロダクトのパフォーマンスを評価してください。 Google Cloud新規のお客様には、ワークロードの実行、テスト、デプロイができる無料クレジット $300 分を差し上げます。
-
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.
-
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.
-
BigQuery API と Dataform API を有効にします。
API を有効にするために必要なロール
API を有効にするには、
serviceusage.services.enable権限を含む Service Usage 管理者 IAM ロール(roles/serviceusage.serviceUsageAdmin)が必要です。詳しくは、ロールを付与する方法をご覧ください。新しいプロジェクトでは、BigQuery API が 自動的に有効になります。
必要なロール
データアプリの作成に必要な権限を取得するには、 プロジェクトに対する次の IAM ロールを付与するよう管理者に依頼してください。
-
BigQuery 読み取りセッション ユーザー (
roles/bigquery.readSessionUser) -
BigQuery Studio ユーザー (
roles/bigquery.studioUser)
ロールの付与については、プロジェクト、フォルダ、組織へのアクセス権の管理をご覧ください。
必要な権限は、カスタム ロールや他の事前定義 ロールから取得することもできます。
BigQuery の Colab Enterprise を初めて使用する場合は、 ノートブックを作成する ページの必要な権限をご覧ください。
制限事項
Colab Data Apps には次の制限があります。
アプリを初めて開く場合、複雑さによっては読み込みに 2 ~ 5 分かかることがあります。
インタラクティブ セッションは 30 分間続きます。30 分後に、アプリはカーネルとの接続を失い、静的になります。新しい 30 分間のセッションを開始するには、ページを再読み込みするか、データを更新します。
アプリに表示されるセルに関係なく、すべてのセルが最初から最後まで順番に実行されます。表示されていないセルが実行されてカーネル リソースを消費している場合、カーネル リソースが解放されるまでアプリが応答しないように見えることがあります。
データアクセスや Data Apps の表示に、サービス アカウントやエンドユーザー認証情報(EUC)を使用することはできません。
Data Apps のコンポーネント
Data Apps に追加できるコンポーネントは、基盤となるノートブックから派生しています。既存のノートブックを使用している場合は、既存のセルを Data Apps に追加できます。
Colab ノートブックで作成できるサポートされている セルタイプ(SQL セル、コード セル、テキスト セル、可視化セルなど)は、Data Apps に追加できます。セルタイプは手動で作成することも、 Colab データ サイエンス エージェントまたはGemini を使用して生成することもできます。
さまざまなセルタイプをノートブックに追加する方法については、次のチュートリアルをご覧ください。
サードパーティ ライブラリを使用してコントロールを作成する
Data Apps は、サードパーティのウィジェット ライブラリを使用して作成されたコントロールをサポートしています。次に例を示します。
- iPywidgets または AnyWidget を使用して、インタラクティブなコントロールをノートブックに追加できます。ウィジェットは、Colab データ サイエンス エージェントを使用して生成できます。
- ノートブック レベルでは、ウィジェット セルを連結できます。ノートブックの先頭でウィジェットを定義すると、その出力は可視化セルなどの他のセルで使用できます。これにより、Data Apps のグローバル フィルタを設定できます。
Data Apps を作成して公開する
Colab Data Apps は、既存のノートブックを使用するか、新しいノートブックを作成して作成できます。次の例では、Python ユーザー向けのノートブックのスタートガイド テンプレートを使用してノートブックを生成し、それから Data App を作成します。
Data Apps を作成したら、データポータルに公開して、データ分析を共有可能でインタラクティブなエクスペリエンスに変えます。
Data Apps を公開するときに、既存の Colab ランタイムに接続することも、テンプレートを使用して新しいランタイムを作成することもできます。テンプレートを使用すると、ワークロードに合わせてランタイムのサイズを設定し、アイドル状態のシャットダウン時間を設定して、費用とアプリの起動時間のバランスを取ることができます。
Data Apps を作成して公開する手順は次のとおりです。
[Studio] ページに移動します。
下矢印をクリックし、[ノートブック > すべてのテンプレート] を選択します。
または、BigQuery Studio のホームページで、[ノートブック ギャラリーを表示] をクリックします。
[Python ユーザー向けのノートブックのスタートガイド] カードをクリックするか、ギャラリーで検索します。
テンプレートが開いたら、[このテンプレートを使う] をクリックして、テンプレートを実行可能なノートブックに変換します。
[dashboard] [Data app] をクリックします。
[コンポーネント] ペインで、チェックボックスを使用してアプリのセルを追加または削除できます。
新しいコンポーネントを作成するには、keyboard_backspace [Notebook] をクリックしてノートブックに戻り、新しいセルを追加します。
アプリのレイアウトに問題がなければ、[公開] をクリックします。
[公開] ページで、次の情報を入力します。
[名前] フィールドに、アプリの名前を入力します。アプリ名は、作成に使用したノートブックの名前と同じである必要はありません。
[ランタイム] フィールドで、[既存のランタイムに接続] を選択してランタイムを選択するか、[新しいランタイムを作成] を選択して適切なテンプレートを選択します。
[既存のランタイムに接続] を選択した場合、アプリを公開する前にノートブックを ランタイムに接続する必要があります。
[公開] をクリックします。
データポータルから Google アカウントへのアクセスを許可するよう求められたら、[許可] をクリックします。
ソース ノートブックとアプリに変更を加えた場合は、[変更を公開] をクリックしてアプリを更新できます。
または、データポータルから more_vert [その他のオプション > 編集]をクリックしてアプリを編集することもできます。
これにより、BigQuery Studio でソース ノートブックが開きます。
Data Apps を表示して共有する
データポータルを使用して、Colab Data Apps を表示し、アプリを他のユーザーと共有します。
アプリを表示する場合、インタラクティブ性は含めたコンポーネントに基づきます。 たとえば、Matplotlib グラフは静的ですが、Colab 可視化セルまたは Plotly などのライブラリを使用して作成されたグラフはインタラクティブです。
コードで定義されたウィジェットを操作して、フィルタリングや出力の変更などのタスクに使用できます。これらのインタラクションはユーザー固有です。
データポータルでアプリを表示して共有する手順は次のとおりです。
データポータルでアプリを表示するには、[データアプリを表示] をクリックします。
アプリを共有するには、データポータルで person_add [Share] をクリックします。
[ユーザーやグループと共有] ページで、次の操作を行います。
[ユーザーやグループを追加] フィールドに、アクセス権を付与するグループと個人を入力します。
指定したユーザーとグループのアクセス権限 を選択します。
- 編集者: ユーザーはアプリを編集し、スケジュールと アラートを作成して編集し、アプリを他のユーザーと共有できます。
- 閲覧者: ユーザーはアプリを表示できますが、編集したり 他のユーザーと共有したりすることはできません。
[送信] をクリックします。
他のユーザーを招待したり、レポートへのリンクを取得したり、アプリを共有またはダウンロードしたりするには、[共有] オプションの横にある arrow_drop_down をクリックして、次のいずれかを選択します。
- ユーザーを招待する
- レポートへのリンクを取得
- レポートをダウンロード
データポータルでアセットを共有する方法については、 他のユーザーをレポートに招待するをご覧ください。
Data Apps の再接続と更新
インタラクティブ セッションは 30 分間続きます。30 分後に、アプリはカーネルとの接続を失い、静的になります。新しい 30 分間のセッションを開始するには、ページを再読み込みするか、データを更新します。
データを更新するには:
データポータルでアプリを開きます。アプリを開いた状態で、[データアプリを表示] をクリックします。
データポータルで、more_vert [その他のレポート アクション > データを更新] をクリックします。
Data Apps でセルを実行するために使用される認証情報
デフォルトでは、Data Apps はアプリ作成者の認証情報を使用してデータにアクセスし、可視化をレンダリングします。すべての閲覧者は、作成者のアクセス権に基づいてレンダリングされた Data Apps を表示します。機密データにアクセスできる Data Apps を共有する前に、この点を考慮してください。
Data Apps を削除する
データポータルを使用して Data Apps を削除できます。アプリの作成に使用したノートブックを削除しても、アプリは削除されず、アプリの機能が停止することはありません。
データポータルで Data Apps を削除する手順は次のとおりです。
[最近使用したアイテム] ページで、アプリを見つけます。
行の末尾にある more_vert [**その他のオプション > 削除**] をクリックします。
料金
ノートブックのランタイムで実行されたコードと、使用した BigQuery スロットに対して課金されます。詳細については、 Colab Enterprise の料金をご覧ください。