LookML プロジェクトは LookML ファイルのコレクションであり、データベースへの接続方法、データのクエリ方法、ユーザー インターフェースの動作の制御方法を Looker に指示します。LookML プロジェクト ファイルには、Looker の [Develop] セクションか UI からアクセスできます。詳しくは、LookML プロジェクト ファイルにアクセスするのドキュメント ページをご覧ください。
プロジェクト ファイルは、Looker のデベロッパーが IDE 内のフォルダを使用して整理します。
LookML プロジェクトは、1 つ以上のモデルファイルとビューファイルで構成されています。また、このページで説明する他のタイプのファイルの一部が含まれている場合もあります。すべてのプロジェクト ファイルには拡張子が含まれますが、IDE 内のフォルダでプロジェクトが有効になっていない場合、拡張子は IDE リストで非表示になります。
次のリンクを選択すると、LookML プロジェクトで使用できるファイルの各タイプに関する詳細情報が表示されます。
- 拡張子が
.model.lkml
のモデルファイル - 拡張子が
.view.lkml
のビューファイル - 拡張子が
.dashboard.lookml
のダッシュボード ファイル - 拡張子が
.topojson
、.geojson
、または.json
のデータファイル - 拡張子が
.md
のドキュメント ファイル - 常に
manifest.lkml
という名前のプロジェクト マニフェスト ファイル - 拡張子が
.lkml
のマニフェスト ロック ファイル - 拡張子が
.strings.json
のロケール文字列ファイル - 拡張子が
.explore.lkml
の Explore ファイル - 拡張子が
.lkml
のデータテスト ファイル - 拡張子が
.lkml
の絞り込みファイル - 上記以外のファイル拡張子を持つその他のファイル
LookML プロジェクトを作成したら、Looker IDE を使用してプロジェクト ファイルにアクセスし、新しいファイルとフォルダをプロジェクトに追加できます。
モデルファイル
モデルファイルは、データベース接続と、その接続を使用する一連の Explore を指定します。また、ExploreそのものとExploreと他のビューの関係も定義します。 Exploreはデータをクエリする際の出発点です。 SQL 用語では、Explore はクエリの FROM
句です。モデルで定義した Explore は、Looker の Explore メニューでユーザーに表示されます。
つまり、モデルファイルは、どのデータテーブルを使用し(含まれるビューと同様に)、必要に応じてそれらを組み合わせる方法を定義する場所です。
モデルファイルを含む LookML プロジェクト ファイルの作成方法については、LookML ファイルとフォルダの管理に関するドキュメント ページをご覧ください。
構造と一般的な構文
Explore の波かっこ { }
の中に、Explore のパラメータを定義します。join
パラメータを使用すると、モデルファイル内の Explore に他のビューを結合できます。
次の例では、サンプル モデルファイル内の LookML で、inventory_items
という Explore と、それに結合されたビューを定義しています。
connection: "thelook_events"
explore: inventory_items {
join: products {
type: left_outer
sql_on: ${inventory_items.product_id} = ${products.id} ;;
relationship: many_to_one
}
join: distribution_centers {
type: left_outer
sql_on: ${products.distribution_center_id} = ${distribution_center.id} ;;
relationship: many_to_one
}
}
この LookML 定義により、[Inventory Items] が Looker のナビゲーションの [Explore] セクションに表示され、products
ビューと distribution_centers
ビューから inventory_items
ビューにデータが結合されます。
モデルファイル内の LookML の構造の詳細については、LookML の用語とコンセプトのドキュメント ページをご覧ください。
モデルファイル内の LookML パラメータの詳細については、モデル パラメータ、Explore パラメータ、パラメータの結合のドキュメント ページをご覧ください。
ビューファイル
ビューファイルは通常、Looker 内の単一の「ビュー」を定義します。ビューは、データベース内の単一のテーブルまたは単一の派生テーブルのいずれかに対応します。ビューファイルは、テーブルをクエリおよびフィールド(ディメンションとメジャー)へと指定し、そのテーブルから含まれるようにします。これによりユーザーは Looker UI でこれらのフィールドを含むクエリを作成できます。
ビューファイルを含む LookML プロジェクト ファイルの作成方法については、LookML ファイルとフォルダの管理に関するドキュメント ページをご覧ください。
構造と一般的な構文
各ビューの中かっこ { }
内はフィールド定義であり、通常、基盤となるテーブルの列または Looker の計算に対応します。Looker では、その大半がディメンションまたはメジャーに分類されます。
次のビューファイルの例では、orders.view
ファイルに id
、status
、user_id
ディメンション、created
ディメンション グループ、count
メジャーの定義が含まれています。
view: orders {
sql_table_name: demo_db.orders ;;
drill_fields: [id]
dimension: id {
primary_key: yes
type: number
sql: ${TABLE}.id ;;
}
dimension: status {
type: string
sql: ${TABLE}.status ;;
}
dimension: user_id {
type: number
# hidden: yes
sql: ${TABLE}.user_id ;;
}
dimension_group: created {
type: time
timeframes: [
raw,
time,
date,
week,
month,
quarter,
year
]
sql: ${TABLE}.created_at ;;
}
measure: count {
type: count
drill_fields: [id, users.id, users.first_name, users.last_name, order_items.count]
}
}
orders
ビューでこれらのフィールドを定義すると、Orders Explore のフィールド ピッカーに [Created Date]、[ID]、[Status]、[User ID]、[Count] のフィールドが表示されます。
Orders Explore へのアクセス権を持つユーザーは、これらのフィールドを選択してフィルタリングすることで、Orders Explore をクエリできます。
ディメンションとメジャーに加えて、ディメンション グループを使用して複数の時間ベースのディメンションを一度に作成することも、フィルタ フィールドを使用してユーザーのフィルタを指定することもできます。ビューファイル内の LookML パラメータについて詳しくは、ビュー パラメータのドキュメント ページをご覧ください。LookML でディメンション、メジャー、ディメンション グループ、フィルタ フィールドを定義する際に使用する LookML パラメータについては、フィールド パラメータのドキュメント ページをご覧ください。
ダッシュボード ファイル
Looker は次の 2 種類のダッシュボードをサポートしています。
- ユーザー定義のダッシュボード: LookML を使用せずにデベロッパー以外のユーザーでも作成できます。詳しくは、ユーザー定義のダッシュボードの作成に関するドキュメント ページをご覧ください。
- LookML ダッシュボード: プロジェクトに関連付けられているバージョン管理されたファイルとして保存されます。
プロジェクトに LookML ダッシュボードが含まれている場合、それらのファイルは IDE 内の専用ダッシュボード ファイルで、拡張子 .dashboard.lookml
として定義されます。
LookML ダッシュボードの詳細については、LookML ダッシュボードの作成のドキュメント ページをご覧ください。
ドキュメント ファイル
Looker ドキュメント ファイルを利用すると、GitHub Flavored Markdown を使用して Looker データモデルに関するドキュメントや他のメモを作成できます。これは、組織での Looker の使い方を理解するために役立ちます。
ドキュメント ファイルを含む LookML プロジェクト ファイルの作成方法については、LookML ファイルとフォルダの管理に関するドキュメント ページをご覧ください。
IDE の外部でドキュメントを表示する
このページで説明するナビゲーション機能を利用するために、IDE の外部でドキュメントを表示するには、ドキュメント ファイルの [ファイル アクションを表示] から [View Document] オプションを選択します。
作成したページの URL を他のユーザーに配布できます。これにより、他のユーザーがアクセスする際に Looker のデベロッパー セクションを経由する必要がなくなります。
ドキュメントにナビゲーション構造を追加する
ドキュメント ファイルにサイドバーを追加すると、情報の構造の確認とドキュメント間の移動が簡単になります。
ドキュメントのサイドバー ナビゲーションを追加するには、ドキュメントの最初の行から始まるナビゲーション セクションを作成します。ナビゲーション セクションの開始と終了を 3 つのダッシュ(---
)でマークします。
ナビゲーション セクションでは、次のパラメータを使用できます。
navigation
ドキュメント ファイルで navigation: true
を使用すると、そのドキュメントにナビゲーション サイドバーを追加できます。たとえば、Markdown ファイルの先頭に次のコードを追加できます。
---
navigation: true
---
このコードにより、プロジェクトのすべてのドキュメントへのリンクを含むナビゲーション サイドバーがドキュメントに追加されます。ドキュメントに navigation: true
のみを含めると、そのドキュメントのサイドバーには、プロジェクトのすべてのドキュメントがファイル名のアルファベット順に表示されます。
また、アルファベット順のファイル名での整理が最適ではないことや、ナビゲーションに表示したくないドキュメントがあることがあります。
この例では、ドキュメント 1、ドキュメント 2、ドキュメント 3、ドキュメント 4 のようにアルファベット順ではなく数値順に表示したり、ナビゲーション サイドバーに [表示しない] ドキュメントを非表示にしたりすることもできます。
ドキュメントのナビゲーション サイドバーでドキュメントの順序を変更する場合や、サイドバーにドキュメントのサブセットのみを表示する場合は、次の形式を使用します。
---
navigation:
- document_one
- document_two
- document_three
- document_four
---
これで、ナビゲーションには、表示するドキュメント ファイルのみが表示され、より論理的な順序で表示されるようになります。
title
デフォルトでは、ドキュメントのヘッダー(ドキュメントが見出しで始まる場合)や、ファイルに見出しがない場合はドキュメントのファイル名がサイドバーに表示されます。ドキュメントの上部に title
パラメータを追加すると、ナビゲーション サイドバーでドキュメントの表示方法を変更できます。
---
title: New Title for Users
---
このタイトルは、ドキュメントのナビゲーション セクションで別の label
を指定しない限り、すべてのドキュメントのナビゲーション サイドバーでリンクテキストとして使用されます。
label
ナビゲーション サイドバーでのドキュメントの一覧表示方法を変更するには、次のように document
と label
のパラメータを使用します。
---
navigation:
- document_one
- document: document_two
label: Customized Label for Document Two
- document_three
- document_four
---
label
値は、参照先のドキュメントに独自の title
パラメータがある場合でも、ドキュメントのサイドバー ナビゲーションにおける表示方法を定義します。
上記の例は、ドキュメントのサイドバーに次のように表示されます。
section
ナビゲーション サイドバーをセクションに分割するには、次のように section
パラメータを使用します。
---
navigation:
- document_one
- document_two
- section: My Section Name
- document_three
- document_four
---
この例では、section
パラメータによって、セクションの区切りと「セクション名」というテキスト見出しがサイドバーに追加されます。
テキスト見出しはリンクそのものではなく、ドキュメント ファイルを参照するものではありません。
データファイル
データファイルとは、ファイル拡張子が .json
、.topojson
、または .geojson
の JSON ファイルです。
map_layer
パラメータを使用すると、JSON ファイルをカスタムマップとして使用して、Looker でデータをプロットできます。
次に、map_layer_name パラメータとディメンションを使用して、データ値(「パリ」など)をカスタムマップ上の地域に関連付けることができます。
LookML IDE で JSON ファイルを編集し、[保存] を選択します。
デバッグの場合、ファイル名の横にある [ファイル アクションを表示] メニューを選択すると [View Raw] を選択して、ファイルを未加工の形式で表示できます。ブラウザで JSON を表示するための適切な拡張子がある場合は、Parsed 形式でファイルを表示するオプションもあります。
LookML プロジェクトに JSON ファイルをアップロードする手順については、LookML のファイルとフォルダを管理するドキュメント ページをご覧ください。
プロジェクトマニフェストファイル
プロジェクトには、次のタスクに使用されるプロジェクト マニフェスト ファイルが含まれる場合があります。
- 現在のプロジェクトにインポートするために他のプロジェクトを指定する
- モデルのローカライズ設定の指定
- LookML 定数の定義
- プロジェクトに拡張子を追加する
- プロジェクトにカスタムの可視化を追加する
各プロジェクトには 1 つのマニフェスト ファイルのみを含めることができます。マニフェスト ファイルは manifest.lkml
という名前にし、プロジェクトのディレクトリ構造と Git リポジトリのルートレベルに配置する必要があります。
プロジェクト マニフェスト ファイルを含む LookML プロジェクト ファイルの作成方法については、LookML ファイルとフォルダの管理に関するドキュメント ページをご覧ください。
マニフェスト ロックファイル
リモート依存関係がプロジェクト マニフェスト ファイルに追加されると、マニフェスト ロック ファイルが自動的に作成されます。Looker はマニフェスト ロックファイルを使用して、マニフェスト ファイルで指定されたリモート プロジェクトのバージョンを追跡します。マニフェスト ロックファイルは Looker IDE のファイル ブラウザパネルに一覧表示され、ファイル名は manifest_lock.lkml
です。
ロックファイルは Looker によって自動的に管理されるため、Looker デベロッパーはマニフェスト ロックファイルの作成や編集を行う必要はありません。
詳細については、他のプロジェクトからのファイルのインポートドキュメント ページをご覧ください。
ロケール文字列ファイル
データモデルをローカライズする場合は、ローカライズする言語 / 地域ごとにロケール文字列ファイルを作成する必要があります。たとえば、デフォルトの言語 / 地域(米国では多くの場合、英語)を含めます。
ロケール文字列ファイルには、モデル内でローカライズする各ラベルと説明の Key-Value ペアがリスト化されています。各ロケールの文字列ファイルには、各ラベルまたは説明にそのロケールの翻訳を提供する必要があります。ロケール文字列ファイルの作成については、LookML モデルのローカライズのドキュメント ページをご覧ください。
ロケール文字列ファイルを含む LookML プロジェクト ファイルの作成方法については、LookML ファイルとフォルダの管理に関するドキュメント ページをご覧ください。
Explore ファイル
Exploreは、ユーザーがクエリできる画面です。Explore はクエリの開始点、SQL 用語では SQL ステートメントの FROM
です。ユーザーが Explore を操作してデータをクエリする方法については、Looker での Explore の表示と操作のドキュメント ページをご覧ください。
Exploreは通常、モデルファイル内で定義されます。 ただし、派生テーブル用に個別の Explore ファイルが必要になることがあります。また、モデル間で Explore を拡張するか、絞り込むことが必要になる場合もあります。
Explore ファイルを含む LookML プロジェクト ファイルの作成方法については、LookML ファイルとフォルダの管理に関するドキュメント ページをご覧ください。
データテスト ファイル
プロジェクトには、LookML モデルのロジックの検証に使用されるデータテスト ファイルを含めることができます。データテストはモデルファイルやビューファイルに含めることもできますが、デベロッパーが複数の異なるモデルで同じデータテストを使用する場合、データテストを独自の専用ファイルに保存するために役立つ場合があります。
データテスト ファイルを含む LookML プロジェクト ファイルの作成方法については、LookML ファイルとフォルダの管理に関するドキュメント ページをご覧ください。
絞り込みファイル
プロジェクトには LookML の絞り込み用のファイルを含めることができます。LookML の絞り込みを使用すると、既存のビューまたは Explore を含む LookML ファイルを編集することなく、これらを調整できます。LookML の絞り込みは、モデル、ビュー、Explore のファイル、または独自の専用ファイルに含めることができます。
絞り込みファイルを含む LookML プロジェクト ファイルの作成方法については、LookML ファイルとフォルダの管理に関するドキュメント ページをご覧ください。
その他のファイル
LookML 要素の多くは、プロジェクト内のさまざまなファイルまたは独自の専用ファイルに格納できます。たとえば、データテストは、モデルファイル、ビューファイル、または独自の専用の .lkml
ファイルに格納できます。