Looker の Explore は Looker 開発者によって設計され、データ フィールドとテーブル間の定義された関係を使用して、データベース テーブルからのデータが効率的に結合されています。そのため、1 つの Explore を使用してデータを調べることをおすすめします。
ただし、Looker 開発者が必要な関係を作成していない場合や、技術的な制限事項がある場合があります。このような場合、統合された結果を使って異なる Explore からの結果(異なるモデルやプロジェクトのものを含む)を組み合わせてデータテーブルを作成し、それに対して探索やビジュアリゼーションの作成を行えます。統合された結果を概念実証として使用すると、LookML プロジェクトやモデルをさらに開発、定義できます。
クエリのマージ
複数のクエリの結果を統合するには、次の手順を行います。
- プライマリ クエリという最初のソースクエリを作成します。
- 次のソースクエリを追加します。
- これらのクエリの統合ルールを確認して統合を実行します。
-
- 結果の並べ替えやピボット処理を行い、ビジュアリゼーションを作成します。
- URL を使用して結果を再利用し、共有します。
- ソースクエリを編集するか、ソースクエリを追加して結果を変更します。
プライマリ クエリの作成
複数のクエリの結果を統合するには、まず次の手順に従ってプライマリ クエリを準備します。
- [Explore] メニューから Explore を選択します。
フィールド ピッカーから目的のディメンションと measure を選択します。このステップ中は、ディメンションのピボット処理はしないでください。
以上で結果の統合を開始できますが、高度な探索手法を使用してクエリをさらに絞り込むこともできます。次のことが可能です。
必要に応じて、データのフィルタを追加します。
必要に応じて、表計算を含めてアドホック指標を作成します。
必要に応じて [Run] をクリックしてプライマリ クエリの結果を確認し、フィルタと表計算をテストします。
次のソースクエリの追加
プライマリ Explore を作成したら、次の手順で別のソースクエリを追加します。
- Explore で歯車アイコンをクリックします。
- [Merge Results] を選択します。[Choose an Explore] ウィンドウが表示されます。
[Choose an Explore] ウィンドウで、次のクエリを作成する Explore の名前をクリックします。
[Edit Query] ウィンドウで Explore が開き、プライマリ クエリに統合する新しいクエリを作成できます。
フィールド ピッカーから目的のディメンションと measure を選択します。プライマリ クエリのディメンションに完全に一致するディメンションを少なくとも 1 つ含めてください。このステップ中は、ディメンションのピボット処理はしないでください。
必要に応じて、フィルタを含めてデータを絞り込みます。
必要に応じて表計算を組み込み、クエリ フィールドに基づいて新しいフィールドを作成します。
必要に応じて [Run] をクリックしてソースクエリの結果を確認し、フィルタと表計算をテストします。
[Save] をクリックして、クエリをプライマリ クエリに統合します。
統合ルールを確認して統合を実行する
Looker では、クエリの照合に使用する最適なディメンションが自動的に検出され、照合内容が [Merge Rules] セクションに表示されます。Looker で、各マージに使用されるフィールドが表示されます。
Looker がクエリとの照合に使用したディメンションを確認します(これらのルールの変更については、統合ルールの編集をご覧ください)。
[Run] をクリックすると、統合されたクエリ結果が表示されます。
ソースクエリからの表計算は、統合された結果では標準ディメンションとして表示されることに注意してください。
統合された結果の使用と変更
統合された結果を使用して次のことができます。
- データを調べて並べ替えます(データのドリルダウンを含む)。ただし、2 つの Explore の統合に使用されたディメンションをドリルダウンすると、プライマリ Explore のドリル フィールドのみが表示されます。
- totalsを表示します。Looker では、各コンポーネント クエリの合計を計算し、それらの合計値を統合された結果で使用します。そのため、表示されるのは結果がマージされる前に計算された合計なので、合計が高すぎるように見える場合があります。これを回避する一つの方法は、各クエリでフィルターを揃えることです。
- ビジュアリゼーションを作成します。
- 結合された結果のディメンションをピボットします。データテーブルのディメンションの列にある歯車メニューから [Pivot] を選択します。ソースクエリのディメンションは、ピボットできません。
統合された結果を再利用するには、次のようにします。
- ブラウザの URL を使用して結果を共有します。
- ブラウザで URL をブックマークし、同じ結合クエリを後で再度実行します。統合された結果を Look として保存することはできません。
- 統合された結果をタイルとしてダッシュボードに保存します(統合された結果をダッシュボードに保存するをご覧ください)。
統合された結果を変更するには、次のようにします。
- [Add Query] ボタンをクリックして同じ手順に従い、追加の Explore からクエリを結合します。
- ソースクエリを編集するか、クエリの統合方法を構成します。詳細については、統合された結果の編集をご覧ください。
- フィルタを作成してソースクエリに追加します。これは、クエリを作成して統合するときに行うか、[Merged Results] ページでクエリを編集して行います。統合された結果にフィルタを直接追加することはできません。
キャッシュを削除してデータベースから最新の結果を取得するには、[統合された結果] ウィンドウの右上にある歯車メニューから [キャッシュのクリアと更新] を選択します。
統合された結果のクエリをダウンロードするには、クエリをダッシュボードに保存してから、ダッシュボードを PDF ファイルまたは CSV ファイルのコレクションとしてダウンロードします。
統合された結果の編集
統合された結果を取得したら、統合された結果に対して次の変更を加えることができます。
ソースクエリの編集
[Merged Results] ウィンドウでソースクエリに戻って編集するには、左側のペインでクエリ名をクリックするか、クエリの歯車メニューで [Edit] を選択します。これらのオプションにより、[Edit Query] 画面に戻ります。
フィールドを追加または削除したり、表計算を追加したり、ソースクエリのフィルタを変更したりできます。[保存] をクリックして、統合された結果に戻ります。
クエリの歯車メニューには、次のオプションもあります。
- Rename: [Merged Results] ウィンドウに表示されるクエリ名として別の名前を指定します。
- Make Primary: クエリを統合された結果のベースにします。プライマリ クエリの役割については、「複数のクエリのデータを結合する」の統合された結果についてをご覧ください。
- Delete: 統合された結果からクエリを削除します(削除したクエリを統合された結果に再び追加するには、ブラウザの戻るボタンを使用します)。
統合ルールの編集
クエリを追加すると、追加したクエリとプライマリ クエリの照合に使用できるディメンションが Looker によって自動的に検出されます。追加する各クエリには、値がプライマリ クエリのディメンションと完全に一致するディメンションが少なくとも 1 つ必要です。Looker では、[Merge Rules] セクションにこれらの一致が表示され、クエリの結合に使用されるフィールドが表示されます。
[Merge Rules] セクションを使用して、Looker がクエリの統合に使用するフィールドを変更または追加できます。
- プルダウン メニューで、データの照合に使用できる他のディメンション オプションを確認できます。
- 照合に使用できるその他のディメンションがある場合は、[+ Add dimension] が表示されます。[+ Add dimension] をクリックして、クエリの統合で使用する追加のディメンションを構成します。
- 2 つのディメンション間でデータを照合しない場合は、[X] をクリックします。
プライマリ クエリの切り替え
クエリを統合する際は、まず 1 つの Explore から 1 つのクエリを作成します。次に、他のクエリを追加して最初のクエリと組み合わせます。デフォルトでは、最初のクエリがプライマリ クエリとみなされますが、どのクエリでもプライマリ クエリとして指定できます。プライマリ クエリとして指定するには、クエリの歯車メニューから [Make Primary] を選択します。
追加する各クエリには、値がプライマリ クエリのディメンションと完全に一致するディメンションが少なくとも 1 つ必要です。
プライマリ クエリを切り替えると、統合された結果が変更される可能性があります。プライマリ クエリの役割について詳しくは、「複数のクエリのデータを結合する」の統合された結果についてをご覧ください。
統合された結果をダッシュボードに保存する
統合された結果のクエリをダッシュボードに追加したら、統合された結果のタイルにダッシュボード フィルタを追加または適用する、タイルを並べ替える、タイルを編集する、ダッシュボードに新しいタイルを追加するといった操作が可能です。統合された結果に基づいてタイルからデータをダウンロードすることはできませんが、ダッシュボードを PDF として、または CSV ファイルのコレクションとしてダウンロードできます。
埋め込みの Look、ダッシュボード、Explore 内のクエリの統合
適切な権限があれば、埋め込みの Look、ダッシュボード、Explore 内のクエリを統合できます。埋め込み Look のクエリを別のクエリと統合するには:
- Look のタイトルにポインタを合わせると、Look の歯車メニューが表示されるので、歯車メニューをクリックします。
- [結果の統合] を選択し、クエリを統合する手順に従います。
埋め込みダッシュボード タイルのクエリを統合するには:
- ダッシュボード タイルにポインタを合わせると、ダッシュボード タイルのプルダウン メニューが表示されます。
- プルダウン メニューから [Explore From Here] を選択します。そのタイルのクエリの Explore が開きます。
- Explore の歯車メニューをクリックし、[Merge Results] を選択します。
- クエリを統合する手順を行います。
メモ
- プライマリ クエリのすべてのフィールドは、プライマリ クエリのフィールド名で統合された結果に表示されます。一致するディメンションに対してプライマリ クエリと追加クエリで異なる名前が使用されている場合は、プライマリ クエリのディメンション名のみが結果に表示されます。
統合された結果クエリには、行数の上限が設定されている場合があります。
- デフォルトでは、統合された結果クエリの結合は Looker メモリで処理されるため、統合される各クエリは、結合できる行数が 5,000 行に制限されます(管理者がより高い上限を指定している場合は最大 50,000 行)。制限された行数を超えるデータを返すクエリを結合する場合、返された最初の制限された行数のみが統合された結果に含まれます。
- Looker 管理者が データベース内マージクエリの Looker Labs 機能を有効にしており、同じ BigQuery 接続にある 2 つのクエリの結果をマージする場合、2 つのクエリ間の結合は BigQuery データベース自体で実行されます。データベース内マージクエリはパフォーマンスが高く、無制限の行を結合できます。詳細については、「複数のクエリのデータを結合する」のデータベース内マージクエリセクションをご覧ください。
Looker メモリで処理される統合クエリの場合、統合された結果はクエリ後の処理機能です。この機能は慎重に使用しないと、Looker インスタンスのリソースが過負荷になり、すべてのユーザーに対する Looker インスタンスのレスポンスが遅くなる可能性があります。データベース内マージクエリを利用できない場合は、データベースで処理される SQL を生成する関数とロジックを LookML で定義することをおすすめします。Looker のパフォーマンスの最適化について詳しくは、Looker のパフォーマンスを最適化するのベスト プラクティス ページをご覧ください。
まとめ
Looker 開発者はさまざまなデータベース テーブルのデータを組み合わせる方法を慎重に検討しているため、可能な限り 1 つの Explore のデータを使用してください。ただし、必要であれば結果を統合できます。これは、複数の Explore やデータベースのデータを組み合わせることができる便利な手法です。