使用 Azure Synapse 端對端分析

Azure Synapse Analytics
Azure Cosmos DB
Azure Data Factory
Azure Databricks
Azure 事件中樞

本文所述的解決方案結合了一系列 Azure 服務,這些服務會內嵌、儲存、處理、擴充及提供來自不同來源的數據和深入解析(結構化、半結構化、非結構化和串流)。

架構

使用 Azure 數據服務的新式數據平台架構圖表。

下載此架構的 Visio 檔案

注意

  • 此架構所涵蓋的服務只是更大型的 Azure 服務系列的子集。 使用此設計未涵蓋的其他服務或功能,即可達成類似的結果。
  • 分析使用案例的特定商務需求可能需要使用此設計中未考慮的不同服務或功能。

資料流程

架構所涵蓋的分析使用案例是由圖表左側的不同數據源所說明。 數據會從下到上流經解決方案,如下所示:

注意

在下列各節中,Azure Data Lake 會作為整個數據生命週期各階段數據的首頁。 Azure Data Lake 是由不同層級和容器所組織,如下所示:

  • 原始層是來自來源系統之數據的登陸區域。 如其名所示,此層中的數據是未經處理的、未經篩選且未使用的形式。
  • 在生命週期的下一個階段中,數據會移至擴充層,其中會清除、篩選及可能轉換數據。
  • 然後,數據會移至策展層,也就是消費者就緒數據的維護位置。

如需 Azure Data Lake 層和容器及其用途的完整檢閱,請參閱 Data Lake 區域和容器 檔。

Azure 數據服務、雲端原生 HTAP 與 Azure Cosmos DB 和 Dataverse

處理
  1. 適用於 Azure Cosmos DB 的 Azure Synapse Link 和適用於 Dataverse 的 Azure Synapse Link 可讓您使用可從 Azure Synapse 工作區取得的分析引擎:SQL 無伺服器和 Spark 集區,對作業和商務應用程式數據執行近乎即時的分析。

  2. 使用適用於 Azure Cosmos DB 的 Azure Synapse Link 時,請使用 SQL Serverless 查詢Spark 集區筆記本。 您可以存取 Azure Cosmos DB 分析存放區 ,然後結合您近乎即時操作數據的數據集與來自 Data Lake 或數據倉儲的數據。

  3. 使用適用於 Dataverse 的 Azure Synapse Link 時,請使用 SQL 無伺服器查詢Spark 集區筆記本。 您可以存取選取的 Dataverse 數據表,然後結合來自近乎即時商務應用程式數據的數據集,以及來自 Data Lake 或數據倉儲的數據。

儲存
  1. SQL 無伺服器查詢所產生的數據集可以保存在您的數據湖中。 如果您使用 Spark 筆記本,則產生的數據集可以保存在數據湖或數據倉儲 (SQL 集區) 中。
提供
  1. 將相關數據從 Azure Synapse SQL 集區或 Data Lake 載入 Power BI 數據集, 以取得數據視覺效果和探索。 Power BI 模型 會實作語意模型,以簡化商務數據和關聯性的分析。 商務分析師會使用 Power BI 報表和儀錶板來分析數據並衍生商務見解。

  2. 數據也可以使用 Azure Data Share 安全地共用給其他業務單位或外部信任的合作夥伴。 數據取用者可以自由選擇想要使用的數據格式,以及哪些計算引擎最適合處理共享數據集。

  3. 您 Synapse 工作區中儲存的結構化和非結構化數據也可以用來建 置知識採礦解決方案 ,並使用 AI 來發掘不同檔類型和格式的寶貴商業見解,包括 Office 檔、PDF、影像、音訊、表單和網頁。

關聯式資料庫

擷取
  1. 使用 Azure Synapse 管線 從內部部署和雲端中各種資料庫提取數據。 您可以根據預先定義的排程來觸發管線,以回應事件,也可以透過 REST API 明確呼叫。
儲存
  1. 在Raw Data Lake層中, 依照要建立哪些層的最佳做法、要用於每一層的資料夾結構,以及要用於每個分析案例的檔格式,組織 Data Lake

  2. 從 Azure Synapse 管線,使用複製數據活動,將從關係資料庫複製的數據暫存到 Azure Data Lake Store Gen 2 Data Lake 的原始層。 您可以使用分隔文字格式儲存數據,或壓縮為 Parquet 檔案。

