LookML でビューやモデルを定義する

2023年12月21日掲載

LookML でビューやモデルを定義する

この記事は、ソフトバンクアドベントカレンダー2023の 21日目の記事になります。

この記事では、Looker と BigQuery の接続後、LookML を使用したビューやモデルの作成から簡単な可視化までの過程を操作画面とともに詳しくご紹介しています。Looker でデータ分析を始めようとしている方に、少しでも参考になれば幸いです!

Looker の機能概要はデータプラットフォーム「Looker」の機能紹介を、Looker とBigQuery の接続方法はLooker を BigQuery に接続してみるを確認ください。

目次

Looker とは

Looker は、Google Cloud が提供する「データプラットフォーム」です。

集計前のデータ定義の作成、データの集計、ダッシュボードやレポートといったデータの可視化までの一連のデータ分析プロセスをカバーする機能を備えています。

LookML_Lookerとは

簡単な操作性と可視化データの外部ツール連携など、柔軟性も兼ね備えており、ビジネスユーザとデータ分析者の橋渡し役として活用が期待されています。

本記事では、LookML でBigQuery にあるデータをモデル化および可視化する手順をステップバイステップで詳しくご紹介します

 

Looker の用語と概念を理解する

手順に入る前に、Looker に関連する用語を整理しましょう。

LookML とは

LookML は、Looker Modeling Language の略で、Looker で使用されるSQLに類似した独自の言語です。LookML を用いることで、モデルやビューの定義を行うことが可能です。生成されるデータは、元々は単純な値ですが、活用するためのルール化=組織内で統一された指標定義や集計ロジックの定義をこのLookML を用いて行います。これにより、データガバナンスが強化され、ビジネスや社内の意思決定に活用できる一貫性のあるレポートやダッシュボードを作成することができます。

さらにLookML で定義すると、ダッシュボードにアクセスするユーザーの属性に基づいて表示データを変更する、特定のデータを非表示にするといったことが可能になります。その結果、部署ごとに複数のダッシュボードを構築する必要がなくなり、1つの画面でユーザーのニーズに合った分析結果を確認することができるようになります。

LookML プロジェクトとは

下の図で示されているように、Looker でのプロジェクト(LookML プロジェクト)は、LookML の設定ファイル(Model、View、Dashboards等)の集合です。1つのプロジェクトに複数のモデルを紐づけることができます。

LookMLプロジェクトとは

(Google公式ヘルプより引用)

モデルでは、Explore およびView の結合(joins)を定義します。Explore は、SQLだとクエリのFrom句にあたります。ユーザーがモデルで定義したExplore は、Looker のExplore メニューに表示されます。

LookMLプロジェクトとは②

ビューでは、データベースのテーブル情報(Dimensions、Measures、Field sets等)を定義します。定義したディメンションやメジャーはExplore 画面の左側に表示されます。ユーザーはそこから必要なフィールドを選択しグラフやチャート(Visualizations)を作成します。

LookMLプロジェクトとは③

開発モードを有効にする

最初に画面下部の[開発モード]を有効にします。

開発モードを有効にすることで、ビューやモデルを管理するためのコンテナであるLookML プロジェクトを作成することができます。

LookML_開発モードを有効にする

Looker の開発モードは、LookML を使ってカスタムビューやモデルを作成するための環境です。変更した内容は個人の開発環境のみに反映されており、Looker インスタンスを使用している全員からは確認できません。Git 上では個人ごとの開発ブランチが自動作成されています。変更に問題がなければ、本番環境に統合することで誰でも確認ができるようになります。

開発モードが有効になっているときは、ページ上部にメッセージが表示されます。

LookML開発モード有効確認

LookML プロジェクトを作成する

次に、LookML プロジェクトを作成します。

Looker 上でメニューの[開発] > [プロジェクト] にアクセスし、[New LookML Project] を選択

LookMLプロジェクトを作成する

必要事項を入力し [Create Project] をクリック

・プロジェクト名:任意の名前
・Starting Point :Generate Model from Database Schema
・Connection:事前に作成した接続
・Build Views From:All Tables

LookMLプロジェクトを作成する②

プロジェクトが作成され、指定したデータベースからモデル・ビューが作成されました。

LookMLモデル・ビュー

ビューやモデルを定義する

作成されたビューファイルでは、元テーブルから取り込むフィールド(ディメンションやメジャー)が定義されています。

次に、モデルファイルを編集します。

INCLUDE句を使い、ビューファイルを読み込みます。さらに、Explore を定義する際、JOIN句を使ってテーブル同士での結合を定義します。

今回は店舗の売上データを使っており、それぞれプロダクトIDとストアIDをキーとして、3つのテーブルをJOINしています。

LookML_ビューやモデルを定義する

Gitで管理する

ここからは、変更内容を開発環境から本番環境へ反映していきます。

Looker では、ビューやモデルのコードをGitでバージョン管理することが可能です。これにより、複数の開発者が同時にコードを編集、変更履歴を追跡することができます。

プロジェクト画面から設定 > [Gitを構成] を選択

LookML_Gitで管理する

リポジトリURLを入力し[Continue]を選択

LookML_Gitで管理する②

今回はGit Hubのリポジトリを使うのでGit HubのUsernameとPersonal Access Tokenを入力

LookML_Gitで管理する③

Gitの設定は完了したので、変更内容を本番環境に反映します。

[Validate LookML] をクリックし、変更内容に問題がないか検証します。

LookML_Gitで管理する④

エラーがなかったので、[Commit Changes & Push]を選択し、本番環境に反映します。

LookML_Gitで管理する⑤

コミットメッセージを入力

LookML_Gitで管理する⑥

[Deploy to Production]をクリック

