Customer Journey Analytics BI 擴充功能
Customer Journey Analytics BI extension 讓 SQL 可以存取您在 Customer Journey Analytics 中定義的資料檢視。您的資料工程師和分析人員可能更熟悉Power BI、Tableau案頭或其他商業智慧和視覺化工具(進一步稱為BI工具)。 他們現在可以根據 Customer Journey Analytics 使用者在建立 Analysis Workspace 專案時所使用的相同資料檢視來建立報告和儀表板。
Adobe Experience Platform Query Service 是 SQL 與 Experience Platform 資料湖中可用資料之間的介面。啟用 Customer Journey Analytics BI extension 之後即可延伸 Query Service 的功能,讓您在 Query Service 工作階段中以表格或視圖形式查看 Customer Journey Analytics 資料檢視。因此,使用 Query Service 作為 PostgresSQL 介面的企業情報工具,可以直接立即受益於這項延伸功能。
主要優點包括:
- 無需在 BI 工具之內重新建立 Customer Journey Analytics 資料檢視的同等呈現形式。
有關資料檢視功能的更多資訊,請參閱「資料檢視」以了解必須重新建立的內容。 - BI 工具和 Customer Journey Analytics 之間的報告和分析維持更高的一致性。
- 結合 Customer Journey Analytics 資料與 BI 工具中已有的其他資料來源。
先決條件
若要使用此功能,您可以使用即將到期或未到期的認證來將BI工具連線至Customer Journey Analytics BI extension。 認證指南提供設定到期認證或不到期認證的詳細資訊。
以下是設定CJA許可權的其他步驟
到期的認證
若要使用即將到期的認證,您可以:
- 授予Experience Platform和Customer Journey Analytics的存取權。
- 授與產品管理員對Customer Journey Analytics的存取權,以便您可以檢視、編輯、更新或刪除連線和資料檢視。
或者,您可以:
- 授予您要存取之資料檢視的存取權。
- 授予Customer Journey AnalyticsBI擴充功能的存取權。
不會到期的認證
若要使用不會到期的認證:
- 在Experience Platform中建立不會到期的認證。
- 依照到期認證中提及的步驟來授與未到期認證的存取權。
如需詳細資訊,請參閱客戶歷程存取控制,特別是產品管理員額外許可權和Admin ConsoleCustomer Journey Analytics許可權。
使用情況
要使用 Customer Journey Analytics BI extension 功能,您可以直接使用 SQL 或使用特定的 BI 工具所提供的拖放體驗。
SQL
您可以使用查詢編輯器或標準 PostgresSQL 命令列介面 (CLI) 用戶端,直接在 SQL 陳述式中使用該功能。
在 Adobe Experience Platform 中:
-
在左側邊欄選取「查詢」(從「資料管理」)。
-
選取「 建立查詢」。
-
選取「
cja
資料庫」。 -
若要執行查詢,請鍵入 SQL 陳述式並選取「 」按鈕 (或按
[SHIFT]
+[ENTER]
)。
-
在 Adobe Experience Platform 中,查尋並複製您的 PostgresSQL 認證:
-
從左側邊欄選取「查詢」(在「資料管理」之下)。
-
從頂端列選取「認證」。
-
選取「
cja
資料庫」。 -
要複製命令字串,請使用「 」(在「 PSQL 指令」區段)。
-
-
開啟命令或終端機視窗。
-
若要登入並開始執行查詢,請將命令字串貼到您的終端。
如需詳細資訊,請參閱查詢編輯器UI指南。
BI 工具
目前僅支援Customer Journey Analytics BI extension並針對Power BI和Tableau案頭進行測試。 其他使用 PSQL 介面的 BI 工具可能也可以運作,但尚未得到正式支援。
-
在 Adobe Experience Platform 中,查詢 PostgresSQL 認證的詳細資訊:
-
從左側邊欄選取「查詢」(在「資料管理」之下)。
-
從頂端列選取「認證」。
-
選取「
cja
資料庫」。 -
在 Power BI 中需要時,使用「 」複製每個 Postgres 認證參數 (主機、連接埠、資料庫、使用者名稱與其他)。
-
-
在 Power BI 中:
-
在主視窗中,從頂端列選取「取得資料」。
-
在左側邊欄中選取「更多…」。
-
在「取得資料」畫面中,搜尋
PostgresSQL
,並從清單中選取「 PostgresSQL 資料庫」。 -
在「 PostgressSQL 資料庫」對話方塊中:
-
從 伺服器 文字欄位的Experience Platform查詢認證貼上 主機 引數。
-
從 資料庫 文字欄位的Experience Platform查詢認證貼上 資料庫 引數。
將
?FLATTEN
新增到「資料庫」參數,以便讀起來像prod:cja?FLATTEN
。請參閱「將巢狀資料結構展平以供協力廠商 BI 工具使用」以了解更多資訊。 -
當提示「資料連線」模式時,選取 DirectQuery。
-
系統會提示您輸入「使用者名稱」和「密碼」。使用 Experience Platform 查詢認證的同等參數。
-
-
成功登入後,Customer Journey Analytics資料檢視表會顯示在Power BIs 瀏覽器 中。
-
選取您要使用的資料檢視表格並選取「載入」。
與一個或多個所選表格關聯的所有維度和指標顯示在右窗格,您隨時可以用於視覺化。
請參閱「將 Power BI 連接到 Query Service」以了解更多資訊。
-
-
在 Adobe Experience Platform 中,查詢 PostgresSQL 認證的詳細資訊:
-
從左側邊欄選取「查詢」(在「資料管理」之下)。
-
從頂端列選取「認證」。
-
選取「
cja
資料庫」。 -
在Tableau Desktop中視需要使用 來複製每個Postgres認證引數(主機、連線埠、資料庫、使用者名稱及其他)。
-
-
在Tableau案頭中:
-
在左側邊欄,選取「更多」(從「至伺服器」)。
-
從清單中選取「 PostgresSQL 」。
-
在「PostgresSQL」對話方塊中:
-
將Experience Platform查詢認證中的 主機 引數貼到 伺服器 文字欄位中。
-
將Experience Platform查詢認證中的 連線埠 引數貼到 連線埠 文字欄位中。
-
將Experience Platform查詢認證中的 資料庫 引數貼到 資料庫 文字欄位中。
將
%3FFLATTEN
新增到「資料庫」參數,以便讀起來像prod:cja%3FFLATTEN
。請參閱「將巢狀資料結構展平以供協力廠商 BI 工具使用」以了解更多資訊。 -
選取「使用者名稱和密碼」(從「驗證」清單)。
-
將「使用者名稱」參數 (取自 Experience Platform 查詢認證) 貼上到「使用者名稱」文字欄位。
-
將Experience Platform查詢認證中的 密碼 引數貼到 密碼 文字欄位中。
-
選取 登入。
-
-
Customer Journey Analytics 資料檢視顯示為「表格」清單中的表格。
-
將想要使用的表格拖曳到畫布上。
現在您可以使用資料檢視表格中的資料建立報告和視覺化。
請參閱「將 Tableau 連線到 Query Service」以了解更多資訊。
-
如需關於各種可用工具的概觀與更多資訊,請參閱「將用戶端連接到 Query Service」。
請參閱使用案例,瞭解如何使用Customer Journey AnalyticsBI擴充功能完成許多使用案例
功能
依預設設定,您的資料檢視具有根據其易記名稱產生的表格適用名稱。例如,名為我的Web資料檢視的資料檢視具有檢視名稱my_web_data_view
。 您可以為資料檢視定義在BI工具中使用的偏好名稱。 如需詳細資訊,請參閱資料檢視設定。
如果想要使用資料檢視 ID 作為表格名稱,可以在連線時於資料庫名稱新增選用的 CJA_USE_IDS
設定。例如,prod:cja?CJA_USE_IDS
使用如「dv_ABC123
」這樣的名稱來顯示您的資料檢視。
資料控管
Customer Journey Analytics 中的任何資料控管相關設定,都是繼承自 Adobe Experience Platform。Customer Journey Analytics 和 Adobe Experience Platform Data Governance 整合後,便可以標記敏感的 Customer Journey Analytics 資料以及執行隱私權原則。
在 Experience Platform 使用的資料集上所建立的隱私權標籤和原則,可以出現在 Customer Journey Analytics 資料檢視工作流程中。因此,使用 Customer Journey Analytics BI extension 查詢的資料,若發生不符合所定義的隱私權標籤和原則的情況,便會顯示適當的警告或錯誤。
清單資料檢視
在標準 PostgreSQL CLI 中,可以使用 \dv
列出您的檢視
prod:all=> \dv
List of relations
Schema | Name | Type | Owner
--------+--------------------------------------------+------+----------
public | my_web_data_view | view | postgres
public | my_mobile_data_view | view | postgres
巢狀與展平
依預設,資料檢視的綱要使用巢狀結構,就像原始的 XDM 綱要一樣。該整合也支援 FLATTEN
選項。您可以使用此選項強制展平資料檢視 (以及工作階段中的任何其他表格) 的綱要。展平能讓不支援結構化綱要的 BI 工具變得更容易使用。請參閱「在 Query Service 中使用巢狀資料結構」以了解更多資訊。
預設值和限制
使用BI擴充功能時,適用下列其他預設值和限制:
-
BI擴充功能需要查詢結果的列數限制。 預設值為50,但您可以使用
LIMIT n
在SQL中覆寫此值,其中n
為1 - 50000。 -
BI擴充功能需要日期範圍,以限制用於計算的列。 預設為過去30天,但您可以使用特殊的
timestamp
或daterange
資料行覆寫SQLWHERE
子句中的預設值。 -
BI擴充功能需要彙總查詢。 您不能使用
SELECT * FROM ...
之類的SQL來取得原始的基礎資料列。 整體而言,您的彙總查詢應使用:-
使用
SUM
和/或COUNT
選取總計。
例如,SELECT SUM(metric1), COUNT(*) FROM ...
-
選取依維度劃分的量度。
例如,SELECT dimension1, SUM(metric1), COUNT(*) FROM ... GROUP BY dimension1
-
選取不同的量度值。
例如,SELECT DISTINCT dimension1 FROM ...
檢視更多詳細資料支援的SQL。
-
支援 SQL
有關支援哪些 SQL 類型的完整參考,請參閱「Query Service SQL 參考」。
請參閱下表,以取得您可以使用的SQL範例。
table 0-row-2 1-row-2 2-row-2 3-row-2 4-row-2 5-row-2 6-row-2 7-row-2 8-row-2 9-row-2 10-row-2 layout-auto | |
---|---|
模式 | 範例 |
結構探索 |
|
排名或劃分 |
|
HAVING 子句 |
|
不重複,頂端 維度值 |
|
量度總計 |
|
多維度 分解 和頂端不重複 |
|
子選擇: 篩選其他 結果 |
|
子選擇: 查詢橫跨 多個資料檢視 |
|
子選擇: 分層來源、 篩選 和彙總 |
使用子選擇分層:
使用 CTE WITH 的分層:
|
選取 量度先於 或混合於 維度者 |
|
維度
您可以選取依預設可用或在資料檢視中定義的任何維度。您可以使用維度 ID 來選取維度。
量度
可供選取的量度有:
- 依預設可用的任何量度;
- 在資料檢視中已定義;
- 相容於使用者有權存取之資料檢視的計算量度。
您可以把量度 ID 包含在 SUM(metric)
運算式中來選取量度,就像處理其他 SQL 來源一樣。
您可以使用:
計算不重複值
由於 Customer Journey Analytics 運作原理的根本性質,可以獲得精確不重複計數的唯一維度是 adobe_personid
維度。下列SQL陳述式SELECT COUNT(DISTINCT adobe_personid)
或SELECT APPROX_COUNT_DISTINCT(adobe_personid)
傳回預設人員量度的值,這是不同人員的計數。 對於其他維度,傳回近似的不重複計數。
條件式量度
您可以嵌入一個 IF
或者 CASE
子句在 SUM
或 COUNT
函數中,以便新增所選量度特定的其他篩選條件。新增這些子句類似於將篩選器套用至工作區報告表格中的量度欄。
範例:
SUM(IF(dim1 = 'X' AND dim2 = 'A', metric1, 0)) AS m1
SUM(CASE WHEN dim1 = 'X' AND dim2 = 'A' THEN metric1 END) AS m1
內聯計算
您可以在SELECT
中套用其他數學至量度運算式。 您可以使用此數學,而不用定義計算量度中的數學。 下表列出所支援的運算式類型。
+
、-
、*
、/
和 %
-X
或 +X
PI()
POSITIVE
、NEGATIVE
、ABS
、FLOOR
、CEIL
、CEILING
、EXP
、LN
、LOG10
、LOG1P
、SQRT
、CBRT
、DEGREES
、RADIANS
、SIN
、COS
、TAN
、ACOS
、 ASIN
、ATAN
、COSH
、SINH
與 TANH
MOD
, POW
, POWER
, ROUND
, LOG
特殊欄
時間戳記
timestamp
特殊欄用於提供查詢的日期範圍。日期範圍可用 BETWEEN
運算式或一對 timestamp
>
、>=
、<
、<=
檢查項用 AND
連結在一起。timestamp
是選用的,如果未提供完整範圍,則使用預設值:
- 如果僅提供最小值 (
timestamp > X
或者timestamp >= X
),範圍是從 X 到現在。 - 如果僅提供最大值 (
timestamp < X
或者timestamp <= X
),範圍為 X 減 30 天至 X。 - 如果未提供任何內容,則範圍是從現在減 30 天至現在。
時間戳記範圍將轉換為 RankedRequest 的日期範圍全域篩選條件。
時間戳記欄位也可以用於「日期時間」函數以剖析或截斷事件時間戳記。
日期範圍
daterange
特殊資料行的運作方式與timestamp
類似;不過篩選限製為完整天。 daterange
也是選用的,而且具有和 timestamp
相同的預設範圍。daterange
欄位也可以用於「日期時間」函數以剖析或截斷事件日期。
daterangeName
特殊欄可用來使用命名的日期範圍 (例如 Last Quarter
) 來篩選查詢。
daterange
個量度(小時、30分鐘、5分鐘等)。篩選器 ID
filterId
特殊欄是選用的,且用於將外部定義的篩選條件套用至查詢。將外部定義的篩選器套用至查詢,類似於將篩選條件拖曳到工作區的面板上。AND
可以使用多個篩選器ID。
有 filterId
時,您可以使用 filterName
來使用篩選器名稱而非 ID。
WHERE 子句
WHERE
子句的處理分為三個步驟:
-
從
timestamp
、daterange
或daterangeName
特殊欄位尋找日期範圍。 -
尋找任何外部定義的
filterId
或filterName
以納入篩選條件。 -
將其餘的運算式轉變為臨時篩選條件。
透過剖析第一層的AND
(在 WHERE
子句中) 來完成處理。每個用 AND
-ed 方式連結的頂層運算式必須與上方其中一個相符。任何比第一層的 AND
更深的東西,或者,如果 WHERE
子句在頂層使用 OR
,則作為臨時篩選條件處理。
排序順序
依預設,查詢會依照第一個選取的量度以遞減順序對結果進行排序。您可以透過指定 ORDER BY ... ASC
或 ORDER BY ... DESC
覆寫預設的排列順序。如果您使用 ORDER BY
,則必須在第一個選定的量度上指定 ORDER BY
。
您也可以在量度前面使用 -
(減號),來反轉順序。下面的兩個陳述式都會產生相同的順序:
ORDER BY metric1 ASC
ORDER BY -metric1 DESC
一般函數支援
WHERE `timestamp` >= TIMESTAMP('2022-01-01 00:00:00') AND `timestamp` < TIMESTAMP('2022-01-02 00:00:00')
WHERE
子句使用。WHERE `timestamp` >= TO_TIMESTAMP('01/01/2022', 'MM/dd/yyyy') AND `timestamp` < TO_TIMESTAMP('01/02/2022', 'MM/dd/yyyy')
WHERE
子句使用,可選擇提供該時間字串的格式。WHERE `timestamp` >= DATE('2022-01-01') AND `timestamp` < DATE('2022-01-02')
WHERE
子句使用。WHERE `timestamp` >= TO_DATE('01/01/2022', 'MM/dd/yyyy') AND `timestamp` < TO_DATE('01/02/2022', 'MM/dd/yyyy')
WHERE
子句使用,可選擇提供該日期字串的格式。維度函數支援
這些函數可以用於 SELECT
、WHERE
子句中的維度,或條件式量度。
字串函數
日期時間函數
SELECT EXTRACT(MONTH FROM `timestamp`)
支援的部份有:
- 關鍵字:
YEAR
、MONTH
、DAYOFMONTH
、DAYOFWEEK
、DAYOFYEAR
、WEEK
、QUARTER
、HOUR
、MINUTE
。- 字串:
'YEAR'
、'Y'
、'MONTH'
、'M'
、'DAYOFMONTH'
、'DAY'
、'D'
、'DAYOFWEEK'
、'DOW'
、'DAYOFYEAR'
、'DOY'
、'WEEK'
、'WOY
、'W'
、'QUARTER'
、'QOY'
、'Q'
、'HOUR'
或 'MINUTE'
。SELECT DATE_PART('month', `timestamp`)
支援的字串部分有:
'YEAR'
、'Y'
、'MONTH'
、'M'
、'DAYOFMONTH'
、'DAY'
、'D'
、'DAYOFWEEK'
、'DOW'
、'DAYOFYEAR'
、'DOY'
、'WEEK'
、'WOY
、'W'
、'QUARTER'
、'QOY'
、'Q'
、'HOUR'
或 'MINUTE'
。SELECT DATE_TRUNC('quarter', `timestamp`)
支援的字串詳細程度有:
'YEAR'
、'Y'
、'MONTH'
、'M'
、'DAYOFMONTH'
、'DAY'
、'D'
、'DAYOFWEEK'
、'DOW'
、'DAYOFYEAR'
、'DOY'
、'WEEK'
、'WOY
、'W'
、'QUARTER'
、'QOY'
、'Q'
、'HOUR'
或 'MINUTE'
。部分支援
部分SQL功能僅部分支援BI擴充功能,不會傳回您在其他資料庫中看到的相同結果。 此特定功能用於各種BI工具產生的SQL中,而BI擴充功能沒有完全相符專案。 因此,BI擴充功能著重於有限實施,這涵蓋了最低BI工具使用量,而不會擲回錯誤。 如需詳細資訊,請參閱下表。
MIN(daterange)
或MAX(daterange)
timestamp
、daterange
或任何daterangeX
(如daterangeday
)上的MIN()
將在2年前傳回。timestamp
、daterange
上的MAX()
或任何daterangeX
(如daterangeday
)將傳回目前的日期/時間。任何其他維度、量度或運算式上的MIN()
或MAX()
將傳回0。