Looker Blocks

Looker Blocks™ は一般的な分析パターンとデータソースのための事前構築済みデータモデルです。ゼロから始めるのではなく、他の人がすでに作った成果物を再使用し、仕様に正確に合わせてブロックをカスタマイズしていきます。 最適化された SQL パターンや設定が不要なデータモデルまで、Looker Blocks をテンプレートとして使用することで、Looker でスピーディかつ柔軟にデータをモデル化できます。

使用可能なブロック

さまざまな Looker Block から選択できます。現在使用可能なブロックを確認するには、Looker Marketplaceブロック セクションをご覧ください。

Looker Block は、データの分析をより簡単で効率的にするために作成されました。「現状のまま」で利用でき、今後更新は行われません。Looker では、このデータの精度、信頼性、エラーがないことを表明または保証することはできません。データの収集方法と解釈方法の詳細については、各データソースのサイトの記載をご覧ください。

関心のあるブロックをクリックすると、具体的な使用手順が表示されます。

一部の Looker Block は、Looker Marketplace を使用してすばやく簡単にインストールできます。Looker Marketplace からブロックをデプロイするには、Looker 管理者が Marketplace 機能を有効にしている必要があります。local_dependency パラメータを含むブロックをインストールするには、ローカル プロジェクトのインポートラボ機能も有効にする必要があります。Looker Block のインストールとカスタマイズの詳細については、Looker Marketplace で提供されている Looker Marketplace のドキュメント ページをご覧ください。

標準化とカスタマイズ

local_dependency パラメータを含む既存のブロックでビルドを行うには、まず Looker 管理者がローカル プロジェクト インポートラボ機能を有効にする必要があります。

さまざまなブロックの使いやすさは、データベース スキーマが標準化されている度合いによって異なります。ほとんどの Looker Block は、データスキーマに合わせていくつかのカスタマイズが必要になります。ただし、データブロックは実装が最も簡単ですが、カスタマイズはできません。

  • データ ブロックには、一般公開データセットと完全な LookML モデルの両方が含まれ、GitHub リポジトリから LookML モデルをコピーしてモデル化されたテーブルにアクセスするだけで済みます。詳しい手順については、このページのデータブロックの使用をご覧ください。

  • Segment や Snowplow などのデータ収集アプリケーションは、比較的標準化された形式でイベントを追跡します。これにより、どのアプリケーションでもお客様が使用できるテンプレート化された設計パターン(データのクレンジング、変換、分析が可能)を作成できます。

  • Salesforce などの他のウェブ アプリケーションを使用すると、内部ユーザー向けにカスタム フィールドを追加できます。これにより、当然、データは標準化された形式で生成されなくなります。その結果、アナリティクスを起動して実行できるように一部のデータモデルをテンプレート化できますが、標準化されていない部分をカスタマイズする必要があります。

  • 最後に、一般的なビジネス分析情報用のブロックについて説明します。これらは、データソースに依存しない最適化された SQL または LookML 設計パターンです。たとえば、多くの企業は、顧客のライフタイム バリューの推移を分析したいと考えています。これらのパターンにはいくつかの前提条件が組み込まれていますが、特定のビジネスニーズに合わせてカスタマイズできます。これらのパターンは、特定の種類の分析を実行する最適な方法に関する Looker の視点を反映しています。

Looker を初めて使用する場合は、Looker アナリストがモデルを最大限に活用できるよう支援します。

LookML にブロックを追加する

  • 同じファイル内の Explore とビューの両方を示すブロックもあります。これによって簡単に見分けることができますが、通常は LookML の適切なセクションをデータモデルの適切な場所にコピーします。詳細については、モデルファイルとビューファイルについてに関するドキュメント ページをご覧ください。
  • 場合によっては、データモデルに新しい LookML ファイルを作成してサンプルを収容することもできます。

データブロックを使用する

