Looker データアプリの概要と設定
Looker データアプリは、Gemini CLI、Claude Code、Cursor などのローカル AI コーディング エージェントが自然言語プロンプトから構築するフリーフォーム キャンバス ダッシュボードです。標準のグリッド ダッシュボードとは異なり、データアプリでは、Looker の管理された LookML セマンティック レイヤとユーザー権限にバインドされたまま、完全なビジュアル レイアウト制御(絶対位置指定、要素の重複、カスタム ウェブ コンポーネントなど)を行うことができます。
データアプリを構築すると、AI コーディング エージェントがローカルマシンで実行され、アプリケーション コードが生成されます。データアプリを Looker に公開すると、ユーザーがダッシュボードを開いたり操作したりするときに AI モデルは使用されません。
Looker データアプリの概要
データアプリは Looker 拡張機能です。これは Looker 拡張フレームワークによって動作し、単一要素のユーザー定義ダッシュボード(UDD)内で実行されます。
主な機能は次のとおりです。
- AI アシストによるオーサリング、ランタイム AI なし: コンピュータで AI コーディング エージェントを使用して、プロンプトからレイアウトとコンポーネント コードを生成します。公開されたデータアプリは、ユーザーがダッシュボードを表示するときに AI モデルを呼び出すことなく、Looker 内の標準ウェブ コンポーネントとして実行されます。
- ネットワーク分離サンドボックス: AI エージェントがアプリケーション コードを書き込むため、Looker はアウトバウンド ネットワーク接続をブロックする分離されたブラウザ サンドボックス内で各データアプリを実行します。アプリケーション コードは Looker インスタンスとのみ通信できるため、クエリ結果とユーザー認証情報を外部サーバーに送信することはできません。
- ガバナンスが適用されたデータアクセス: データアプリは、Looker の LookML セマンティック レイヤを介してのみデータをクエリします。すべてのクエリは、閲覧ユーザーの Looker 権限、モデルアクセス、行レベルのアクセス フィルタに基づいて実行されます。
- インタラクティブなコントロールとスケジュールされた配信: データアプリには、アプリ内の組み込みのインタラクティブ フィルタ、クロスフィルタリング、ドリルビューが含まれています。また、Looker の PDF ダウンロードと送信日時を設定したメール配信もサポートしています。
始める前に
デベロッパー ツールをインストールしてデータアプリを作成する前に、次の前提条件を満たしていることを確認してください。
インスタンスの要件
- Looker 26.18 以降を実行している Looker ホスト型インスタンスを使用する必要があります。
- Looker 管理者は、 [管理者] パネルの [全般] > [プレビュー] で、[データアプリ] プレビュー トグルを有効にする必要があります。詳細については、プレビュー機能のドキュメント ページをご覧ください。
- ユーザーのブラウザは、Data Apps ランタイム ライブラリを読み込むために
www.gstatic.comへのネットワーク アクセス権を持っている必要があります。
必要な権限
データアプリを作成して公開するには、次のものが必要です。
- ダッシュボードを配置するフォルダに対する アクセスの管理、編集アクセスレベル
- Looker の権限
access_data、explore、see_user_dashboards、save_dashboards(またはsave_content) - ダッシュボードで使用するデータの LookML モデルへのアクセス権
公開されたデータアプリを表示するには、ユーザーに次のものが必要です。
移動先のフォルダに対する [表示] アクセスレベル
基盤となる LookML モデルに対する Looker の権限
access_data、explore、see_user_dashboards
Looker API 認証情報
デベロッパー ツールは、Looker API を使用して Looker インスタンスにアクセスします。デベロッパー ツールに Looker API へのアクセス権を付与するには、クライアント ID とクライアント シークレットで構成される API キーが必要です。クライアント ID とクライアント シークレットは、設定オプションを構成するときにデベロッパー ツールに指定します。
API キーを取得する手順は次のとおりです。
- Looker 管理者は、[管理者] > [ユーザー] ページで、ユーザー アカウントの API キーを有効にする必要があります。
- Looker で、ユーザーの [アカウント] ページに移動します。
- [認証] セクションで、[API キー] 見出しの横にある [管理] をクリックします。
- [API キー] ページで、既存の API キーを表示したり、新しい API キーを作成したりできます。
- 選択した API キーのクライアント ID とクライアント シークレットをコピーします。
フォルダ ID
データアプリを公開する Looker フォルダの数値 ID を特定します。Looker で、ターゲット フォルダ(共有やマイフォルダなど)を開き、URL の末尾にある番号をメモします。
https://LOOKER_INSTANCE_URL/folders/FOLDER_ID
制限事項
Looker データアプリには次の制限があります。
- 埋め込み、テーマ設定、印刷: データアプリでは、埋め込み、内部ダッシュボードのテーマ、印刷はサポートされていません。ただし、AI コーディング エージェントにプロンプトを入力することで、データアプリで直接ビジュアル スタイリングをカスタマイズできます。
- データアプリのコピー: Looker でデータアプリをコピーしないでください。コピーは同じ基盤となるアプリケーションを参照するため、1 つのコピーに対する変更はすべてのコピーに反映されます。
- LookML のエクスポートとインポート: LookML としてデータアプリをエクスポートすることと、LookML からデータアプリをインポートすることはサポートされていません。
www.gstatic.comへの依存関係: データアプリは、ランタイム ライブラリとコンポーネント ライブラリを読み込むためにwww.gstatic.comへのネットワーク アクセスを必要とします。ユーザーのブラウザは、データアプリをレンダリングするためにwww.gstatic.comにアクセスできる必要があります。
デベロッパー ツールをインストールする
データアプリを作成するには、ローカル開発環境(macOS または Linux)にデベロッパー ツールをインストールします。
インストール スクリプトを実行します。
AI コーディング エージェントにアクセスできるマシンでターミナルを開き、次のコマンドを実行します。
bash <(curl -fsSL https://dl.google.com/looker-data-apps/install.sh)
設定オプションを構成する
インストール中に、インタラクティブなプロンプトに応答します。
- インストール ディレクトリ: Data Apps プロジェクトを保存するローカルパスを入力するか、Enter キーを押してデフォルト(
~/looker-data-apps)をそのまま使用します。 - Looker インスタンス URL: Looker インスタンスの URL(
https://myinstance.looker.comなど)を入力します。 - Looker API client_id: クライアント ID を入力します。
- Looker API client_secret: クライアント シークレット(所有者のみのファイル権限で
data-apps-config.jsonにローカルに保存)を入力します。 - Looker フォルダ ID: フォルダ識別子で特定したターゲット フォルダ ID を入力するか、Enter キーを押してデフォルトのフォルダ(フォルダ
1、共有フォルダ)をそのまま使用します。
プロンプトを完了すると、インストーラは 4 ステップの検証チェックを自動的に実行し、認証情報が機能することと、Looker インスタンスがデータアプリを保存して提供できることを確認します。
データアプリを作成、プレビュー、公開する
このワークフローに沿って、AI コーディング エージェントを使用してデータアプリを作成します。
ステップ 1: AI コーディング エージェントを起動する
ターミナルで、Data Apps のインストール ディレクトリ(~/looker-data-apps)に移動し、AI コーディング エージェントを起動します。
ステップ 2: エージェントに Data App の生成を求める
自然言語を使用してプロンプトを記述し、エージェントにアプリケーションの構築を依頼します。アプリケーションは既存の探索とビューに基づいていなければなりませんが、技術的な識別子を使用する必要はありません。次に例を示します。
Build a responsive Looker Data App using the faa model and the
large\_flight\_data explore. I want this to be a dynamic, dark-themed operations
center.
Please include the following components:
The Map (Centerpiece): Create a custom visual that visualizes flights moving
from their Origin to Destination. Include a timeline slider (or playback
animation) based on Departure Time and Arrival Time so I can watch the flights
move over time.
KPI Strip: Across the top, include a row of KPI cards showing the total flight
Count, average Delay Mins, total Total Revenue, and average Load Factor.
Trend Chart: Include a line chart showing how Carbon Emissions and Total Revenue change over
the Departure Date periods.
Interactive Filters: Include drop-down filters for Airline, Status, and Origin
that wire into the charts and map to update the data dynamically.
AI エージェントは LookML Explore を検査し、コンポーネント定義を記述して、ローカル プレビュー サーバーを起動します。
ステップ 3: ローカル プレビューを検査する
エージェントから提供されたローカル プレビュー URL(http://localhost:8765)を開きます。
ターミナルで make start(または python3 skills/data-app-previewer/tools/start-preview.py)を実行して、作成したすべてのローカルアプリのギャラリーを表示することもできます。
ステップ 4: アプリを繰り返し改善する
AI エージェントに話しかけて、レイアウト、スタイル、インタラクションを調整します。
- 「3 つの指標カードをキャンバスの右側に配置します。」
- 「トレンド グラフの上に期間スライダーを追加して。」
- 「背景をニュートラルなグレーに変更し、丸みを帯びたカードとソフトなドロップ シャドウを追加します。」
ステップ 5: データアプリを Looker に公開する
デザインに満足したら、エージェントにアプリのデプロイを指示します。
Publish this app to Looker.
エージェントは公開スクリプトを実行します。このスクリプトは、コンポーネント スクリプトをパッケージ化し、構成されたフォルダにダッシュボード オブジェクトを作成または更新します。
ステップ 6: Looker でデータアプリを表示する
エージェントから返された Looker リンクをクリックします。データアプリは、ユーザー アクセス フィルタ、フォルダ共有、プラットフォーム機能を完全にサポートした状態で Looker 内に読み込まれます。
試してみることをおすすめします
プレビュー期間中に Looker データアプリの機能を試すには、次のシナリオを試してください。
画像から既存のレポートを複製する
別の BI ツール(Tableau や Power BI など)の既存のレポートのスクリーンショットやスライドデッキを AI エージェントにアップロードします。エージェントに次のようにプロンプトを入力します。
Replicate the layout, visual hierarchy, and color scheme shown in this
screenshot, binding the charts to our customer_analytics explore.
マルチモーダル AI エージェントは、画像から座標ジオメトリ、タイポグラフィ、カラーパレットを抽出し、一致するデータアプリのレイアウトを生成できます。
カスタム レイアウトを設計する
非対称レイアウトを作成して、標準の長方形グリッドを超えましょう。
- ヒーロー バナーと部分的に重なるフローティング KPI カードを作成します。
- ワイド データグリッドの横に複数列のエグゼクティブ サマリー サイドバーを追加します。
- カスタムの企業ブランディング、フォント スタイル、背景グラデーションを適用します。
リッチなインタラクティブ UI コンポーネントを組み込む
エージェントにインタラクティブなウェブ要素の追加を依頼します。
- タブ付きナビゲーション: 複雑な運用指標を複数のタブに整理し、ページを再読み込みすることなく表示します。
- モーダル ダイアログとドロワー: 指標をクリックすると、詳細な内訳ビューまたは用語集の定義が開きます。
- インタラクティブなフィルタとコントロール: グラフの系列を動的に更新するカスタムの切り替えボタン、スライダー、検索入力などを追加します。
高度なデータテーブルと可視化を使用する
組み込みコンポーネント ライブラリを活用する:
- AG Grid の統合: 列の並べ替え、列のサイズ変更、セルの書式設定をサポートするインタラクティブなデータテーブルを埋め込みます。
- 高度な Highcharts タイプ: 標準のダッシュボード タイルではサポートされていないゲージ、ヒートマップ、ツリーマップ、サンキー図を生成します。
Looker プラットフォームの機能をテストする
データアプリが Looker ワークフローと統合されていることを確認します。
- クロス フィルタリング: 1 つのグラフでカテゴリを選択すると、残りのビジュアリゼーションがフィルタされるようにグラフを構成します。
- PDF のエクスポート: ダッシュボード全体を PDF としてダウンロードします。
- スケジュール設定された配信: データアプリの PDF スナップショットをチームにメールで送信する自動スケジュールを設定します。