Teradata 移轉的視覺效果和報告
本文章是七部分系列的第四部分,提供如何從 Teradata 移轉至 Azure Synapse Analytics 的指引。 本文重點為視覺效果和報表的最佳做法。
使用 Microsoft 和第三方 BI 工具存取 Azure Synapse Analytics
組織會使用一系列的商業智慧 (BI) 工具和應用程式來存取資料倉儲和資料超市。 BI 產品的部分範例如下:
Microsoft BI 工具,例如 Power BI。
Office 應用程式,例如 Microsoft Excel 試算表。
來自不同廠商的協力廠商 BI 工具。
具有內嵌 BI 工具功能的自訂分析應用程式。
在 BI 平台上執行查詢和報表,進而查詢資料倉儲或資料超市中的資料,以支援隨選 BI 的操作應用程式。
互動式資料科學開發工具,例如 Azure Synapse Spark Notebook、Azure Machine Learning、RStudio 和 Jupyter Notebook。
若您在移轉資料倉儲時移轉視覺效果和報表,則 BI 產品所產生的所有現有查詢、報表和儀表板都必須在新環境中執行。 您的 BI 產品必須在 Azure Synapse 上產生與在舊版資料倉儲環境時相同的結果。
若要在移轉後產生一致的結果,所有 BI 工具和應用程式相依性都必須在您將資料倉儲結構描述和資料移轉至 Azure Synapse 之後如常運作。 相依性包含較不可見的層面,例如存取和安全性。 當您處理存取權和安全性時,請確定您會移轉下列項目:
移轉驗證,讓使用者可以在 Azure Synapse 上登入資料倉儲和資料超市資料庫。
將所有使用者移轉至 Azure Synapse。
將所有使用者群組移轉至 Azure Synapse。
將所有角色移轉至 Azure Synapse。
將所有管理存取控制的授權權限移轉至 Azure Synapse。
移轉使用者、角色和權限指派,以在移轉之前鏡像您在現有資料倉儲上擁有的項目。 例如:
- 指派給角色的資料庫物件權限
- 指派給使用者群組的角色
- 指派給使用者群組和/或角色的使用者
對接受移轉系統中的資料存取而言,存取和安全性是重要考量,並會在 Teradata 移轉的安全性、存取和作業中更詳細地討論。
提示
必須先移轉現有的使用者、使用者群組、角色和存取安全性權限指派,才能成功移轉報表和視覺效果。
請移轉所有必要的資料,確保在舊版環境中查詢資料的報表和儀表板在 Azure Synapse 中產生相同的結果。
商務使用者會期望移轉順利進行,不會出現降低他們對 Azure Synapse 上移轉系統信賴度的意外。 請藉著良好的溝通,謹慎消除您的使用者可能擁有的所有顧慮。 您的使用者會有下列期望:
在查詢中直接提及時,資料表結構保持不變。
在查詢中直接提及時,資料表和資料行名稱保持不變。 例如,產生彙總報表時,BI 工具中資料行上定義的導出欄位不應失敗。
歷程記錄分析保持不變。
資料類型保持不變 (若可能)。
查詢行為保持不變。
ODBC/JDBC 驅動程式已經過測試,以確保查詢行為保持不變。
提示
溝通和商務使用者的參與是成功的重要關鍵。
若基礎資料倉儲或資料超市資料庫中的 BI 工具查詢檢視,這些檢視在移轉之後是否仍可運作? 若您的舊版資料倉儲 DBMS 有特定的 SQL 延伸模組,且 Azure Synapse 中沒有對等的延伸模組,某些檢視可能會無法運作。 若是如此,您必須知悉這些不相容情況並尋找解決方法。
提示
使用專屬 SQL 查詢延伸模組的檢視和 SQL 查詢,可能會導致不相容,進而影響 BI 報告和儀表板。
其他問題 (例如跨 DBMS 平臺的 NULL
值或資料類型變化行為) 必須經過測試,確保計算結果中沒有絲毫差異。 請將這些問題的數量降到最低,並採取所有必要步驟來保護商務使用者不受影響。 根據您的舊版資料倉儲環境,協力廠商工具可協助您隱藏舊版和新環境之間的差異,讓 BI 工具和應用程式以過去方式執行。
測試對移轉視覺效果和報告非常重要。 您需要測試套件和商定的測試資料,才能在兩個環境中執行及重新執行測試。 測試載入器也很有用,本指南會提及部分測試載入器。 此外,請務必讓商務使用者參與移轉的測試層面來維持高信賴度,讓他們參與專案並成為專案的一份子。
提示
使用可重複的測試來確保報告、儀表板和其他視覺效果成功移轉。
您可能會想要切換 BI 工具,例如移轉至 Power BI。 在移轉結構描述、資料、ETL 處理等的同時進行這類變更是一大誘惑。 但為了降低風險,最好先移轉至 Azure Synapse 並讓一切正常運作,再開始採取進一步的現代化。
若您的現有 BI 工具在內部部署環境中執行,請確定這些工具可以透過防火牆連線到 Azure Synapse,讓您可以針對這兩個環境執行比較。 若您的現有 BI 工具廠商在 Azure 上提供其產品,您也可以在該處試用。 相同做法也適用於在內部部署執行的應用程式,這些應用程式會視需要內嵌 BI 或呼叫您的 BI 伺服器,例如藉由使用 XML 或 JSON 資料來要求「無周邊報表」。
此處要考慮的事項有很多,讓我們仔細逐一檢視。
使用資料虛擬化將移轉對 BI 工具和報表的影響降到最低
在移轉期間,您可能會想要滿足長期需求,例如開啟商務要求、新增遺漏資料或實作新功能。 不過,這類變更可能會影響 BI 工具對資料倉儲的存取,特別是在變更包含資料模型結構變更的時候。 若您想要採用敏捷式資料模型化技術或實作結構變更,請在移轉之後執行此動作。
若要將結構描述變更或其他結構變更對 BI 工具的影響降到最低,其中一種方式是在 BI 工具以及您的資料倉儲和資料超市之間引進資料虛擬化。 下圖會顯示資料虛擬化如何對使用者隱藏移轉。
資料虛擬化會中斷使用自助 BI 工具的商務使用者,與正在移轉的基礎資料倉儲和資料超市實體結構描述之間的相依性。
提示
資料虛擬化可讓您在移轉期間對商務使用者屏蔽結構變更,讓他們不會察覺這些變更。 結構變更包括微調 Azure Synapse 資料模型的結構描述變動。
透過資料虛擬化,便可對商務使用者隱藏在資料倉儲和資料超市移轉至 Azure Synapse 期間所做的所有結構描述變動 (例如將效能最佳化),因為使用者只能存取資料虛擬化層中的虛擬資料表。 並且,若您進行結構變更,您只需要更新資料倉儲或資料超市與任意虛擬資料表之間的對應即可。 透過資料虛擬化,使用者並不會察覺結構變更。 Microsoft 合作夥伴可提供資料虛擬化軟體。
識別要先行移轉的高優先順序報表
將現有的報告和儀表板移轉至 Azure Synapse 時的關鍵問題,就是要先移轉哪些報告和儀表板。 推動該決策的因素可能有很多,例如:
使用方式
商業價值
易於移轉
資料移轉策略
下列各節將討論這些因素。
無論您的決策為何,都必須讓您的商務使用者一同參與,因為他們會製作報表、儀表板和其他視覺效果,並根據這些項目的深入解析制定商務決策。 若您能夠做到下列幾點,每個人都可從中獲益:
- 順暢移轉報表和儀表板,
- 以最少的心力移轉報表和儀表板,並且
- 將 BI 工具指向 Azure Synapse,而不是您的舊版資料倉儲系統,並取得同等的報表、儀表板和其他視覺效果。
根據使用量移轉報告
使用量經常是一種商業價值指標。 未使用的報表和儀表板顯然不會參與商務決策,或在此刻提供價值。 若您無法找出未使用的報表和儀表板,可以從數種可提供使用量統計資料的 BI 工具中挑選一種來使用。
若您的舊版資料倉儲已啟動並執行多年,則您現有的報表即使沒有數千個,也會有數百個。 因此編纂報表和儀表板的詳細目錄,並識別其商務用途和使用量統計資料是十分值得的做法。
請您決定是否要解除委任未使用的報表,以減少移轉工作。 決定是否解除委任未使用報表時的重要問題,是報表之所以未使用是否是因為人員不知道報表存在、因為報表沒有商業價值,或因為報表已由另一個報表取代。
依據商業價值移轉報告
僅參考使用量未必能夠適當指出商業價值。 您可能會想要將報表深入解析對商業價值的貢獻程度納入考量。 若要這麼做,其中一種方式是評估每個依靠報表和信賴程度進行的商務決策具有多高的獲利率, 不過該資訊在大部分組織中都不太可能立即提供。
另一種評估商業價值的方式是查看報表與商務策略的一致性。 由您的主管所設定的商務策略通常會設定策略性商務目標 (SBO)、關鍵效能指標 (KPI)、需要達成的 KPI 目標,以及負責達成這些目標的人員。 您可以按照報表所參與的 SBO 來分類報表,例如減少詐騙、改善客戶參與度,以及優化商務營運。 然後,您可以優先移轉與高優先順序目標相關聯的報表和儀表板。 如此一來,初始移轉便可提供策略性領域中的商業價值。
還有一種評估商業價值的方式,即是將報表和儀表板分類為操作性、策略性或戰術性,以識別這些報表在哪個商務層級使用。 SBO 需要所有層級的貢獻。 藉由了解使用的報表和儀表板,以及其使用的層級和相關聯的目標,您便可將初始移轉的重點放在高優先順序的商業價值上。 您可以使用下列「商務策略目標」資料表來評估報表和儀表板。
層級 | 報表/儀表板名稱 | 商業目的 | 使用部門 | 使用頻率 | 業務優先順序 |
---|---|---|---|---|---|
策略性 | |||||
戰術性 | |||||
作業 |
中繼資料探索工具 (例如 Azure 資料目錄) 可讓商務使用者標記及評分來源,藉此擴充這些資料來源的中繼資料來協助其探索及分類。 您可以使用報表或儀表板的中繼資料來協助您了解其商業價值。 若沒有這類工具,無論您是否要進行移轉,了解報表和儀表板對商業價值的貢獻都可能十分耗時。
根據資料移轉策略移轉報告
若您的移轉策略是以先移轉資料超市為基礎,資料超市移轉的順序便會影響哪些報表和儀表板要先行移轉。 若您的策略是以商業價值為基礎,您將資料超市移轉至 Azure Synapse 的順序則會反映業務優先順序。 中繼資料探索工具可藉由顯示哪些資料超市資料表提供哪些報表的資料,來協助您實作策略。
提示
您的資料移轉策略會影響哪些報表和儀表板要先行移轉。
可能會影響報表和視覺效果的移轉不相容問題
BI 工具會藉由發出 SQL 查詢來產生報表、儀表板和其他視覺效果,而這些查詢會存取資料倉儲或資料超市中的實體資料表和/或檢視。 當您將舊版資料倉儲移轉至 Azure Synapse 時,有數個因素可能會影響您是否能輕鬆移轉報表、儀表板和其他視覺效果。 這些因素包括:
環境之間的結構描述不相容。
環境之間的 SQL 不相容。
結構描述不相容
在移轉期間,下列資料倉儲或資料超市資料表中的結構描述不相容,可為報表、儀表板和其他視覺效果提供資料:
舊版資料倉儲 DBMS 中的非標準資料表類型,其在 Azure Synapse 中沒有對等項目。
舊版資料倉儲 DBMS 中的資料類型,其在 Azure Synapse 中沒有對等項目。
在大部分情況下,不相容都有其因應措施。 例如,您可將不支援資料表類型中的資料移轉至具有適當資料類型的標準資料表,並在日期/時間資料行編制索引或分割。 同樣地,您也可以使用另一種類型的資料行來代表不支援的資料類型,並在 Azure Synapse 中執行計算,以得到相同的結果。
提示
結構描述不相容包括舊版倉儲 DBMS 資料表類型和 Azure Synapse 不支援的資料類型。
若要識別受結構描述不相容影響的報表,請針對舊版資料倉儲的系統目錄執行查詢,以識別具有不支援資料類型的資料表。 然後,您可以使用 BI 工具的中繼資料來識別存取這些資料表中資料的報表。 如需識別物件類型不相容的詳細資訊,請參閱不支援的 Teradata 資料庫物件類型。
提示
查詢舊版倉儲 DBMS 的系統目錄,以識別與 Azure Synapse 不相容的結構描述。
結構描述不相容對報表、儀表板和其他視覺效果的影響可能比您想的更小,因為許多 BI 工具並不支援較不通用的資料類型。 因此,舊版資料倉儲中可能已有檢視,將不支援的資料類型 CAST
為更加通用的類型。
SQL 不相容
在移轉期間,SQL 不相容可能會影響可執行下列動作的應用程式或工具中的報表、儀表板或其他視覺效果:
存取舊版資料倉儲 DBMS 檢視,其中包含在 Azure Synapse 中沒有對等項目的專屬 SQL 函式。
發出 SQL 查詢 (其中包含舊版環境 SQL 方言特有的專屬 SQL 函式) 且這些查詢在 Azure Synapse 中沒有對等專案。
量測 SQL 不相容對報告組合的影響
您的報表組合可能包含內嵌查詢服務、報表、儀表板和其他視覺效果。 請勿依靠與這些項目相關聯的文件來量測 SQL 不相容對將報表組合移轉至 Azure Synapse 時的影響。 您必須使用更精確的方法來評估 SQL 不相容的影響。
使用 EXPLAIN 陳述式來尋找 SQL 不相容
您可以檢閱舊版 Teradata 資料倉儲中最近的 SQL 活動記錄來尋找 SQL 不相容。 請使用指令碼將一組具代表性的 SQL 陳述式擷取至檔案。 然後,在每個 SQL 陳述式前面加上 EXPLAIN
陳述式,接著在 Azure Synapse 中執行這些 EXPLAIN
陳述式。 執行 EXPLAIN
陳述式時,Azure Synapse 會拒絕包含專屬不支援 SQL 延伸模組的所有 SQL 陳述式。 此方法可讓您評估 SQL 不相容的程度。
舊版資料倉儲 DBMS 的中繼資料也可以協助您識別不相容的檢視。 如前述,您可從適用的記錄中擷取一組具代表性的 SQL 陳述式,然後在每個 SQL 陳述式前加上 EXPLAIN
陳述式,接著在 Azure Synapse 中執行這些 EXPLAIN
陳述式,以識別具有不相容 SQL 的檢視。
提示
藉由收集 DBMS 記錄檔和執行 EXPLAIN
陳述式,來量測 SQL 不相容的影響。
測試報告和儀表板移轉至 Azure Synapse Analytics
資料倉儲移轉的關鍵元素是測試 Azure Synapse 中的報表和儀表板,以確認移轉是否正常運作。 請定義一系列的測試,並針對您將執行的每個測試定義一組必要成果,以驗證測試是否成功。 您可測試並比較現有和已移轉的資料倉儲系統整體的報表和儀表板,以達到下列目標:
識別移轉期間所做的結構描述變更是否影響報表執行能力、報表結果或對應的報表視覺效果。 結構描述變更的範例為,您是否將不相容的資料類型對應至 Azure Synapse 中支援的對等資料類型。
確認所有使用者均已移轉。
確認所有角色均已移轉,且已指派使用者給這些角色。
確認所有資料存取安全性權限均已移轉,以確保存取控制清單 (ACL) 移轉。
確定所有已知查詢、報表和儀表板的結果一致。
確定資料和 ETL 移轉已完成且無錯誤。
確定資料隱私權已受到維護。
測試效能和可擴縮性。
測試分析功能。
提示
測試並微調效能,將計算成本降到最低。
如需移轉使用者、使用者群組、角色和權限的資訊,請參閱 Teradata 移轉的安全性、存取和作業。
盡可能將測試自動化,讓每個測試都可重複使用,並可支援以一致的方法評估測試結果。 自動化適用於已知的一般報告,而且可以透過 Azure Synapse 管線或 Azure Data Factory 協調流程進行管理。 如果您已經有一組測試查詢可用於迴歸測試,您可以使用現有的測試工具將移轉後測試自動化。
提示
最佳做法是建置自動化測試套件,讓測試可重複執行。
臨機操作分析和報告更具挑戰性,而且需要編纂一組測試,以確認同樣的報表和儀表板在移轉前後是否一致。 若您發現不一致,在移轉測試期間比較原始和移轉系統中繼資料譜系的能力就會變得很重要。 該比較可以在其他方法難以進行偵測時強調兩者差異,並準確指出產生不一致之處。
提示
利用可比較中繼資料譜系來驗證結果的工具。
分析譜系以了解報告、儀表板和資料之間的相依性
您對譜系的了解是成功移轉報表和儀表板的關鍵因素。 譜系是顯示已移轉資料旅程的中繼資料,可讓您從報表或儀表板一路追蹤其路徑,直到回到資料來源。 譜系會顯示資料從一處移動到另一處的方式、資料在資料倉儲和/或資料超市中的位置,以及使用資料的報表和儀表板。 其可協助您了解資料在流經不同資料存放區 (例如檔案和資料庫)、不同 ETL 管線,然後進入報表時發生了什麼情況。 若商務使用者可以存取資料譜系,便可強化信任、給予信賴,並支援更明智的商務決策。
提示
從報表開始一路存取中繼資料和資料譜系直到資料來源的能力,對於確認移轉的報表是否能夠正常運作至關重要。
在多廠商資料倉儲環境中,BI 小組的商務分析師可能可繪製出資料譜系。 例如,若您針對 ETL、資料倉儲和報表使用不同的廠商,而且每個廠商都有自己的中繼資料存放庫,則找出報表中特定資料元素的來源可能是個挑戰,而且十分耗時。
提示
可將中繼資料集合自動化,並在多廠商環境中顯示端對端譜系的工具在移轉期間十分有價值。
若要從舊版資料倉儲順暢移轉至 Azure Synapse,請使用端對端資料譜系,在比較各環境產生的報表和儀表板時證明移轉同等。 若要顯示端對端資料旅程,您必須從數個工具擷取及整合中繼資料。 存取支援自動化中繼資料探索和資料譜系的工具,可讓您識別重複的報表或 ETL 流程,並找出依靠過時、可疑或不存在資料來源的報表。 您可以使用該資訊來減少移轉的報表和 ETL 流程數量。
您也可以將報表在 Azure Synapse 中的端對端譜系,與相同報表在舊版環境中的端對端譜系進行比較,以檢查移轉期間可能無意發生的差異。 當您需要測試及驗證移轉是否成功時,此類型的比較便特別有用。
資料譜系視覺效果不僅可以減少移轉流程的時間、工作和錯誤,還能加快移轉速度。
藉由使用可比較譜系的自動化中繼資料探索和資料譜系工具,您便可確認 Azure Synapse 中從移轉資料產生的報表,在舊版環境中是以相同方式產生。 此功能也可協助您判斷:
需要移轉哪些資料,以確保報表和儀表板在 Azure Synapse 成功執行。
已執行哪些轉換,以及應執行哪些轉換,才能確保項目在 Azure Synapse 成功執行。
如何減少報告重複。
自動化中繼資料探索和資料譜系工具可大幅簡化移轉流程,因為這些工具可以協助企業更了解其資料資產,並知道需要將哪些資料移轉至 Azure Synapse 才能達成穩固的報表環境。
許多 ETL 工具都提供端對端譜系功能,因此若您計劃在 Azure Synapse 使用這類工具,請檢查您現有的 ETL 工具是否具有該功能。 Azure Synapse 管線或 Data Factory 都支援檢視對應流程中的譜系。 Microsoft 合作夥伴也提供自動化中繼資料探索、資料譜系和譜系比較工具。
將 BI 工具語意層移轉至 Azure Synapse Analytics
某些 BI 工具有所謂的語意中繼資料層。 該層可簡化商務使用者對資料倉儲或資料超市資料庫中基礎實體資料結構的存取。 語意中繼資料層可藉由提供維度、量值、階層、導出計量和聯結等高階物件來簡化存取。 高階物件會使用商務分析師熟悉的商業詞彙,並對應至資料倉儲或資料超市中的實體資料結構。
提示
某些 BI 工具有語意層,可簡化商務使用者對資料倉儲或資料超市中實體資料結構的存取。
在資料倉儲移轉中,可能會強制變更資料行名稱或資料表名稱。 例如,在 Teradata 中,資料表名稱可以有 "#"。 但在 Azure Synapse 中,只允許使用 "#" 作為資料表名稱的前置詞,表示暫存資料表。 在 Teradata 中,暫存資料表的名稱中不一定要有 "#",但在 Synapse 中則必須有 "#"。 在這類情況下,您可能需要重新進行一些作業來變更資料表對應。
若要在多個 BI 工具之間達成一致性,請使用位於 BI 工具和應用程式以及 Azure Synapse 之間的資料虛擬化伺服器來建立通用語意層。 請在資料虛擬化伺服器中,針對維度、量值、階層和聯結等高階物件使用通用資料名稱。 如此一來,您便可一次完成所有設定,包括導出欄位、聯結和對應,而不需分別設定。 然後,請將所有 BI 工具指向資料虛擬化伺服器。
提示
使用資料虛擬化來建立通用語意層,以確保 Azure Synapse 環境中所有 BI 工具的一致性。
透過資料虛擬化,您就能在所有 BI 工具之間取得一致性,並中斷 BI 工具和應用程式與 Azure Synapse 中基礎實體資料結構之間的相依性。 Microsoft 合作夥伴可協助您在 Azure 中達成一致性。 下圖顯示資料虛擬化伺服器中的常見詞彙,如何讓多個 BI 工具看到通用語意層。
結論
隨即轉移資料倉儲時,大部分報表、儀表板和其他視覺效果都應該順暢移轉。
從舊版環境移轉到新環境的期間,您可能會發現舊版資料倉儲或資料超市資料表中的資料儲存在不支援的資料類型中。 或者,您可能會發現舊版資料倉儲檢視中包含在 Azure Synapse 沒有對等項目的專屬 SQL。 若是如此,您必須解決這些問題,才能確保成功移轉至 Azure Synapse。
請勿依靠使用者維護文件來識別問題所在的位置。 請改用 EXPLAIN
陳述式,因為這些陳述式能夠以快速實際的方式識別 SQL 不相容。 請修改不相容的 SQL 陳述式,以在 Azure Synapse 中實現相同的功能。 此外,請使用自動化中繼資料探索和譜系工具來了解相依性、尋找重複的報表,以及識別依靠過時、可疑或不存在資料來源的無效報表。 使用譜系工具來比較譜系,以確認在舊版資料倉儲環境中執行的報表,與 Azure Synapse 中產生的報表是否相同。
請勿移轉不再使用的報告。 BI 工具使用量資料可協助您判斷此刻並未使用的報表。 針對您想要移轉的報表、儀表板和其他視覺效果,移轉所有使用者、使用者群組、角色和權限。 若您使用商業價值來推動報表移轉策略,請建立報表與策略性商務目標和優先順序的關聯,以協助識別報表深入解析對特定目標的貢獻。 若您正在一一移轉資料超市,請使用中繼資料來識別哪些報表和哪些資料表及檢視具有相依性,如此您便可針對要先行移轉的資料超市制定明智決策。
提示
及早識別不相容狀況,以量測移轉工作的範圍。 移轉您的使用者、群組角色和權限指派。 只移轉所使用的報告和視覺效果,並貢獻商業價值。
資料倉儲或資料超市的資料模型結構變更可能在移轉期間發生。 請考慮使用資料虛擬化來保護 BI 工具和應用程式免於結構變更。 透過資料虛擬化,您可以使用通用詞彙來定義通用語意層。 通用語意層會保證新的 Azure Synapse 環境中所有 BI 工具和應用程式的通用資料名稱、定義、計量、階層和聯結皆保持一致。
下一步
若要深入了解如何降低 SQL 問題,請參閱本系列中的下一篇文章:將 Teradata 移轉的 SQL 問題降到最少。