データブロックは特別なタイプの Looker Block であり、データセットとデータモデルを提供します。Looker データブロックには、次のような一般公開データソースがあります。

  • ユーザー属性データ: 米国コミュニティ調査の一般的なユーザー属性、州、郡、郵便番号の区域、国勢調査ブロック グループレベルの指標。
  • 気象データ: 1920 年から前日までの米国の気象レポート。このブロックは毎晩更新されます。

現在使用可能なブロックの完全なリストについては、Looker Marketplaceブロック セクションをご覧ください。

異なるデータベースのデータセットにアクセスする

データブロックのデータセットにアクセスする手順は、データベース スキーマによって異なります。以降のセクションでは、これらのデータベースのデータセットにアクセスする手順について説明します。

Google BigQuery のデータセットにアクセスする

既存の Google BigQuery アカウントをお持ちの場合は、Looker の BigQuery でホストされているデータセットにアクセスできます。このページのプロジェクトへのデータブロックの追加セクションに進んでください。

Google BigQuery アカウントをまだお持ちでない場合は、無料トライアルを設定してから、BigQuery で Looker の一般公開データセットにアクセスできます。

Google BigQuery では、リージョン間のプロジェクト共有をサポートしていません。米国リージョン外から Google BigQuery のデータブロックに直接アクセスするには、次の方法があります。

他のデータベースのデータセットにアクセスする

Amazon Redshift、MySQL、PostgreSQL、または Oracle を使用していますか?

Google Cloud サービスと S3 の両方で、これらの各データセットに変換されたデータを公開し、選択したデータベースに直接インポートできるようになりました。

また、GitHub リポジトリの各データセットに対してデータ定義言語(DDL)を使用できるようにしました。DDL ステートメントで、選択したデータベースのデータ型を変更する必要があるかもしれませんが、各テーブルの列の型についての概念が必要です。

次のいずれかの場所から直接データをダウンロードします。

LookML モデルにアクセスする

GitHub リポジトリの 1 つを新しい GitHub リポジトリ(Looker でホスト、または自社でホスト)にフォークし、インスタンス内で拡張または絞り込みます。

プロジェクトにデータブロックを追加する

このセクションで説明する方法に加えて、LookML の絞り込みを使用して、プロジェクト内のビューや Explore の LookML を作成することもできます。

local_dependency パラメータを含むデータブロックでビルドを行うには、まず Looker 管理者がローカル プロジェクト インポート Labs 機能を有効にする必要があります。

プロジェクトにデータブロックを追加するには:

  1. Looker インスタンスに新しいプロジェクトを追加します。

  2. ビルドされた LookML にアクセスするには、上記の GitHub リポジトリをフォークするかコピーします。必ず新しい GitHub リポジトリを作成してください。

  3. 他のデータベース言語ファイルをリポジトリから削除します。Looker Block には通常、Google BigQuery、Amazon Redshift、Snowflake 用のファイルが含まれます。たとえば、Google BigQuery にデータブロックを設定する場合は、Google BigQuery ビューファイル、Google BigQuery Explore ファイル、Google BigQuery モデルファイルのみが必要です。

  4. モデルファイルの接続名を、データブロックのデータが存在するデータベース接続に置き換えます。Google BigQuery または Snowflake を使用している場合は、拡張または改良するデータベース接続を使用します。

    すべての結合ロジックは、各リポジトリの .explore ファイルに存在します。このファイルは、プロジェクト マニフェストを設定した後、次の手順で使用します。

  5. データブロックを拡張または改良するメインの Looker プロジェクトで、プロジェクト マニフェスト ファイルを作成します。

  6. 次の LookML をプロジェクト マニフェスト ファイルに追加して、メインの Looker プロジェクトのデータブロックを参照します。

    project_name: "<your_project_name\>"

    local_dependency: {
      project: "<project_name_of_datablock\>"
    }

設定に関する考慮事項とオプション

Google BigQuery: 正しいモデル化されたファイルセットを使用してください。Google BigQuery を使用している場合は、ファイル名に _bq_ が含まれるすべてのファイルを参照できます。Google BigQuery モデルの言語を独自のデータベース言語に適応させることが必要な場合があります。

