[Looker]labelの宣言場所における違いをまとめてみる #looker
Lookerのlabelパラメータは、宣言する場所によって挙動が異なります。
以下の4つのパターンに分けられるため、この4つの違いをまとめてみます。
- 各種フィールドパラメータ内(dimension、measure等)
- viewパラメータ内
- exploreパラメータ内
- modelファイル直下
labelの主な用途
始めに、labelの主な用途をまとめておきます。(どのパターンでも基本的な用途が似ているため、この章でまとめてしまいます。)
Lookerでデータモデルを定義する際の基本方針として「ユーザーフレンドリーであること」が挙げられます。
この方針をより具体的にすると、「Lookerを使ってグラフを作成するユーザーが滞りなく使いたいデータを探すことができ、データの内容も理解でき、正しいグラフをかけること」という内容になると思います。
ここで、modelファイル名、各種フィールド、viewなどの定義は、接続先のDBのテーブル情報をそのまま使用することも多いため、そのままだとユーザーからわかりづらい場合があります。
そういったときにlabelを用いて、フィールドやviewなどをユーザーに馴染みのあるビジネス用語、社内用語に置き換えてあげると、ユーザーにとってよりLookerが使いやすくなると思います。
各種フィールドパラメータ内
仕様(dimension、measure)
dimensionやmeasureにlabelを使用すると、Explore画面上のフィールドピッカーでの表記が、labelで指定した内容になります。
実際の画面を見てみましょう。
「order_id」というdimensionに対して、labelを追加してみます。
まず、labelを入れていない場合、Explore画面上のフィールドピッカー内では定義したdimensionの名称である「order_id」がそのまま表示されます。
続いて、このorder_idのdimensionの中で「label: "注文番号"」と追記してみます。 すると、フィールドピッカー内での表記がlabelで指定した内容に置き換わりました!
仕様(dimension_group)
一方、dimension_groupは階層構造を持つ少し変わった仕様のため、こちらもlabelを入れることでどう変化するのかを確認してみます。
「created」というdimension_groupに対して、labelを追加してみます。
labelを入れていない場合、dimension_groupとして定義した名称がフィールドピッカーの上位階層に表示され、下位階層に設定したtimeframeが表示されます。
ここでdimension_groupに「label: "レコード生成時間"」と追記すると、フィールドピッカーの上位階層の名称がlabelで指定した内容に置き換わりました! 下位階層には何も影響が出ていませんね。
viewパラメータ内
viewパラメータ内でlabelを使用すると、Explore画面上で左側のフィールドピッカーの最上位階層がlabelで指定した内容に変わります。
実際の画面を見てみましょう。
「order_items」というviewに対して、labelを追加してみます。
まず、labelをつけていない状態だと、下図のように表示されます。 Explore画面上のフィールドピッカーの最上位階層に、viewの名称が表示されていますね。
続いて、viewパラメータの中に「label: "注文アイテムデータ"」と入れてみます。 すると、下図のように設定したlabelがフィールドピッカーの最上位階層に表示されるようになりました!
exploreパラメータ内
仕様
exploreパラメータ内にlabelを使用すると、 Looker画面上部のExploreを押したときに、explore名が表示されるところが、 設定したlabelの内容になります。
実際の画面を見てみましょう。
「events」というexploreに対して、labelを追加してみます。
まず、exploreパラメータ内にlabelを定義していない場合は、下図のように表示されます。exploreパラメータで定義した名称がそのまま表示されていますね。
続いて、exploreパラメータ内に「label: "イベント情報"」と入れてみます。 すると、explore名が表示されていたところが、設定したlabel名に置き換わりました!
modelファイル直下
仕様
modelファイルの直下にlabelを使用すると、 Looker画面上部のExploreを押した時にmodelファイル名が表示されるところが、 設定したlabelの内容に変わります。
実際の画面を見てみましょう。
「modelファイル名:super_store_jp.model」という前提の元、確認します。
まず、modelファイルの直下にlabelを何も入れていない場合は、下図のように表示されます。modelファイル名が赤枠内に表示されていますね。
続いて、modelファイルの直下に「label: "スーパーストア_日本語ver"」と追記してみます。すると、下図のように設定したlabel名に置き換わりました!
最後に
いかがでしたでしょうか! labelや、先月投稿したview_labelは、4つもパターンがあって正直困惑する人も多いのではないかと思います…
そんな方に、このブログが少しでも参考になれば幸いです。