處理
  1. 使用數據流SQL 無伺服器查詢Spark 筆記本,透過擴充層,在 Data Lake 中驗證、轉換和行動資料集。。

    1. 在數據轉換中,您可以使用標準 T-SQL 或 Spark 筆記本,從 SQL 集區叫用機器定型模型。 這些 ML 模型可用來擴充數據集,並產生進一步的商業見解。 這些機器學習模型可以從 Azure 認知服務或 Azure ML 的自定義 ML 模型取用
提供
  1. 您可以直接從 Data Lake 策展圖層提供最終數據集,或使用複製數據活動,使用 COPY 命令 快速擷取最終數據集到 SQL 集區數據表中。

  2. 將相關數據從 Azure Synapse SQL 集區或 Data Lake 載入 Power BI 數據集 ,以取得數據視覺效果。 Power BI 模型 會實作語意模型,以簡化商務數據和關聯性的分析。 商務分析師會使用 Power BI 報表和儀錶板來分析數據並衍生商務見解。

  3. 數據也可以使用 Azure Data Share 安全地共用給其他業務單位或外部信任的合作夥伴。 數據取用者可以自由選擇想要使用的數據格式,以及哪些計算引擎最適合處理共享數據集。

  4. 您 Synapse 工作區中儲存的結構化和非結構化數據也可以用來建 置知識採礦解決方案 ,並使用 AI 來發掘不同檔類型和格式的寶貴商業見解,包括 Office 檔、PDF、影像、音訊、表單和網頁。

半結構化數據源

擷取
  1. 使用 Azure Synapse 管線 從內部部署和雲端中各種半結構化數據源提取數據。 例如:

    • 從包含 CSV 或 JSON 檔案的檔案型來源擷取數據。
    • 連線 至 No-SQL 資料庫,例如 Azure Cosmos DB 或 MongoDB。
    • 呼叫 SaaS 應用程式提供的 REST API,以作為管線的數據源運作。
儲存
  1. 在Raw Data Lake層中, 依照要建立哪些層的最佳做法、要用於每一層的資料夾結構,以及要用於每個分析案例的檔格式,組織 Data Lake

  2. 從 Azure Synapse 管線,使用複製數據活動來暫存從半結構化數據源複製到 Azure Data Lake Store Gen 2 Data Lake 原始層的數據。 儲存數據以保留原始格式,如從數據源取得。

處理
  1. 針對批次/微批次管線,請使用 數據流SQL 無伺服器查詢Spark 筆記本 來驗證、轉換及將數據集移至 Data Lake 中的策展層。 SQL 無伺服器查詢會將基礎 CSVParquetJSON 檔案公開為外部數據表,以便使用 T-SQL 進行查詢。

    1. 在數據轉換中,您可以使用標準 T-SQL 或 Spark 筆記本,從 SQL 集區叫用機器學習模型。 這些 ML 模型可用來擴充數據集,並產生進一步的商業見解。 這些機器學習模型可以從 Azure 認知服務或 Azure ML 的自定義 ML 模型取用
  2. 針對近乎即時的遙測和時間序列分析案例,請使用 數據總管集 區,輕鬆地 內嵌、合併和將記錄和IoT事件數據跨多個數據源相互關聯。 透過資料總管集區,您可以使用 Kusto 查詢 (KQL) 來執行 時間序列分析地理空間叢集和機器學習擴充。

提供
  1. 您可以直接從 Data Lake 策展圖層提供最終數據集,或使用複製數據活動,使用 COPY 命令 快速擷取最終數據集到 SQL 集區數據表中。

  2. 將相關數據從 Azure Synapse SQL 集區、 數據總管集區數據湖 載入 Power BI 數據集 ,以取得數據視覺效果。 Power BI 模型 會實作語意模型,以簡化商務數據和關聯性的分析。 商務分析師會使用 Power BI 報表和儀錶板來分析數據並衍生商務見解。

  3. 數據也可以使用 Azure Data Share 安全地共用給其他業務單位或外部信任的合作夥伴。 數據取用者可以自由選擇想要使用的數據格式,以及哪些計算引擎最適合處理共享數據集。

  4. 您 Synapse 工作區中儲存的結構化和非結構化數據也可以用來建 置知識採礦解決方案 ,並使用 AI 來發掘不同檔類型和格式的寶貴商業見解,包括 Office 檔、PDF、影像、音訊、表單和網頁。

