[Looker]view_labelの宣言場所における違いをまとめてみる #looker
Lookerのview_labelパラメータは、宣言する場所によって挙動が異なります。
基本的に以下の4つのパターンに分けられるため、本ブログにてその仕様と想定される主な用途をまとめてみます。
- 各種フィールドパラメータ内(dimension、measure等)
- joinパラメータ内
- exploreパラメータ内
- viewパラメータ内
各種フィールドパラメータ内
仕様
dimensionやmeasureなどのフィールドパラメータ内でview_labelを宣言すると、Explore上でviewレベルの階層が1つ加わり、その階層の中にview_labelを宣言したフィールドが追加されるようになります。
具体的には、下図のようにeventsというview内のidというフィールドに対して、view_label:"id list"と宣言すると、Explore上ではidがeventsの直下ではなく、id listの直下に表示されるようになります。
主な用途
例えば、1つのviewの中でフィールドが何十個も存在する場合、ユーザーがExploreから目的のフィールドを探すのに時間がかかってしまいます。
こういった時に、view_labelを用いて用途別にviewレベルで別の階層に設定してあげると、ユーザーが目的のフィールドを探す時間が短縮され、よりユーザーフレンドリーなExploreにすることが出来ると思います。
joinパラメータ内
仕様
joinパラメータ内でview_labelを宣言すると、Explore上でjoinしたviewの表記がview_labelで定義した内容になります。
具体的には、下図のようにuser.viewを結合しているjoinパラメータの中で、view_label:"user's info"と宣言すると、Explore上でのuser.viewの表記が「user's info」に変わります。
主な用途
joinしたviewの名称がそのままだとユーザーからわかりづらい場合に用います。view_labelパラメータ内は日本語を使用することも可能ですので、よりユーザーからわかりやすい名前を設定するのが良いと思います。
exploreパラメータ内
仕様
そのexploreパラメータのベースとなっているviewの、Explore上での表記がview_labelで定義した内容になります。
具体的には、下図のようにevents.viewをベースとしてexploreパラメータを定義しているとき、exploreパラメータ内でview_label:"event's info"と宣言すると、Explore上でのevents.viewの表記が「event's info」に変わります。
もう一点補足すると、1つのexploreパラメータ内でベースとなるviewを複数回joinしたい場合は、fromパラメータを用いますが、exploreパラメータ内でのview_labelはfromパラメータとの併用が可能です。
主な用途
exploreパラメータのベースとなっているviewの名称がそのままだとユーザーからわかりづらい場合に用います。joinパラメータの用途でも説明していますが、日本語で書けるため、よりユーザーにわかりやすい名前にしてあげるのがよいと思います。
viewパラメータ内
viewパラメータ内でのview_labelについてですが、Lookerのバージョン4.4以降、view_labelの使用は避け、代わってlabelを使用するようにと公式Docに記載されています。
そのため、「このviewのExplore上での名称を変更したいなー」と感じたときは、viewパラメータ内でlabelを使用したり、前述したexploreパラメータ内やjoinパラメータ内でview_labelを使用して、名称変更するようにしましょう!
最後に
色々なベストプラクティスの資料においても「Exploreの設計は、ユーザーにとってわかりやすくすること」と記載されています。
ユーザーによりわかりやすいExploreとするためには、このview_labelは必須のパラメータだと思いますので、ぜひ有効に活用してみてください!