LookML 專案是一系列的 LookML 檔案,可告知 Looker 如何連線至資料庫、如何查詢資料,以及如何控管使用者介面的行為。您可以透過 Looker 的「開發」部分或 UI 存取 LookML 專案檔案,詳情請參閱「存取 LookML 專案檔案」說明文件頁面。
專案檔案是由 Looker 開發人員使用 IDE 中的資料夾整理。
LookML 專案至少包含一個模型檔案和一個檢視檔案,也可能包含本頁面說明的其他檔案類型。所有專案檔案都有副檔名,但如果專案未啟用 IDE 中的資料夾,副檔名就會隱藏在 IDE 清單中。
如要進一步瞭解可在 LookML 專案中使用的各類檔案,請選取下列連結:
- 副檔名為
.model.lkml
的模型檔案 - 查看副檔名為
.view.lkml
的檔案 - 副檔名為
.dashboard.lookml
的資訊主頁檔案 - 副檔名為
.topojson
、.geojson
或.json
的資料檔案 - 副檔名為
.md
的文件檔案 - 專案資訊清單檔案,一律命名為
manifest.lkml
- 資訊清單鎖定檔案,副檔名為
.lkml
- 副檔名為
.strings.json
的語言代碼字串檔案 - 探索副檔名為
.explore.lkml
的檔案 - 副檔名為
.lkml
的資料測試檔案 - 副檔名為
.lkml
的精修檔案 - 其他檔案,副檔名不屬於先前列出的任何類型
建立 LookML 專案後,您可以使用 Looker IDE 存取專案檔案,並在專案中新增檔案和資料夾。
模型檔案
模型檔案會指定資料庫連線,以及使用該連線的一組「探索」。模型檔案也會定義探索本身,以及探索與其他檢視區塊的關係。「探索」是查詢資料的起點,以 SQL 來說,探索是查詢的 FROM
子句。使用者查看 Looker「探索」選單時,會看到您在模型中定義的探索。
換句話說,您可以在模型檔案中定義要使用的資料表 (做為納入的檢視區塊),以及這些資料表應如何合併 (如有必要)。
如需建立 LookML 專案檔案 (包括模型檔案) 的操作說明,請參閱「管理 LookML 檔案和資料夾」說明文件頁面。
結構和一般語法
在「探索」的大括號 { }
內,您可以定義「探索」的參數。您可以使用 join
參數,將其他檢視區塊加入模型檔案中的「探索」。
在下列範例中,範例模型檔案中的 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 參數,請參閱「模型參數」、「探索參數」和「聯結參數」說明文件頁面。
查看檔案
檢視檔案通常會在 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
檢視畫面中這些欄位的定義,會顯示「訂單」探索的欄位挑選器中的「建立日期」、「ID」、「狀態」、「使用者 ID」和「計數」欄位。
有權存取「訂單」探索的使用者,可以選取及篩選這些欄位,查詢「訂單」探索。
除了維度和指標,您也可以使用維度群組一次建立多個時間維度,或使用篩選器欄位指定使用者篩選器。如要進一步瞭解檢視檔案中的 LookML 參數,請參閱「檢視參數」說明文件頁面;如要瞭解用於在 LookML 中定義維度、測量值、維度群組和篩選器欄位的 LookML 參數,請參閱「欄位參數」說明文件頁面。
資訊主頁檔案
Looker 支援兩種資訊主頁:
- 使用者定義的資訊主頁:非開發人員使用者不必使用 LookML 即可建立。詳情請參閱「建立使用者定義的資訊主頁」說明文件頁面。
- LookML 資訊主頁:以受版本控管的檔案形式儲存,並與專案建立關聯。
如果專案包含 LookML 資訊主頁,這些資訊主頁會定義在 IDE 的專屬資訊主頁檔案中,副檔名為 .dashboard.lookml
。
如要進一步瞭解 LookML 資訊主頁,請參閱「建立 LookML 資訊主頁」說明文件頁面。
文件檔案
您可以使用 GitHub 風格的 Markdown,在 Looker 文件檔案中撰寫 Looker 資料模型的文件或其他附註。這有助於使用者瞭解貴機構如何使用 Looker。
如需建立 LookML 專案檔案 (包括文件檔案) 的操作說明,請參閱「管理 LookML 檔案和資料夾」說明文件頁面。
在 IDE 外部查看文件
如要查看 IDE 以外的文件 (您必須這麼做,才能使用本頁面說明的導覽功能),請從文件檔案的「查看檔案動作」選單中選擇「查看文件」選項:
您可以將結果頁面的網址發布給其他使用者,讓他們不必透過 Looker 的「開發」選單,就能直接存取文件。
在文件中加入導覽結構
您可以在文件檔案中新增側欄,讓使用者查看資訊結構,並在文件之間瀏覽。
如要為文件新增側欄導覽,請從文件第一行開始建立導覽區段。以三條破折號 (---
) 標記導覽部分的開頭和結尾。
您可以在導覽部分使用下列參數:
navigation
您可以在文件檔案中使用 navigation: true
,為該文件新增導覽側欄。舉例來說,您可以在 Markdown 檔案頂端新增下列程式碼:
---
navigation: true
---
這段程式碼會在文件中新增導覽側欄,內含專案所有文件的連結。如果文件中只包含 navigation: true
,該文件的側欄會依檔案名稱的字母順序,列出專案的所有文件。
此外,您可能會發現依檔案名稱字母順序整理並不理想,或者您可能有一些不想顯示在導覽中的文件:
在本例中,您可能希望依數字順序而非字母順序列出「文件一」、「文件二」、「文件三」和「文件四」,並從導覽側欄中隱藏「請勿顯示」文件。
如要變更導覽側欄中的文件順序,或只在側欄中顯示部分文件,可以使用下列格式:
---
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
---
即使參照的文件有自己的 title
參數,label
值也會定義文件在文件側欄導覽中的顯示方式。
在文件的側欄中,上述範例會顯示如下:
section
如要將導覽側欄分成多個部分,可以使用 section
參數,如下所示:
---
navigation:
- document_one
- document_two
- section: My Section Name
- document_three
- document_four
---
在本例中,section
參數會在側欄中新增分節符號和「我的區段名稱」文字標題。
文字標題本身並非連結,也不會參照任何文件檔案。
資料檔案
資料檔案是 JSON 檔案,副檔名為 .json
、.topojson
或 .geojson
。
map_layer
參數可讓您使用 JSON 檔案做為自訂地圖,然後在 Looker 中繪製資料。
接著,您可以使用 map_layer_name 參數搭配維度,將資料值 (例如「巴黎」) 與自訂地圖上的地理區域建立關聯。
您可以在 LookML IDE 中編輯 JSON 檔案,然後選取「儲存」。
如要進行偵錯,請選取檔案名稱旁的「查看檔案動作」選單,然後選擇「查看原始檔」,以原始格式查看檔案。如果您有適當的擴充功能,可在瀏覽器中查看 JSON,也可以選擇以「已剖析」格式查看檔案。
如需將 JSON 檔案上傳至 LookML 專案的操作說明,請參閱「管理 LookML 檔案和資料夾」說明文件頁面。
專案資訊清單檔案
專案可能包含專案資訊清單檔案,用於執行下列工作:
- 指定要匯入目前專案的其他專案
- 指定模型本地化設定
- 定義 LookML 常數
- 在專案中新增擴充功能
- 在專案中新增自訂視覺化效果
每個專案只能有一個資訊清單檔案,且必須命名為 manifest.lkml
,並位於專案目錄結構的根層級和 Git 存放區中。
如需建立 LookML 專案檔案 (包括專案資訊清單檔案) 的操作說明,請參閱「管理 LookML 檔案和資料夾」說明文件頁面。
資訊清單鎖定檔案
將遠端依附元件新增至專案資訊清單檔案時,系統會自動建立資訊清單鎖定檔案。Looker 會使用資訊清單鎖定檔,追蹤資訊清單檔案中指定的遠端專案版本。資訊清單鎖定檔案會列在 Looker IDE 的檔案瀏覽器面板中,檔案名稱為 manifest_lock.lkml
。
Looker 會自動管理鎖定檔案,因此 Looker 開發人員不需要建立或編輯資訊清單鎖定檔案。
詳情請參閱「從其他專案匯入檔案」說明文件頁面。
語言代碼字串檔案
如果您要將資料模型本地化,就必須為每個要本地化的語言代碼建立語言代碼字串檔案,包括預設語言代碼 (例如美國的英文)。
地區設定字串檔案會列出模型中要本地化的每個標籤和說明的鍵/值組合。每個語言代碼的字串檔案都應提供各標籤或說明的翻譯版本。如要進一步瞭解如何建立語言代碼字串檔案,請參閱「將 LookML 模型本地化」說明文件頁面。
如需建立 LookML 專案檔案 (包括語言代碼字串檔案) 的操作說明,請參閱「管理 LookML 檔案和資料夾」說明文件頁面。
探索檔案
探索是使用者可以查詢的檢視區塊。「探索」是查詢的起點,以 SQL 來說,就是 SQL 陳述式中的 FROM
。如要瞭解使用者如何與探索資料互動來查詢資料,請參閱「在 Looker 中查看及使用探索資料」說明文件頁面。
通常會在模型檔案中定義探索。不過,有時您需要衍生資料表的獨立探索檔案,或是擴充或調整跨模型的探索。
如需建立 LookML 專案檔案 (包括「探索」檔案) 的操作說明,請參閱「管理 LookML 檔案和資料夾」說明文件頁面。
資料測試檔案
專案可能含有用於驗證 LookML 模型邏輯的資料測試檔案。資料測試可以放在模型檔案或檢視檔案中,但如果開發人員想在多個不同模型中使用相同的資料測試,建議將資料測試放在專屬檔案中。
如需建立 LookML 專案檔案 (包括資料測試檔案) 的操作說明,請參閱「管理 LookML 檔案和資料夾」說明文件頁面。
分類標籤檔案
專案可能含有用於 LookML 修飾的檔案。透過 LookML 修飾,您可以調整現有的檢視區塊或探索,不必編輯包含這些項目的 LookML 檔案。LookML 修飾內容可包含在模型、檢視區塊或「探索」檔案中,也可以包含在專屬檔案中。
如需建立 LookML 專案檔案 (包括精細化檔案) 的操作說明,請參閱「管理 LookML 檔案和資料夾」說明文件頁面。
其他檔案
專案中的許多 LookML 元素可以放在不同檔案中,也可以放在專屬檔案中。舉例來說,資料測試可放在模型檔案、檢視檔案或專屬的 .lkml
檔案中。