非結構化數據源

擷取
  1. 使用 Azure Synapse 管線 從內部部署和雲端中各種非結構化數據源提取數據。 例如:

    • 從包含來源檔案的檔案型來源擷取視訊、影像、音訊或自由文字。
    • 呼叫 SaaS 應用程式提供的 REST API,以作為管線的數據源運作。
儲存
  1. 在Raw Data Lake層中, 遵循要建立哪些層的最佳做法、每個層中要使用的資料夾結構,以及要用於每個分析案例的檔格式,來組織您的數據湖

  2. 從 Azure Synapse 管線,使用複製數據活動來暫存從非結構化數據源複製到 Azure Data Lake Store Gen 2 Data Lake 原始層的數據。 保留從數據源取得的原始格式來儲存數據。

處理
  1. 使用 Spark 筆記本 來驗證、轉換、擴充數據集,以及透過擴充層,並將數據集從原始層移至 Data Lake 中的策展層。

    1. 在數據轉換中,您可以使用標準 T-SQL 或 Spark 筆記本,從 SQL 集區叫用機器學習模型。 這些 ML 模型可用來擴充數據集,並產生進一步的商業見解。 這些機器學習模型可以從 Azure 認知服務或 Azure ML 的自定義 ML 模型取用
提供
  1. 您可以直接從 Data Lake 策展圖層提供最終數據集,或使用複製數據活動,使用 COPY 命令 快速擷取數據倉儲數據表中的最終數據集。

  2. 將相關數據從 Azure Synapse SQL 集區或 Data Lake 載入 Power BI 數據集 ,以取得數據視覺效果。 Power BI 模型 會實作語意模型,以簡化商務數據和關聯性的分析。

  3. 商務分析師會使用 Power BI 報表和儀錶板來分析數據並衍生商務見解。

  4. 數據也可以使用 Azure Data Share 安全地共用給其他業務單位或外部信任的合作夥伴。 數據取用者可以自由選擇想要使用的數據格式,以及哪些計算引擎最適合處理共享數據集。

  5. 您 Synapse 工作區中儲存的結構化和非結構化數據也可以用來建 置知識採礦解決方案 ,並使用 AI 來發掘不同檔類型和格式的寶貴商業見解,包括 Office 檔、PDF、影像、音訊、表單和網頁。

串流

擷取
  1. 使用 Azure 事件中樞 或 Azure IoT 中樞 來擷取用戶端應用程式或 IoT 裝置所產生的數據流。 然後,事件中樞或 IoT 中樞 會擷取和儲存串流數據,以保留收到的事件序列。 取用者接著可以連線到事件中樞或 IoT 中樞 端點,並擷取訊息進行處理。
儲存
  1. 在Raw Data Lake層中, 依照要建立哪些層的最佳做法、要用於每一層的資料夾結構,以及要用於每個分析案例的檔格式,組織 Data Lake

  2. 設定事件中樞擷取IoT 中樞 儲存體 端點,將事件的復本儲存到 Azure Data Lake Store Gen 2 Data Lake 的原始層。 這項功能會實作 Lambda 架構模式的「冷路徑」,並可讓您使用 SQL Serverless 查詢Spark 筆記本,針對上述半結構化數據源的模式,對儲存在數據湖中的數據流數據執行歷程記錄和趨勢分析。