LookML_Gitで管理する⑦

本番環境に反映されたようです!開発モードをオフにして、本番環境を確認してみましょう。

LookML_Gitで管理する⑦

本番環境でも、先ほどの変更内容が確認できました。本番環境ではコードが読みとり専用になっていて編集できません。

LookML_Gitで管理する⑧

このように、Looker では開発モードでビューやモデルを編集し、その変更内容を本番環境にpushして反映します。

データを可視化する

モデルが完成したので、次はデータの可視化を行いましょう。

メニューの[Explore] から先ほど作成したモデル名を選択すると、モデルファイルの中で定義したExploreが表示されているので、クリックします。

LookML_データを可視化する

簡単にグラフを作ってみましょう。
今回はサブカテゴリー毎の注文数を棒グラフで表現します。

ディメンションとメジャーを選び[実行]をクリック

LookML_データを可視化する②

[ビジュアリゼーション]を開きグラフを選択
ここでは[列]を選択しました。

LookML_データを可視化する③

グラフが描写されました!このグラフを新規のダッシュボードに追加してみましょう。

[設定] > [保存] > [新しいダッシュボードとして] を選択
任意の名前をつけて保存します。

データを可視化する④

作成したダッシュボードを確認します。

[ダッシュボードを表示] を選択

データを可視化する⑤

ダッシュボードが表示されました!

別のグラフを追加したり、グラフの大きさや配置の変更など、ダッシュボードのレイアウト編集はこの編集画面から行えます。

データを可視化する⑥

簡単な画面上の操作だけで、事前に定義されたディメンションやメジャーを使用してグラフ、チャートさらにダッシュボードを作成することができます。

アクセスを制限する

最後に、作成したモデルやデータ、コンテンツの特定ユーザーへのアクセス制御方法について説明します。Looker 管理者は、ユーザーまたはユーザーグループが表示できるコンテンツや、行える操作を管理することができます。

 

コンテンツ アクセス

Looker は特定のフォルダをどのユーザーやグループに表示させるかを制御し、フォルダの管理権限を与えることができます。フォルダの管理権限をもつユーザーは、フォルダ内のダッシュボードやLook の削除やコピー等の操作を行うことができます。

データアクセス

モデル単位でアクセスを制限することが可能で、より細かな制限を設けたい場合は、アクセスフィルタを使用して行単位で制限できます。加えて、特定のExploreや結合、ビュー、フィールドへのアクセス制限を設けるためにはアクセス許可を用います。

機能アクセス

Looker はユーザーが実行可能な操作の種類を制御します。具体的には、データおよびコンテンツの表示、LookMLモデルの変更、Lookerの管理などが含まれます。また、機能アクセスは、ユーザーだけでなく、ユーザーグループに対しても制御することが可能です。ユーザーグループを作成し適切な権限を付与して、対象のユーザーをグループに追加する運用が推奨されます。

 

Looker ではこれらのアクセス制限を組み合わせることで、特定のユーザーに対し何を操作し何を表示するかを制御することが可能です。

まとめ

本記事では、Google Cloud が提供するデータプラットフォームであるLooker を用いて、BigQuery上のデータの定義からビジュアライゼーションまでの一連のプロセスを解説しました。具体的には、ビューやモデルの作成方法から、Gitによるコード管理、データの可視化方法について詳しく説明しました。

Gitでのコード管理は、誰がいつどこを変更したかが明確になり、データガバナンスの強化とともに、チーム全体の協働が促進され、効率的な作業が可能となります。

さらに、LookML で事前にディメンションやメジャーを定義することは、組織内でデータの定義を統一することにつながります。これにより、互いに異なるロジックでデータを集計してしまうといったデータ活用によくあるエラーを防ぐことができます。統一した定義から得られる一貫した結果は、ビジネスでの正確な意思決定をするための助けとなります。

LookMLの活用

このようなLookML を活用したデータ定義の統一によるデータガバナンス強化は、Looker Studio にはない機能です。特定の部署や少人数でのミニマムスタートにはLooker Studio が最適です。さらにデータ活用範囲を拡大したい、全社的にデータ活用を推進したいというフェーズまで進むと、データ定義の共通化という避けては通れない課題解決のために、Looker が必要となってきます。そしてその先に、全社のデータを横断的に見て経営判断や新たなデータの価値を生み出す、顧客への自社データの価値の提供によるマネタイズが見えてくると思います。

Looker の活用はその第一歩となるのではないでしょうか。

全社のデータを横断的に見て、経営判断や新たなデータの価値を生み出すことを目指したり、顧客への自社データの価値の提供によるマネタイズには、Looker をおすすめします。

 

ソフトバンクアドベントカレンダー2023はまだまだ続きます!
22日目の記事をお楽しみに!

関連資料

“5つのQ&A”で理解する「 Looker 」の世界

Looker がどのように企業のデータ活用を促進するか、Q&Aで分かりやすく解説します。

関連サービス

Looker

Looker は、定義から集計、可視化の一連のデータ分析プロセスをカバーするBIツールを超えるデータプラットフォームです。すべて共通の指標定義なので、誰が分析しても同じ結果を出すことができ、ビジネスの意思決定を的確に行うことができます。

Google Cloud

Google サービスを支える、信頼性に富んだクラウドサービスです。お客さまのニーズにあわせて利用可能なコンピューティングサービスに始まり、データから価値を導き出す情報分析や、最先端の機械学習技術が搭載されています。

MSPサービス

MSP(Managed Service Provider)サービスは、お客さまのパブリッククラウドの導入から運用までをトータルでご提供するマネージドサービスです。

関連セミナー・イベント

条件に該当するページがございません

おすすめの記事

条件に該当するページがございません