Looker 用コネクテッド シートを使用すると、使い慣れた Google スプレッドシートのスプレッドシート インターフェースから LookML モデルのデータをインタラクティブに探索できます。コネクテッド シートのユーザーは、Looker がサポートする 50 以上のデータベースからの統制されたデータにアクセスできます。コネクテッド シートにはモデルの整理されたビュー(Looker で定義されたとおりのビュー、フィールド、メジャーが含まれる)が表示されるため、直感的にデータを探索できます。コネクテッド シートでアクセスする Looker データは、標準的なスプレッドシートの構造(ピボット テーブル、グラフ、数式など)で使用できます。それにより、使い慣れた構造での柔軟な分析が可能になります。
コネクテッド シートの有効化
コネクテッド シートを使用するには:
- Looker(オリジナル)で、Looker 管理者は、Looker の [Admin] メニューの [Platform] セクションの [BI Connectors] パネルで、[Looker BI Connectors] または [Connected Sheets] トグルを有効にする必要があります。Looker(Google Cloud コア)では、これらのオプションがデフォルトで有効になっています。
- Looker インスタンスは、Looker によりホストされている必要があります。
- インスタンスが Google Cloud でホストされている場合、Looker インスタンスは Looker 22.20 以降を実行している必要があります。Looker インスタンスが Google Cloud でホストされていない場合は、Looker 23.4 以降を実行している必要があります。
- Google スプレッドシートから Looker インスタンスに接続する各ユーザーは、Google Workspace アカウントで使用しているものと同じメールアドレスを Looker ユーザー アカウントで使用する必要があります。Workspace と Looker アカウントのメールアドレスが異なる場合は、スプレッドシートから Looker に接続しようとするとエラーを受け取ります。
- 個別に制御されていないサービスへのアクセスは、Google Workspace 管理コンソールで有効にする必要があります。これは通常、デフォルトで有効になっています。詳細については、個別に管理されていないサービスへのアクセスを管理するのヘルプ記事をご覧ください。
Google スプレッドシートから Looker に接続する
Google スプレッドシートの [データ] メニューから [データコネクタ] を選択し、[Looker に接続する] を選択します。
[Looker に接続する] ダイアログで、Looker インスタンスの名前を入力するか、最近接続したインスタンスの名前を選択して [続行] をクリックします。
スプレッドシートを Looker インスタンスに接続すると、選択した Explore の構造(Looker デベロッパーが追加したビュー、ディメンション、メジャー、フィールドの説明)を示す新しいスプレッドシートが開きます。
Google スプレッドシートを使用した Looker クエリの作成
Looker クエリはスプレッドシートのピボット テーブルを使用して作成されます。スプレッドシートに Looker データを追加するには:
Explore が表示されているシートで、[ピボットテーブル] をクリックします。
新しいピボット テーブルを新しいシートに挿入するか既存のシートに挿入するかを選択して、[作成] をクリックします。
新しい空のピボット テーブルが作成され、ピボット テーブル エディタ ウィンドウが開きます。ここで、行、列、値、フィルタを追加して、Looker の Explore のディメンションとメジャーに基づいてクエリを作成できます。
ピボット エディタの行、列、値、フィルタは、以下の点で Looker のディメンションおよびメジャーと同等です。
- 行は Looker のディメンションと同等です。
- 列は Looker のピボット ディメンションと同じです。
- 値は Looker のメジャーと同等です。カスタム メジャーを作成するには、Looker ディメンションとスプレッドシートの [集計] 関数を選択します。
- フィルタは Looker のフィルタと同等です。
また、Explore の一部であるビューのリストもあり、クリックしてそのビューに含まれるディメンションとメジャーを表示できます。
行、列、値、フィルタを追加するには、[追加] をクリックします。コネクテッド シートには、Explore で利用できるビューのリストが表示されます。ビュー名をクリックすると、ビューにディメンションとメジャーのリストが表示されます。それから、その行、列、値、またはフィルタのデータを提供するフィールドを選択します。フィルタの場合、そのフィールドのデータをどのようにフィルタするかを指定できます。
Looker のフィールドとフィルタを追加してクエリを作成したら、[適用] をクリックします。これにより、Looker インスタンスからシートにデータが入力されます。
Looker データをピボット テーブルに追加すると、通常の Google スプレッドシート機能を使用してデータをフォーマットすることや、Looker データに基づいて新しいスプレッドシートの数式を構築することが可能です。
Google スプレッドシートのデータの更新
ピボット テーブルのデータは静的ですが、いつでも更新できます。データを更新すると、Looker がデータベースにクエリを実行し、ピボット テーブルを最新のデータで更新します。
ピボット テーブルと Explore が表示されたシートの両方に、最終更新時刻が表示されます。
[更新] をクリックして、ピボット テーブルのデータを更新します。
定期的な更新スケジュール設定
[スケジュール設定された更新] ダイアログを使用して、データの自動更新をスケジュールすることもできます。
[スケジュール設定された更新] ダイアログにアクセスするには、ピボット テーブルでその他メニューをクリックして [更新オプション] を選択するか、Explore シートで [更新オプション] をクリックします。
ピボット テーブルの設定を編集する
ピボット テーブルに含める行、列、値、フィルタを変更するには、その他メニューの横にある鉛筆アイコンをクリックし、ピボット テーブル エディタ パネルを開きます。
コネクテッド シートのモニタリング
Looker 管理者は、System Activity History Explore で Query API Client Properties グループを使用してコネクテッド シートの使用状況を確認できます。新しいクエリが実行されるたびに、[History] Explore にエントリが作成されます。
[Query API Client Properties] フィールド グループでは、コネクテッド シート用に 3 つの新しいフィールドがあります。
- API Client Name - コネクテッド シートのエントリを識別できるように、このフィールドには常に
Connected Sheets
が表示されます。 - Connected Sheets Spreadsheet ID - このフィールドには、そのシートの Google スプレッドシートの URL に含まれるシート ID が表示されます。
- Connected Sheets Trigger - クエリが、ユーザーがスプレッドシートの [更新] ボタンをクリックしたことでトリガーされたか、スケジュールされた更新によってトリガーされたかを示します。
以下は、コネクテッド シートの使用状況を示すシステム アクティビティ URL の例です。<instance_name.looker.com>
をインスタンスの URL に置き換えます。
https://<instance_name.looker.com>/explore/system__activity/history?fields=query_api_client_context.name,query_api_client_context.cs_spreadsheet_id,query_api_client_context.cs_trigger,user.name,history.created_date,history.created_time_of_day&f[query_api_client_context.cs_spreadsheet_id]=-NULL&sorts=history.created_time_of_day+desc&limit=5000
リリース後の改善
Looker 用コネクテッド シートの初回リリース後に、以下の機能が追加されました。
値でフィルタ - 2023 年 8 月
コネクテッド シートの Looker ピボット テーブルで、値のリストを表示し、必要な値を選択または選択解除することで、Looker ディメンションをフィルタできるようになりました。以前は、条件によるフィルタリングを使用する場合は、フィルタ値を手動で入力する必要がありました。
この機能を使用するには、ピボット テーブルの [フィルタ] セクションにフィールドを追加し、[ステータス] プルダウンをクリックしてフィルタ オプションを開きます。[フィルタを追加] をクリックします。
サイドバーが開き、スプレッドシートで Looker から最も頻繁に出現する 500 の値が取得されます。
その後、アイテムを検索したり、すべてを選択またはすべてをクリアを選択したり、頻度やアルファベットでアイテムを並べ替えたりできます。下部にある [OK] をクリックすると、スプレッドシートに選択内容が保存されます。[適用] をクリックすると、新しいフィルタを適用して、通常どおりピボット テーブルを更新できます。
メジャーでのフィルタリング - 2023 年 8 月
Looker 用コネクテッド シートをリリースした際は、Looker ディメンションでのみフィルタリングできました。Looker メジャーでもフィルタリングできるようになりました。ピボット テーブル エディタの [フィルタ] セクションにメジャーを追加して、通常どおり実行します。例:
知っておくべきこと
- ピボット テーブルに表示されるデータの大文字と小文字の区別は、モデルの大文字と小文字を区別する設定によって決まります。ただし、ピボット テーブルでは、ネイティブのスプレッドシート データに対してフィルタで大文字と小文字が区別されない状況の場合、大文字と小文字は区別されません。
- スプレッドシートの閲覧者アクセス権を持つユーザーは、ピボット テーブルにキャッシュされたデータを表示できます。
- スプレッドシートの編集者アクセスに加え、ピボット テーブルを編集または更新する必要があるユーザーには、データモデルにアクセスするために、Looker で適切な権限が必要です。これには、ピボット テーブルのベースとなるモデルへのアクセス権、データの表示権限、アクセス フィルタを使用したデータへの適切なアクセス権、またはアクセス許可が含まれます。
- ユーザーが OAuth で BigQuery データベースへの認証を行う場合は、基盤となるデータベースに対する権限の付与が必要になることがあります。
コネクテッド シートの行とデータの上限
コネクテッド シートを使用して作成されるクエリは、最大 30,000 行に制限されます。クエリの結果により多くの行が含まれる場合は、スプレッドシートによってエラーが表示されます。ユーザーに download_without_limit
権限が付与されていない場合は、スプレッドシートの上限にかかわらず、結果が最大 5,000 行に切り捨てられます。
さらに、コネクテッド シートのクエリには、データサイズの上限が適用されます。返されるデータが多すぎるクエリも、エラーになります。
これらのエラーのいずれかが表示された場合は、フィルタを追加するか、クエリで使用するディメンションの数を少なくすることを検討してください。
コネクテッド シートのトラブルシューティング
Google スプレッドシートから Looker に接続しようとすると、問題が発生することがあります。このセクションでは、これらの問題と修正方法について説明します。
エラー: Looker インスタンスへの接続中にエラーが発生しました。もう一度お試しください。問題が解決しない場合は、フィードバックをお送りください。
このエラーは、次に挙げる複数の原因が考えられます。
- Looker インスタンス名が正しく入力されていない。この場合は、Looker インスタンス名を確認して、もう一度接続してみてください。
- スプレッドシートが Looker API に接続できない。このエラーは、Looker インスタンスでデフォルトの API ホスト URL を使用していない場合に発生します。これを修正するには、[API 管理パネル] の [API ホスト URL] フィールドを空白のままにします。
エラー: Looker インスタンスがこの機能を使用するように構成されていません。Looker 管理者に連絡して、この機能を使用できるようにしてください。
このエラーは、次に挙げる複数の原因が考えられます。
- 新しく作成された Looker インスタンスに接続しようとしています。新しい Looker インスタンスがコネクテッド シートで利用可能になるまで、最長 24 時間かかることがあります。
- Looker でホストされていない Looker インスタンスに接続しようとしている。Looker でホストされている別の Looker インスタンスに接続してください。
Looker インスタンスに接続後、モデルが表示されない
これは、インスタンスでモデルを表示するために必要な権限がないことを示しています。
閲覧者のロールを持つ Looker ユーザーには、Looker で Explore UI を使用するための十分な権限がないのと同じように、スプレッドシート内で接続を作成するのに十分な権限がありません。ユーザーが Looker 向けのコネクテッド シートを使用するには、explore
権限が必要です。管理者、デベロッパー、ユーザーのロールには、explore
権限が含まれています。Looker 管理者はユーザーに explore
権限を付与でき、それによりユーザーはインスタンスでモデルを表示できるようになります。
エラー: リンクされた Looker アカウントのメールアドレスが、Google アカウントのメールアドレスとは異なります。
これは、Looker アカウントのメールアドレスが Google アカウントで使用されているメールアドレスと一致しないことを示しています。Looker アカウントと一致するメールアドレスを持つ Google アカウントにログインしていることを確認してください。Looker の管理者が、ユーザーの現在の Google メールアドレスを使用する新しい Looker ユーザー アカウントを作成することもできます。
エラー: 不正なリクエスト: 有効なクライアントが見つかりません。
このエラーは、コネクテッド シート コネクタが有効になっていないことを示しています。Looker 管理者は、Looker の [Admin] メニューの [Platform] セクションの [BI Connectors] パネルで、[Looker BI Connectors] または [Connected Sheets]] トグルを有効にする必要があります。
エラー: 403 Forbidden
Looker インスタンスに IP 許可リストが構成されている場合、その許可リストによって、スプレッドシートが Looker API に接続できなくなる可能性があります。許可リストが原因かどうかを確認するには、Looker インスタンスの URL に移動して、[許可リストにない IP アドレス] エラーが表示されるかどうかを確認します。