處理
  1. 如需即時深入解析,請使用串流分析作業來實作 Lambda 架構模式「經常性路徑」,並從傳輸中的串流數據衍生深入解析。 為來自事件中樞或 IoT 中樞 的數據流定義至少一個輸入、一個查詢來處理輸入數據流,並將一個 Power BI 輸出傳送至其中傳送查詢結果。

    1. 使用串流分析進行數據處理時,您可以叫用機器學習模型,以根據產生的預測來擴充串流數據集並推動商務決策。 這些機器學習模型可以從 Azure 認知服務或 Azure Machine Learning 中的自定義 ML 模型取用。
  2. 使用其他串流分析作業輸出,將已處理的事件傳送至 Azure Synapse SQL 集 區或 數據總 管集區,以進一步分析使用案例。

  3. 如需近乎即時的遙測和時間序列分析案例,請使用數據總管集區,輕鬆地直接從事件中樞或 IoT 中樞 內嵌IoT事件。 透過資料總管集區,您可以使用 Kusto 查詢 (KQL) 來執行 時間序列分析地理空間叢集和機器學習擴充。

提供
  1. 然後,商務分析師會使用 Power BI即時數據集和儀錶板 功能,將串流分析查詢所產生的快速變更見解可視化。

  2. 數據也可以使用 Azure Data Share 安全地共用給其他業務單位或外部信任的合作夥伴。 數據取用者可以自由選擇想要使用的數據格式,以及哪些計算引擎最適合處理共享數據集。

  3. 您 Synapse 工作區中儲存的結構化和非結構化數據也可以用來建 置知識採礦解決方案 ,並使用 AI 來發掘不同檔類型和格式的寶貴商業見解,包括 Office 檔、PDF、影像、音訊、表單和網頁。

元件

下列 Azure 服務已在架構中使用:

替代項目

案例詳細資料

此範例案例示範如何使用 Azure Synapse Analytics 搭配廣泛的 Azure 數據服務系列,來建置能夠處理組織中最常見數據挑戰的新式數據平臺。

潛在的使用案例

此方法也可以用來:

  • 建立 數據產品 架構,其中包含結構化數據的數據倉儲,以及半結構化和非結構化數據的數據湖。 您可以選擇為集中式環境部署單一數據產品,或針對數據網格等分散式環境部署多個數據產品。 請參閱 資料管理 和數據登陸區域的詳細資訊
  • 使用巨量數據處理技術,整合關係型數據源與其他非結構化數據集。
  • 使用語意模型化和功能強大的視覺效果工具進行更簡單的數據分析。
  • 在組織內或與受信任的外部合作夥伴共享數據集。
  • 實作知識採礦解決方案,以擷取隱藏在影像、PDF、檔等中的寶貴商務資訊。

建議

探索與控管

數據控管是大型企業環境中常見的挑戰。 一方面,商務分析師必須能夠探索及瞭解可協助其解決商務問題的數據資產。 另一方面,首席數據官想要深入瞭解商務數據的隱私權和安全性。

Microsoft Purview

  1. 針對您的資料資產、數據分類和敏感度使用 Microsoft Purview 進行數據探索和深入解析,其涵蓋整個組織資料環境。

  2. Microsoft Purview 可協助您使用使用者所需的特定商務術語來維護 商務詞彙 ,以了解數據集所代表的意義語意,以及它們在整個組織中使用的方式。

  3. 您可以 註冊所有數據源 ,並將其組織成 集合,這也可作為元數據的安全性界限。

  4. 設定 定期掃描 ,以自動編錄及更新組織中數據資產的相關元數據。 Microsoft Purview 也可以根據 Azure Data Factory 或 Azure Synapse 管線的信息自動新增 數據譜 系資訊。

  5. 根據在一般掃描期間套用的預先設定或海關規則,數據分類 和數據 敏感度 標籤可以自動新增至您的數據資產。

  6. 數據控管專業人員可以使用 Microsoft Purview 所產生的報告和 深入解析 ,以持續控制整個數據環境,並保護組織免於發生任何安全性和隱私權問題。

平台服務

若要改善 Azure 解決方案的品質,請遵循 Azure 架構完善的架構五大架構卓越要素中定義的建議和指導方針:成本優化、營運卓越、效能效率、可靠性和安全性。

