Best Practice: LookML Dos and Don'ts

以下のベスト プラクティスには、経験豊富な Looker の部門横断的なチームによって共有された推奨事項が反映されています。これらのインサイトは、実装から長期的な成功に至るまで、Looker のお客様との連携に携わった長年の経験に基づいています。これらのベスト プラクティスは、ほとんどのユーザーと状況に対応できるように設計されていますが、このページで共有される推奨事項を実装する場合は、常に適切に判断してください。

LookML の推奨事項

  • 推奨事項: すべての結合に対して relationship パラメータを定義する。

    これにより、Looker 内で指標が適切に集計されます。デフォルトの場合、Looker では、関係が定義されていない結合に対して、many_to_one の結合関係が使用されます。relationship パラメータを正しく定義することについての詳細は、relationship パラメータを正しく取得することに関するベスト プラクティス ページをご覧ください。
  • 推奨事項: 派生テーブルを含め、各ビュー内に主キーを定義する。

    すべてのビュー(派生ビューまたはデータベースから直接派生したもの)には、主キーを含める必要があります。Looker が指定されたどのレコードも一意に識別できるように、この主キーは、「一意の値」にする必要があります。この主キーは、単一の列または複数の列を連結したもので、テーブルか派生テーブルの一意の識別子となる必要があります。
  • 推奨事項: dimensionmeasure、他の LookML オブジェクトの名前には、すべて小文字とアンダースコアを使用する。

    label パラメータは、名前フィールドの追加フォーマットに使用でき、ビュー名Explore 名モデル名の外観をカスタマイズするためにも使用できます。たとえば、下の LookML では、label パラメータを使用してラベル「Number of Customers」を measure の customer_count_distinct に割り当てています。
          measure: customer_count_distinct {
            label: "Number of Customers"
            type: count_distinct
            sql: ${customer.id} ;;
          }
  • 推奨事項: データグループを使用して、永続的な派生テーブル(PDT)の生成を調整し、基盤となる ETL プロセスでキャッシュを調査します。データグループを使用して、ダッシュボード、または Look の配信をトリガーし、最新データを受信者に送信することもできます。

LookML の非推奨事項

  • 非推奨事項: from パラメータを使用して、Explore 内のビューの名前を変更する。

    代わりに view_label パラメータを使用してください。fromview_label の違いの詳細については、ドキュメント ページの from(Explore 用)パラメータをご覧ください。from パラメータは、主に次の状況で使用する必要があります。
    • ポリモーフィック結合(同じテーブルの複数回結合)
    • 自己結合(テーブル自体への結合)
    • 拡張されたビューを元のビュー名に戻す再スコーピング
  • 非推奨事項: ディメンション グループの名前に「date」や「time」という単語を使用する。

    Looker では、ディメンションのグループ名の末尾に各タイムフレームが追加されます。つまり、created_date という名前のディメンション グループの場合は created_date_datecreated_date_month などのフィールドになります。ディメンション グループ名として created を使用するだけで、created_datecreated_month などの名前のフィールドになります。
  • 非推奨事項: 結合内でフォーマットされたタイムスタンプを使用する。

    日付フィールドまたは時刻フィールドを結合するには、元の期間オプションを使用します。これにより、結合の述部にキャスティングやタイムゾーン変換が含まれるのを防ぐことができます。