可読性の高い項目名をつける

:us: Naming Fields for Readability in English :us:

ディメンションとメジャーの名前は、特にモデルが充実してくるにつれて混乱する可能性があります。LookML作成中に適切な参照項目を作成し、フィールドピッカーの中で正しいフィールドを選択できるようにするには、わかりやすい命名規則が必要です。これに役立つ一つのアプローチは、一貫した命名規則です。次の規則は、Looker内で内部的によく利用される規則です。

“Count” はカウント計測用

type: count メジャーは [フィルター] Count で呼ばれます。例えば:

- view: users
  fields:
  - measure: count
    type: count

  - measure: active_count
    type: count
    filters:
      status: 'active'

これにより、LookerのUIに次のような名前がつけられます:

  • USERS Count
  • USERS Active Count

これらのフィールド名は自然に読めますが、ビジネスユーザーは最初に"number of"や"total"でなく、”count”を検索する事を知らない場合があります。しかし、いくつかのとても単純なトレーニングにおいては、これが最良な選択肢のようです。

"number of"や"total"をカウントには利用しません。なぜなら、これらの言葉を別のケースに利用するために予約したいからです。

“Unique Count”は 固有の数の計測用

type: count_distinct メジャーは Unique [フィルター] [エンティティ名] Count で呼ばれます。例えば:

- view: users
  fields:
  - measure: unique_user_count
    type: count_distinct
    sql: ${id}

  - measure: unique_active_user_count
    type: count_distinct
    sql: ${id}
    filters:
      status: 'active'

  - measure: unique_name_count
    type: count_distinct
    sql: ${name}

これにより、LookerのUIに次のような名前がつけられます:

  • USERS Unique User Count
  • USERS Unique Active User Count
  • USERS Unique Name Count

“Total” は 合計の計測用

type: sum メジャーは Total [フィルター] [エンティティ名] で呼ばれます。例えば:

- view: orders
  fields:
  - measure: total_revenue
    type: sum
    sql: ${TABLE}.revenue

  - measure: total_chicago_revenue
    type: sum
    sql: ${TABLE}.revenue
    filters:
      city: 'Chicago'

これにより、LookerのUIに次のような名前がつけられます:

  • ORDERS Total Revenue
  • ORDERS Total Chicago Revenue

“Number of” は数量の計測用

type: number 数量を表すディメンションは Number of [エンティティ名] で呼ばれます。例えば:

- view: orders
  fields:
  - dimension: number_of_items
    type: number
    sql: ${TABLE}.items

これにより、LookerのUIに次のような名前がつけられます:

  • ORDERS Number of Items

この場合に"count"や"total"という単語を利用すると、ディメンションとメジャーのどちらを利用しているかわからないため、非常に混乱する可能性があります。

“Average” は平均値計測用

type: average メジャーは Avg [フィルター] [エンティティ名] で呼ばれます。例えば:

- view: orders
  fields:
  - measure: avg_revenue
    type: average
    sql: ${TABLE}.revenue

  - measure: avg_chicago_revenue
    type: average
    sql: ${TABLE}.revenue
    filters:
      city: 'Chicago'

これにより、LookerのUIに次のような名前がつけられます:

  • ORDERS Avg Revenue
  • ORDERS Avg Chicago Revenue

“Over” または“Per” は比率用

2つの異なるフィールド間の比率に基づくメジャーとディメンションは、 [分子] over [分母] または [分子] per [分母] で呼ばれます。例えば、

- view: orders
  fields:
  - dimension: revenue_per_number_of_items
    type: number
    sql: ${revenue} / ${number_of_items}

  - measure: total_revenue_per_unique_customer
    type: number
    sql: ${total_revenue} / ${unique_customer_count}

これにより、LookerのUIに次のような名前がつけられます:

  • ORDERS Revenue Per Number Of Items
  • ORDERS Total Revenue Per Unique Customer

最初のディメンションを Avg Revenue Per Item と呼ぶ場合、type: average メジャーのかわりにtype: numberディメンションを利用するのはあまりわかりやすくありません。