Content
tenです。
前回、viewにおけるLookML refinementsの活用方法についてご紹介いたしました。
LookML refinementsを使ったLookML開発の手引 (view編)
LookML refinementsはexploreにも適用できます。
今回は、exploreにおけるLookML refinementsの活用方法を見ていきましょう。

LookML refinementsとは?

前記事でも触れましたが、LookML refinementsは「既存のviewやexploreを直接編集することなく、変更を加えることができる」機能です。
特にviewにおけるLookML refinementsはLookMLの開発体験を大きく向上させることができます。

exploreにおけるLookML refinements

それでは、exploreにおいてはどうでしょうか?
viewと比べると、exploreは変更も小さく、コード量も多くありません。

そのため、exploreにおけるLookML refinementsは、開発体験という点でそこまで大きな影響を及ぼしません。
その真価は、modelファイル側でincludeするファイルの範囲を変更することで発揮されます。

具体的に見ていきましょう。

以下のような非常にシンプルなexploreがあるとします。

# /explores/orders.explore.lkml
include "/views/orders.view.lkml"

explore: orders {
description: "これが基本となるexploreです。"
}

modelファイルからincludeすると下記のようになります。

# /base_model.model.lkml
connection: "database_connection"

include: "/explores/orders.explore.lkml"

次に、exploreのLookML refinementsを設定します。

# /explores/ref_orders.explore.lkml
include: "/explores/orders.explore.lkml"
include "/views/users.view.lkml"

explore: +orders {
description: "LookML refinementsによってユーザ情報を結合したexploreです"

join: users {
type: left_outer
relationship: many_to_one
sql_on: ${orders.user_id} = ${users.id} ;;
}
}

この時点では、modelファイルではincludeされていないため、LookML refinementsの記載内容は反映されていません。
ここで、別のmodelファイルを定義します。

# /derived_model.model.lkml
connection: "database_connection"

include: "/explores/orders.explore.lkml"
include: "/explores/ref_orders.explore.lkml"

これにより、利用するmodelによって、descriptionとテーブル結合が異なるexploreができました。
LookerではModel setという単位で、ロールによって利用できるmodelを制限する機能があります。
つまり、exploreのLookML refinementsを利用することで、ユーザのロールに合わせてデータ構造までをも大きく変更することができます。
exploreには他にもfieldsやalways_filter、access_filterなどのさまざまなパラメータがあります。
これらをロールによって使い分けることができるため、更に柔軟なアクセス制御が可能になります。

生成AI時代のLookML refinements

生成AIの台頭により、LookML refinementsは更に重要度を増してきました。

会話分析やExplore AssistantではLookMLのExplore内に定義されているメタデータを利用しています。(会話分析のLookMLのベストプラクティス)
LookMLのlabelやdescriptionを充実化することで、生成AIの応答の質が向上します。

一方で、生成AIにとって必要なコンテキストと、人間である我々が欲しいコンテキストが異なるケースも多くあります。
exploreのLookML refinementsを利用することで、同じデータに基づきながらも生成AIが利用するメタデータとユーザが見られるメタデータを明確に分けることができます。

そのため、単純に探索機能を使う場合、生成AIを活用したい場合の両方でユーザの利便性を向上させることが可能です。

まとめ

exploreにおけるLookML refinementsは、viewに比べるとやや使いづらかった機能でした。
一方で、生成AIを活用する今の時代では、これまでとは異なる利点が生まれてきており、その重要度が増してきています。

ぜひ、exploreのLookML refinementsを使いこなして、Lookerの新たな魅力を感じてみてください!

参考URL:
https://cloud.google.com/looker/docs/lookml-refinements?hl=ja
https://cloud.google.com/looker/docs/reference/param-explore
https://cloud.google.com/looker/docs/admin-panel-users-roles?hl=ja#model_sets

システムサポートでは、Google CloudやLookerの導入や活用を支援しております。
Lookerを導入したい・導入したけど使いこなせていない…という方は、お気軽にご相談ください!

Google Cloud導入・活用支援に関するご相談はこちら

2025年8月21日 LookML refinementsを使ったLookML開発の手引 (explore編)

Category Google Cloud

ご意見・ご相談・料金のお見積もりなど、
お気軽にお問い合わせください。

お問い合わせはこちら