[Looker22.4新機能]create_custom_fieldsパーミッションの追加により「カスタムフィールドは作らせたくないがテーブル計算は作らせたい」の設定が出来るようになりました #looker

2022.04.01

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

さがらです。

先日、Lookerの22.4がリリースされました。

このリリースノートのうち、新しく追加されたパーミッションであるCustom fields permissionについて、本記事でまとめてみます。

create_custom_fieldsとは

まず、22.4で追加されたパーミッションcreate_custom_fieldsについて見ていきます。

今回の22.4のアップデート前後で何が変わったかのまとめは下記になります。内容としては、22.4からは「テーブル計算」と「カスタムフィールド」に関して、パーミッションが分かれたという内容になります。

  • 22.2以前
    • テーブル計算の作成権限:create_table_calculationsで管理
    • カスタムフィールドの作成権限:create_table_calculationsで管理
  • 22.4
    • テーブル計算の作成権限:create_table_calculationsで管理
    • カスタムフィールドの作成権限:create_custom_fieldsで管理 ※22.4より新しく追加

これにより、「あるユーザーに対して、カスタムフィールドは作らせたくないが、テーブル計算は作らせたい」ということが出来るようになったのです。

ここで、カスタムフィールドとテーブル計算の違いをまとめておきます。

  • カスタムフィールド
    • 通常のLookMLで定義するフィールドと同じように、Explore上でユーザーが独自にフィールドを定義できる機能です。
    • カスタムフィールドは、Explore上で選択されて実行するときにSQLのクエリに変換されて、結果を取得します。
  • テーブル計算 ※「表計算」ともいいます
    • 通常のLookMLで定義するフィールドとは異なり、一度Explore上で選択された条件で実行されたクエリが返した結果に対して、計算式を実行する機能です。
    • IFなどの論理関数や、結果を上下にずらして出すオフセット関数を使用することが可能です。

カスタムフィールドはLookMLでも代替できるため不用意に新しいカスタムフィールドをユーザー側で定義されると、LookMLの本来のメリットである「指標の定義の統制」が効かなくなるリスクがあります。

一方、テーブル計算はオフセット関数でExplore上で返された結果をずらすことで移動平均を求めることができるなど、テーブル計算の専用の関数が用意されており少し凝った表現をしたいときには必須の機能です。(念の為、テーブル計算でも書き方を間違うと誤った情報を伝えてしまうリスクはあるため、使用するときは注意すべきです。)

しかし、これまではcreate_table_calculationsという権限でカスタムフィールドもテーブル計算も権限を管理しており、「テーブル計算だけ作らせたい」という権限管理が出来ませんでした。

そこで今回の22.4のアップデートにより、カスタムフィールドはcreate_custom_fields、テーブル計算はcreate_table_calculationsとパーミッションが分かれたことで、「あるユーザーに対して、カスタムフィールドは作らせたくないが、テーブル計算は作らせたい」ということが出来るようになったのです!

試してみた

実際にどのようにパーミッションの設定ができ、どのように画面に変化があるかを見てみます。

パーミッションの設定

下図はLookerのPermission Setの設定画面ですが、赤枠内のように、create_custom_fieldscreate_table_calculationsとパーミッションが分かれているのがわかります。

この中から必要なパーミッションを選択して、そのPermission Setを用いたロールをグループやユーザーに付与しましょう。

実際の画面ではどうなるか

権限がどちらもある場合

こちらは見慣れた画面かもしれませんが、create_custom_fieldscreate_table_calculationsをどちらも付与した場合を見ていきます。

こちらの場合は下図のように、カスタムフィールド(カスタムDimension・カスタムMeasure)も定義できますし、テーブル計算も追加出来るようになっています。

create_table_calculationsだけ権限を与えた場合

続いて、テーブル計算だけを作らせるためcreate_table_calculationsだけ付与した場合を見ていきます。

この場合、カスタムフィールドの欄はあるのですが、追加を押しても「表計算」しか表示されません。

create_custom_fieldsだけ権限を与えた場合

(あまりないケースかもしれませんが)カスタムフィールドだけを作らせるためcreate_custom_fieldsだけ付与した場合を見ていきます。

この場合、計算の追加ボタンも消えて、カスタムフィールドだけを定義できるようになっています。

最後に

今回のアップデートのおかげで、カスタムフィールドとテーブル計算周りのパーミッション設定をより柔軟に出来るようになりました!

Lookerをある程度運用してユーザーも慣れてきた頃にパーミッション周りの課題が出てくると思います。組織の状況に合わせて適切にパーミッションの設定をしてみてください。