本文說明如何使用 AI/BI 儀錶板中的數據集編輯器來建立和管理儀錶板數據集。
定義數據集
若要定義或存取現有的數據集,請按下儀錶板左上角附近的 [數據] 索引標籤。 如需每個儀表板可包含的資料集數目的相關資訊,請參閱 儀表板限制。
備註
儀錶板查詢是唯讀的。 像DESCRIBE、EXPLAIN、CREATE TABLE、INSERT或DELETE這類命令不支援用於定義數據集。 只有可以包裝在其他 SQL 中的查詢才有效。
若要定義資料集:
按兩下儀錶板左上角的 [ 資料] 索引標籤。
選擇下列其中一個選項:
- 從 SQL 建立: 使用此選項,在任何數據源上撰寫新的 SQL 查詢。
-
新增數據源: 使用此選項來選擇以資料集為基礎之 Unity 目錄資料表或檢視表。 對於大部分的數據表和檢視,數據集是由預設
SELECT *查詢所定義,您可以修改以精簡數據集。 修改查詢以移除或轉換儀錶板數據集中的可用欄位。 當您選擇計量檢視 (公開預覽) 作為數據源時,數據集會顯示計量檢視中所定義的結果數據表和架構。 請參閱 使用度量檢視 和 匯出為度量檢視。 -
上傳檔案: 使用此選項將新的資產上傳至 Unity 目錄。 使用 [檔案上傳] 對話框來選取 [目錄]、[ 架構] 和 [數據表名稱]。 您可以設定特定的 SQL 倉儲來處理與此上傳相關聯的計算。 您也可以選擇 [ 建立新的數據表 ] 或 [覆寫現有的數據表]。 您必須擁有
MANAGE所選架構的許可權,才能覆寫現有的數據表。
從 SQL 建立數據集
您可以定義從任何可用資料來源提取的數據集。 在查詢中,利用查詢內的完整表名稱,或在下拉式選取器中選擇目錄和結構架構的組合,並包括查詢中的表名稱來識別數據源。 查詢中的全限定資料表名稱會覆蓋編輯器中的目錄和結構選擇器。 如果數據表或數據行名稱包含空格,請將這些標識碼包裝在 SQL 查詢中的反引號中。
使用 SQL 限制資料集結果
儀表板的觀察者可以查看資料集中的全部資料,即使未顯示於圖表中。 若要防止敏感數據在瀏覽器中公開,請限制定義數據集的 SQL 查詢中的數據行。 例如,不要從數據表中選取所有數據行,而是只包含視覺效果所需的特定字段。
Databricks 建議您:
- 避免
SELECT *。 相反地,請僅明確選取必要的資料行。 - 使用
WHERE子句或其他查詢邏輯來確保僅包含所需的行。 - 請注意在建構查詢時,參數如何擴充資料集存取。
- 檢閱 結果表 中的結構描述,以確認只有預期的欄位可用。
使用計量檢視
您可以在儀錶板中使用計量檢視,方法是選取計量檢視做為數據源,或在 SQL 查詢中參考它。
選取計量檢視作為數據源: 當您直接選擇計量檢視時,數據集會包含所有已定義的維度和量值。 您無法修改資料集查詢來排除資料行或套用篩選。 您可以新增自定義計算,以建立視覺效果的其他量值或維度。 請參閱 什麼是自定義計算?。
參考查詢中的計量檢視: 您可以像任何其他檢視一樣,參考 SQL 查詢中的計量檢視。 如果您想要篩選或重新調整數據集,請使用此方法。 所有計量檢視量值都必須使用
MEASURE聚合函數來存取。 請參閱measure聚合函數。
若要在編寫儀表板時建立新的指標檢視,請參閱 匯出為指標檢視。
管理數據集
定義數據集之後,請使用 數據集名稱右邊的kebab功能表可存取下列選項:
重新命名: 提供數據集描述性名稱,以便您和小組快速識別您想要編輯或檢閱的查詢。
建議名稱: 根據查詢自動產生建議的名稱。 您可以在產生此名稱之後加以編輯。
複製: 在原位置建立查詢的副本。 您可以在複製後編輯查詢。
刪除: 刪除資料集。 如果在畫布上使用數據集,則無法使用此選項。
下載: 您可以將數據集下載為 CSV、TSV 或 Excel 檔案。
備註
畫布上目前使用的數據集會以藍色圖示以粗體文字顯示,而未使用的數據集則具有灰色圖示和非粗體名稱。
檢視結果數據表
當您建立數據集時,查詢會自動執行,而結果會顯示為編輯器下方窗格中的數據表。 每個數據列都包含一個圖示,指出其數據類型。
若要排序資料列值:
- 將滑鼠停留在每個數據行上以顯示
排序圖示。 - 按兩下圖示,以遞增或遞減順序排序值。
檢視查詢結果架構
若要檢視已定義資料集的架構,請按兩下 結果資料表右邊 架構。 [架構] 標籤頁列出已定義數據集中的所有欄位。 每個欄位都會標示為表示數據行數據類型的圖示。 如果基礎表或檢視表包含批註,它們會出現在 架構 索引標籤中。
從資料集產生檢視
您可以從資料集產生具體化檢視和指標檢視,以維持整個工作區的一致性。
將資料集匯出為具體化檢視
您可以將任何資料集匯出為具體化檢視。 物化視圖會快取查詢結果,並按照指定的排程進行刷新,這樣可以減少重複存取相同資料時的查詢執行時間。 請參閱 具體化檢視。
若要將資料集匯出為具體化檢視:
- 按一下 kebab 功能表
位於您要匯出之資料集的右側。
- 選取 [匯出至具體化檢視]。
- 在「 匯出至具體化檢視 」面板中,使用目錄和結構描述下拉式選取器來選擇具體化檢視的儲存位置。 這會影響誰可以存取和使用具體化檢視。 請參閱 Unity Catalog 使用權限與可保護物件。
- (選用)輸入具體化檢視的名稱。 根據預設,資料集標題會轉換為有效的具體化檢視名稱。
- (選用)設定重新整理排程和其他具體化檢視設定。
- 點擊 建立。
具現化檢視會在指定的 Unity Catalog 位置中建立,並可以供工作區中的其他儀錶板和查詢使用。
備註
依預設,當您建立具體化檢視時,它會被新增至儀表板。 若要建立未新增至儀表板的具體化檢視,請在匯出至具體化檢視面板底部,關閉將具體化檢視新增至儀表板的選項。
匯出為度量檢視
這很重要
這項功能目前處於 公開預覽版。
計量檢視會將複雜的商業規則抽象化為集中式定義,讓組織定義一次關鍵效能指標,並在各種報告介面上一致地使用這些指標。 請參閱 Unity 目錄計量檢視。 您可以將資料集匯出為度量視圖,或使用 Assistant 協助建立度量視圖。 如果已為現有數據集定義量值和維度,它們會自動出現在產生的計量檢視定義中。
將資料集匯出為度量檢視視圖
若要將資料集匯出為度量檢視:
- 按一下 kebab 功能表
,位於您想要匯出為分析視圖的資料集右側。
- 在 [ 建立計量檢視 ] 面板中,使用目錄和架構下拉式選取器來選擇儲存計量檢視的架構和目錄。 這會影響誰可以存取和使用計量檢視。 請參閱 Unity Catalog 使用權限與可保護物件。
- (選擇性)輸入計量檢視的名稱。 根據預設,數據集標題會根據命名需求轉換成有效的計量檢視名稱。
- (選擇性)藉由調整 YAML 定義 區段中產生的內容來編輯計量檢視。
- 點選 [儲存]。
備註
根據預設,當您建立儀表板時,計量檢視會自動新增至該儀表板。 若要建立不會新增至儀錶板的度量檢視,請關閉 [建立度量檢視] 面板底部附近的 [將度量檢視新增至儀錶板]。
使用 Databricks Assistant 建立計量檢視
使用 Databricks Assistant 從資料集建立計量檢視:
- 按一下資料集編輯器左側提要欄中的
圖示。 然後按兩下 [ 匯出至計量檢視]。
在資料集編輯器中,「Assistant」圖示已被高亮顯示。
- 輸入您想要建立之計量檢視的描述。
- 小幫手會傳回範例計量檢視定義,並簡短說明其中定義的維度和量值。
- 按兩下 [開啟計量檢視編輯器 ] 來編輯並儲存計量檢視。
如需建立 計量檢視 的詳細資訊,請參閱建立計量檢視。
自訂計算
自定義計算提供將計算套用至現有數據集的方法,而不需修改建立數據集的 SQL。 若要深入瞭解如何建立和使用自訂計算,請參閱什麼是 自訂計算?。
撰寫多條語句查詢
有時候,您可能想要使用多個 SQL 語句來建構數據集。 若要執行多個語句,請使用分號結束每個語句(;)。 當您執行這些命令來建立資料集時,輸出會顯示編輯器中最後一個語句的結果。 此數據集用於畫布上的任何相關視覺效果。
語句僅限於它們所屬的數據集。 例如,如果您使用 USE 語句建立數據集來設定目錄或架構,該設定只會套用至該數據集。
範例
下列範例示範多語句查詢的常見用法。
設定目錄和架構
您可以撰寫 USE 語句來宣告查詢中數據表的目錄和架構。 下列查詢包含三個語句。 第一個會設定目錄名稱。 第二個設定了架構。
SELECT 語句只會參考數據表名稱,因為已設定目錄和架構。 請參閱 USE CATALOG。
USE CATALOG samples;
USE SCHEMA tpch;
SELECT * FROM customer;
設定 ANSI 模式
您可以設定要執行的查詢,並將 ANSI_MODE 設定為 TRUE 或 FALSE。 針對 Databricks SQL,ANSI_MODE 的系統預設值為 TRUE。 請參閱 ANSI_MODE。
下列查詢會將 ANSI_MODE 設定為 FALSE,讓無效的數據類型輸入傳回 NULL,而不是擲回錯誤。
SET ANSI_MODE = FALSE;
SELECT cast('a' AS INTEGER);
參數化複雜查詢
您可以使用多個語句來參數化通用數據表運算式或其他複雜查詢的檢視名稱。
下列查詢會建立兩個暫存檢視。
SELECT 語句會使用 IDENTIFIER 子句,將輸入字串解譯為數據表名稱。 請參閱 IDENTIFIER 第條款。
CREATE TEMPORARY VIEW v1 AS SELECT 1;
CREATE TEMPORARY VIEW v2 AS SELECT 2;
SELECT * FROM IDENTIFIER(:view_name)
設定變數
下列查詢會在第一個語句中宣告變數和值。 第二個語句會變更變數的值。 第三個語句會顯示變數的結束值為 5。 如需使用暫存變數的詳細數據和完整語法,請參閱 SET 變數。
DECLARE VARIABLE myvar1 INT DEFAULT 7;
SET VAR myvar1 = 5;
VALUES (myvar1);