Looker Blocks

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

使用可能なブロック

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

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

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

標準化とカスタマイズ

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

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

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

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

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

Looker に慣れていない場合は、Looker アナリストがこれらのモデルを最大限に活用できるよう支援します。

LookML へのブロックの追加

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

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

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

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

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

さまざまなデータベースのデータセットにアクセスする

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

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

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

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

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

Amazon Redshift、MySQL、PostgreSQL、Oracle のうちどれを使用しているか。

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

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

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

LookML モデルにアクセスする

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

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

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

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

  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. メインの Looker プロジェクトのデータブロックを参照するには、次の LookML をプロジェクト マニフェスト ファイルに追加します。

    project_name: "<your_project_name\>"

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

設定の考慮事項とオプション

Google BigQuery: 必ず正しいモデル化されたファイルのセットを使用してください。Google BigQuery を使用している場合は、ファイル名に _bq_ を含むすべてのファイルを参照する場合があります。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 ファイル(存在する場合)の手順をご覧ください。また、ビジュアリゼーションのドキュメント ページに記載されている情報もご覧ください。