遵循這些建議,下列服務應視為設計的一部分:

  1. Microsoft Entra ID:跨 Azure 工作負載的身分識別服務、單一登錄和多重要素驗證。
  2. Azure 成本管理:Azure 工作負載的財務治理。
  3. Azure 金鑰保存庫:安全認證和憑證管理。 例如,Azure Synapse PipelinesAzure Synapse Spark 集區和 Azure ML 可以從用來安全地存取數據存放區的 Azure 金鑰保存庫 擷取認證和憑證。
  4. Azure 監視器:收集、分析及處理 Azure 資源的遙測資訊,以主動識別問題並最大化效能和可靠性。
  5. 適用於雲端的 Microsoft Defender:加強和監視 Azure 工作負載的安全性狀態。
  6. Azure DevOps 和 GitHub:實作 DevOps 做法,以針對 Azure Synapse 和 Azure ML 強制執行工作負載開發和部署管線的自動化和合規性。
  7. Azure 原則:針對資源一致性、法規合規性、安全性、成本和管理,實作組織標準和治理。

考量

這些考慮會實作 Azure Well-Architected Framework 的支柱,這是一組指導原則,可用來改善工作負載的品質。 如需詳細資訊,請參閱 Microsoft Azure Well-Architected Framework

之所以選擇此架構中的技術,是因為每個技術都提供必要的功能來處理組織中最常見的數據挑戰。 這些服務符合延展性和可用性的需求,同時協助它們控制成本。 此架構所涵蓋的服務只是更大型的 Azure 服務系列的子集。 使用此設計未涵蓋的其他服務或功能,即可達成類似的結果。

分析使用案例的特定商務需求也可能要求使用此設計中未考慮的不同服務或功能。

您也可以針對生產階段前環境實作類似的架構,您可以在其中開發和測試工作負載。 請考慮工作負載的特定需求,以及每個服務對於符合成本效益的生產前環境的功能。

成本最佳化

成本優化是考慮如何減少不必要的費用,並提升營運效率。 如需詳細資訊,請參閱 成本優化要素概觀。

一般而言,使用 Azure 定價計算機 來預估成本。 理想的個別定價層和架構中包含的每個服務的整體成本,取決於要處理和儲存的數據量,以及預期的可接受效能等級。 使用下列指南深入瞭解每個服務的價格:

  • Azure Synapse Analytics 無伺服器架構可讓您獨立調整計算和記憶體層級。 計算資源會根據使用量收費,您可以視需要調整或暫停這些資源。 儲存體 資源是以每 TB 計費,因此當您內嵌更多數據時,您的成本將會增加。

  • Azure Data Lake Gen 2 會根據儲存的數據量,並根據要讀取和寫入數據的交易數目來收費。

  • Azure 事件中樞 和 Azure IoT 中樞 會根據處理訊息數據流所需的計算資源量來收費。

  • Azure 機器學習 費用來自用來定型和部署機器學習模型的計算資源數量。

  • 認知服務 會根據您對服務 API 的呼叫數目收費。

  • Microsoft Purview 會根據目錄中的數據資產數目和掃描所需的計算能力量來定價。

  • Azure 串流分析 會根據處理串流查詢所需的計算能力量來收費。

  • Power BI 針對不同需求有不同的產品選項。 Power BI Embedded 提供 Azure 型選項,可在您的應用程式內嵌 Power BI 功能。 上述定價範例中包含Power BI Embedded實例。

  • Azure Cosmos DB 是以資料庫所需的記憶體和計算資源數量為基礎來定價。

部署此案例

此部署加速器可讓您選擇實作整個參考架構,或選擇分析使用案例所需的工作負載。 您也可以選擇是否可以透過公用端點存取服務,或只透過私人端點存取服務。

使用下列按鈕,使用 Azure 入口網站 來部署參考。

部署至 Azure

如需詳細資訊和其他部署選項,請參閱 部署加速器 GitHub 存放庫 ,其中包含用來定義此解決方案的檔和程序代碼。

參與者

本文由 Microsoft 更新及維護。 原始投稿人如下。

主體作者:

若要查看非公用LinkedIn配置檔,請登入LinkedIn。

下一步

  • 檢閱 Azure 數據管理和分析案例定義的指導方針,以取得 Azure 中可調整的分析環境。

  • 探索 Microsoft 學習 資料工程師 學習路徑,以進一步訓練此參考架構中涉及的服務內容和實驗室。

  • 檢閱檔,並使用 GitHub 提供的部署加速器來部署參考架構。