Google BigQuery では、リージョン間のプロジェクト共有をサポートしていません。米国リージョン外から Google BigQuery のデータブロックに直接アクセスするには、次の方法があります。

拡張機能: モデルの拡張機能は複数の接続で問題を引き起こす可能性があるため、すべてのプロジェクトは、Explore ファイルの拡張機能を許可するように設定されています。

派生テーブルの結合: ネイティブ派生テーブルに関するドキュメントをご覧ください。公開されているデータセットに対してさまざまなレベルの集計を行い、Looker で SQL を記述し、モデルに結合させることができます。

結果セットの結合: クエリ結果セットを結合して、Google のデータセットから結果セットを結合することもできます。

ユーザー属性データセットの設定例

  1. データにアクセスするには、S3 または Google Cloud サービスのバケットから元データをダウンロードするか、Looker データベースに接続します。

  2. LookML からDemographic データブロック モデルを Looker インスタンスで別のプロジェクトとしてインポートします。

  3. include パラメータを使用して、ビューファイルを取り込みます。

  4. 次に、ビューファイルを拡張または絞り込むか、ネイティブ派生テーブルを利用して、Explore に必要な集約レベルでデータを取得します。

    この例では、ユーザー属性データは e コマース データセット(ブロックグループと郵便番号)とは異なる集計レベルであるため、ネイティブ派生テーブルを使用して郵便番号レベルまで統計を集計します。これにより、煩雑な多対多の結合がなくなります。

      include: "/american_community_survey/bq.explore"
    
      view: zipcode_income_facts {
        derived_table: {
          persist_for: "10000 hours"
          explore_source: fast_facts {
            column: ZCTA5 { field: tract_zcta_map.ZCTA5 }
            column: income_household { field: bg_facts.avg_income_house }
            column: total_population { field: bg_facts.total_population }
          }
        }
        dimension: ZCTA5 {}
        dimension: income_household {
          hidden: yes
        }
    
  5. ビューファイルをモデルに結合します。

      include: "acs*.view"
    
      explore: order_items {
        join: users {
          sql_on: ${users.id} = ${order_items.user_id} ;;
          type: left_outer
          relationship: many_to_one
        }
    
        join: zipcode_income_facts {
          sql_on: ${users.zip} = ${zipcode_income_facts.ZCTA5} ;;
          type: left_outer
          relationship: many_to_one
        }
      }
    
  6. データを探索して可視化します。

viz ブロックを使用する

Looker には、ネイティブのビジュアリゼーション タイプが数多く用意されています。ただし、Looker のネイティブ ビジュアリゼーション タイプでカバーされていないグラフ化のニーズがある場合は、独自のカスタムのビジュアリゼーション タイプを追加することもできます。また、カスタムのビジュアリゼーションを開発して、Looker Marketplace からすべての Looker ユーザーが利用できるようにすることもできます。

Viz ブロックは、Looker でホストされる事前構築済みの JavaScript ビジュアリゼーション タイプです。Viz ブロックは Looker インスタンスに追加できます。これらのブロックは Looker のネイティブのビジュアリゼーション タイプと同じように機能し、ビジュアリゼーション メニューバーに表示されます。また、ドリル、ダウンロード、埋め込み、スケジュール設定などのコア機能が含まれています。

viz ブロックの詳細を確認するには、Looker Marketplace の [Plug-ins] セクションでビジュアリゼーション タイプを選択し、[See the Code] をクリックして viz ブロックの READ.ME ファイルに移動します。READ.ME ファイルは、ビジュアリゼーションの例と viz ブロックに関する詳細情報を示しています。一部のビジュアリゼーションでは、READ.ME ファイルは URL と viz ブロックを追加する手順も示します。

ビジュアリゼーション タイプをインスタンスに追加する方法については、READ.ME ファイル(存在する場合)の手順をご覧ください。また、ビジュアリゼーションのドキュメント ページに記載されている情報もご覧ください。