Adobe Experience Platform Query Service支援 FLATTEN
透過協力廠商BI工具連線至資料庫時進行設定。 此功能會拼合協力廠商BI工具中的巢狀資料結構,以改善其可用性,並減少擷取、分析、轉換和報表資料所需的工作量。
許多BI工具,例如 Tableau 和 Power BI 本機不支援巢狀資料結構。 此 FLATTEN
設定可消除在資料上建立SQL視圖以提供平面版本或使用查詢服務的需要 CTAS
或 INSERT INTO
使用臨機結構時,將資料集複製到一般版本的工作。
此 FLATTEN
設定會將每個葉欄位的結構提取至表格的根中,並將欄位命名為原始命名空間之後的欄位。 這可讓您使用點記號來比對欄位與其體驗資料模型(XDM)路徑,同時保留欄位的內容。
使用 FLATTEN
若要設定,您必須妥善了解下列Adobe Experience Platform元件:
XDM系統:XDM及其實作的概觀Experience Platform。
沙箱:Experience Platform提供可將單一Platform執行個體分割成個別虛擬環境的虛擬沙箱,以協助開發及改進數位體驗應用程式。
巢狀資料結構:本檔案提供如何建立、處理或轉換資料集的範例,其中包含複雜的資料類型,包括巢狀資料結構。
此 FLATTEN
設定會將巢狀資料結構拼合成單獨的列,其中屬性名稱將成為保存行值的列名。 在不支援巢狀資料結構的BI工具中處理資料時,此設定可改善隨選結構的可用性,並減少必要的工作量。
與您選擇的第三方用戶端連線至Query Service時,請附加 FLATTEN
設定為資料庫名稱。 如需連線特定BI工具的相關資訊,請參閱 將客戶端連接到查詢服務概述. 連線字串應包含:
all
或特定資料集ID、檢視ID或資料庫名稱。FLATTEN
關鍵字。輸入應採用下列格式:
{sandbox_name}:{all/ID/database_name}?FLATTEN
連線字串的範例如下所示:
prod:all?FLATTEN
本指南中使用的範例結構採用標準欄位群組 商務詳細資訊,會利用 commerce
物件結構和 productListItems
陣列。 請參閱XDM檔案,以了解 有關 商務詳細資訊 欄位群組. 架構結構的表示可在下圖中看到。
如果BI工具不支援巢狀資料結構,如果巢狀欄位包含序列化值(例如 commerce
和 productListItems
在範例結構中)。 這些值可能會顯示為單一編碼的一部分 commerce
字串欄位且實際上無法使用。
下列值代表 commerce.order.priceTotal
(3018.0), commerce.order.purchaseID
(c9b5aff9-25de-450b-98f4-4484a2170180),以及 commerce.purchases.value
(1.0)。
("(3018.0,c9b5aff9-25de-450b-98f4-4484a2170180)","(1.0)")
使用 FLATTEN
設定後,您可以使用點記號及其原始路徑名來存取架構內或巢狀資料結構的整個區段中的個別欄位。 此格式的範例,使用 commerce
欄位群組如下。
commerce.order.priceTotal
commerce.order.purchaseID
commerce.purchases.value
此 FLATTEN
設定在處理其他資料結構時有某些限制。 如需完整詳細資料,請參閱 限制部分.
平面化的根欄位現在使用點記號來比對其XDM路徑。 在查詢中使用時,欄位需要用引號(" ")括住。
下面的SQL示例顯示嵌套查詢的原始狀態:
SELECT YEAR(timestamp) AS year,
SUM(commerce.order.priceTotal) AS revenue
FROM purchase_events_dataset
WHERE commerce.purchases.value > 0
GROUP BY 1;
使用平面化資料欄位時,查詢會使用點記號撰寫,並以引號括住,如下所示:
SELECT YEAR(timestamp) AS year,
SUM("commerce.order.priceTotal") AS revenue
FROM purchase_events_dataset
WHERE "commerce.purchases.value" > 0
GROUP BY 1;
此 FLATTEN
設定目前不會平面化下列資料結構:
資料結構 | 限制 |
---|---|
陣列 | 使用顯式陣列索引或 EXPLODE 函式來存取陣列。 |
地圖 | 使用字串鍵存取地圖下的值以存取地圖。 |
要解決映射和陣列限制,您需要使用BI工具原始SQL編輯,如Power BI中的高級選項 — > SQL陳述式。
要解決映射和陣列限制,需要BI工具(如原始SQL編輯)。 請參閱如何 使用Power BI高級選項輸入自定義SQL查詢 在SQL陳述式部分。
本檔案說明如何平面化巢狀資料結構,以便與協力廠商BI工具搭配使用。 如果尚未連接客戶端,請參閱 客戶端連接概述 以取得支援的協力廠商用戶端清單。