本文所描述的解決方案結合了一系列 Azure 服務,這些服務來自不同來源(結構化、半結構化、非結構化及串流)來擷取、儲存、處理、豐富並提供資料與洞察。
Architecture
下載此架構的 Visio 檔案。
Note
- 此架構所涵蓋的服務只是更大型的 Azure 服務系列的子集。 使用此設計未涵蓋的其他服務或功能,即可達成類似的結果。
- 分析使用案例的特定商務需求可能需要使用此設計中未考慮的不同服務或功能。
Dataflow
架構所涵蓋的分析使用案例是由圖表左側的不同數據源所說明。 數據會從下到上流經解決方案,如下所示:
Note
在下列各節中,Azure Data Lake Storage 會作為資料生命週期各個階段的資料主目錄。 Data Lake Storage 會依不同的層和容器組織,如下所示:
- 原始層是來自來源系統之數據的登陸區域。 如其名所示,此層中的數據是未經處理的、未經篩選且未使用的形式。
- 在生命週期的下一個階段中,數據會移至擴充層,其中會清除、篩選及可能轉換數據。
- 然後,數據會移至策展層,也就是消費者就緒數據的維護位置。
請參閱 Data Lake 區域和容器 檔,以取得 Data Lake Storage 層和容器及其用途的完整檢閱。
Azure 數據服務、雲端原生 HTAP 與 Azure Cosmos DB 和 Dataverse
Process
適用於 Azure Cosmos DB 的 Azure Synapse Link 和 適用於 Dataverse 的 Azure Synapse Link 可讓您使用可從 Azure Synapse 工作區取得的分析引擎: SQL 無伺服器 和 Spark 集區,對作業和商務應用程式數據執行近乎即時的分析。
當你使用 Azure Synapse Link for Azure Cosmos DB 時,請使用 SQL Serverless 查詢 或 Spark Pool 筆記本。 您可以存取 Azure Cosmos DB 分析存放區 ,然後結合您近乎即時作數據的數據集與來自 Data Lake 或數據倉儲的數據。
使用 Azure Synapse Link for Dataverse 時,請使用 SQL Serverless 查詢 或 Spark Pool 筆記本。 您可以存取選取的 Dataverse 數據表,然後結合來自近乎即時商務應用程式數據的數據集,以及來自 Data Lake 或數據倉儲的數據。
Microsoft Store
- SQL 無伺服器查詢所產生的數據集可以保存在您的數據湖中。 如果您使用 Spark 筆記本,則產生的資料集可以保存在資料湖或資料倉儲 (SQL 集區) 中。
Serve
將相關數據從 Azure Synapse SQL 集區或 Data Lake 載入 Power BI 數據集, 以取得數據視覺效果和探索。 Power BI 模型 會實作語意模型,以簡化商務數據和關聯性的分析。 商務分析師會使用 Power BI 報表和儀錶板來分析資料並衍生商務深入解析。
數據也可以使用 Azure Data Share 安全地共用給其他業務單位或外部信任的合作夥伴。 數據取用者可以自由選擇想要使用的數據格式,以及哪些計算引擎最適合處理共享數據集。
您 Synapse 工作區中儲存的結構化和非結構化數據也可以用來建置 知識採礦解決方案 ,並使用 AI 來發掘不同檔類型和格式的寶貴商業見解,包括 Office 檔、PDF、影像、音訊、表單和網頁。
關聯式資料庫
Ingest
- 使用 Azure Synapse 管線 從各種資料庫(本地端及雲端)擷取資料。 您可以根據預先定義的排程來觸發管線,以回應事件,也可以透過 REST API 明確呼叫。
Microsoft Store
在Raw Data Lake層中,依照要建立哪些層的最佳做法、要用於每一層的資料夾結構,以及要用於每個分析案例的檔格式, 組織 Data Lake 。
從 Azure Synapse 管線中,使用 [複製資料] 活動,將從關聯式資料庫複製的資料暫存至 Data Lake Storage 資料湖的原始層。 您可以使用分隔文字格式儲存數據,或壓縮為 Parquet 檔案。
Process
使用 資料流程、 SQL 無伺服器查詢或 Spark 筆記本 ,驗證、轉換資料集,並將資料集從原始層移至擴充層,並移至資料湖中的策劃層。
- 在數據轉換中,您可以使用 標準 T-SQL 或 Spark 筆記本,從 SQL 集區叫用機器定型模型。 這些 ML 模型可用來擴充數據集,並產生進一步的商業見解。 這些機器學習模型可以從 Azure AI 服務 取用,或從 Azure Machine Learning 取用自訂 ML 模型。
Serve
您可以直接從資料湖策劃層提供最終資料集,也可以使用 [複製資料] 活動,使用 COPY 命令 將最終資料集內嵌至 SQL 集區資料表,以快速擷取。
將相關數據從 Azure Synapse SQL 集區或 Data Lake 載入 Power BI 數據集 ,以取得數據視覺效果。 Power BI 模型 會實作語意模型,以簡化商務數據和關聯性的分析。 商務分析師會使用 Power BI 報表和儀錶板來分析資料並衍生商務深入解析。
數據也可以使用 Azure Data Share 安全地共用給其他業務單位或外部信任的合作夥伴。 數據取用者可以自由選擇想要使用的數據格式,以及哪些計算引擎最適合處理共享數據集。
您 Synapse 工作區中儲存的結構化和非結構化數據也可以用來建置 知識採礦解決方案 ,並使用 AI 來發掘不同檔類型和格式的寶貴商業見解,包括 Office 檔、PDF、影像、音訊、表單和網頁。
半結構化數據源
Ingest
使用 Azure Synapse 管道 從各種半結構化資料來源(本地端及雲端)擷取資料。 例如,管線可以執行以下操作:
- 從包含 CSV 或 JSON 檔案的檔案型來源擷取數據。
- 連線到 No-SQL 資料庫,例如 Azure Cosmos DB 或 MongoDB。
- 呼叫由 SaaS 應用程式提供的 REST API,作為管線的資料來源。
Microsoft Store
在Raw Data Lake層中,依照要建立哪些層的最佳做法、要用於每一層的資料夾結構,以及要用於每個分析案例的檔格式, 組織 Data Lake 。
從 Azure Synapse 管線中,使用 [複製資料] 活動,將從半結構化資料來源複製的資料暫存至 Data Lake Storage 資料湖的原始層。 儲存數據以保留原始格式,如從數據源取得。
Process
針對批次/微批次管線,請使用 資料流程、 SQL 無伺服器查詢 或 Spark 筆記本 來驗證、轉換資料集,並將其移至資料湖中的策劃層。 SQL 無伺服器查詢會將基礎 CSV、 Parquet 或 JSON 檔案公開為外部資料表,以便使用 T-SQL 進行查詢。
- 在數據轉換中,您可以使用 標準 T-SQL 或 Spark 筆記本,從 SQL 集區叫用機器學習模型。 這些 ML 模型可用來擴充數據集,並產生進一步的商業見解。 這些機器學習模型可以從 Azure AI 服務 取用,或從 Azure Machine Learning 取用自訂 ML 模型。
針對近乎即時的遙測和時間序列分析案例,請使用數據總管 集 區,輕鬆地 內嵌、合併和將記錄和IoT事件數據跨多個數據源相互關聯。 透過資料總管集區,您可以使用 Kusto 查詢 (KQL) 來執行 時間序列分析、 地理空間叢集和機器學習擴充。
Serve
您可以直接從資料湖策劃層提供最終資料集,也可以使用 [複製資料] 活動,使用 COPY 命令 將最終資料集內嵌至 SQL 集區資料表,以快速擷取。
將相關資料從 Azure Synapse SQL 集區、 資料總管集區或 資料湖 載入 Power BI 資料集 ,以進行資料視覺效果。 Power BI 模型 會實作語意模型,以簡化商務數據和關聯性的分析。 商務分析師會使用 Power BI 報表和儀錶板來分析資料並衍生商務深入解析。
數據也可以使用 Azure Data Share 安全地共用給其他業務單位或外部信任的合作夥伴。 數據取用者可以自由選擇想要使用的數據格式,以及哪些計算引擎最適合處理共享數據集。
您 Synapse 工作區中儲存的結構化和非結構化數據也可以用來建置 知識採礦解決方案 ,並使用 AI 來發掘不同檔類型和格式的寶貴商業見解,包括 Office 檔、PDF、影像、音訊、表單和網頁。
非結構化數據源
Ingest
使用 Azure Synapse 管線 從各種非結構化資料來源(無論是本地端還是雲端)擷取資料。 例如:
- 從包含來源檔案的檔案型來源擷取視訊、影像、音訊或自由文字。
- 呼叫由 SaaS 應用程式提供的 REST API,作為管線的資料來源。
Microsoft Store
在Raw Data Lake層中,遵循要建立哪些層的最佳做法、每個層中要使用的資料夾結構,以及要用於每個分析案例的檔格式, 來組織您的數據湖 。
從 Azure Synapse 管線中,使用 [複製資料] 活動,將從非結構化資料來源複製的資料暫存至 Data Lake Storage 資料湖的原始層。 保留從數據源取得的原始格式來儲存數據。
Process
使用 Spark 筆記本 來驗證、轉換、擴充資料集,並將其從原始層移至擴充層,然後移至資料湖中的策劃層。
- 在數據轉換中,您可以使用 標準 T-SQL 或 Spark 筆記本,從 SQL 集區叫用機器學習模型。 這些 ML 模型可用來擴充數據集,並產生進一步的商業見解。 這些機器學習模型可以從 Azure AI 服務 取用,或從 Azure Machine Learning 取用自訂 ML 模型。
Serve
您可以直接從資料湖策劃層提供最終資料集,也可以使用 複製資料 活動,使用 COPY 命令 將最終資料集擷取到資料倉儲表格中,以快速擷取。
將相關數據從 Azure Synapse SQL 集區或 Data Lake 載入 Power BI 數據集 ,以取得數據視覺效果。 Power BI 模型 會實作語意模型,以簡化商務數據和關聯性的分析。
商務分析師會使用 Power BI 報表和儀錶板來分析資料並衍生商務深入解析。
數據也可以使用 Azure Data Share 安全地共用給其他業務單位或外部信任的合作夥伴。 數據取用者可以自由選擇想要使用的數據格式,以及哪些計算引擎最適合處理共享數據集。
您 Synapse 工作區中儲存的結構化和非結構化數據也可以用來建置 知識採礦解決方案 ,並使用 AI 來發掘不同檔類型和格式的寶貴商業見解,包括 Office 檔、PDF、影像、音訊、表單和網頁。
Streaming
Ingest
- 使用 Azure 事件中樞或 Azure IoT 中樞 來擷取用戶端應用程式或 IoT 裝置所產生的資料串流。 Event Hubs 或 IoT Hub 接著會接收並儲存串流資料,並保留接收到的事件順序。 取用者接著可以連線到事件中樞或 IoT 中樞 端點,並擷取訊息進行處理。
Microsoft Store
在Raw Data Lake層中,依照要建立哪些層的最佳做法、要用於每一層的資料夾結構,以及要用於每個分析案例的檔格式, 組織 Data Lake 。
設定事件中樞擷取或 IoT 中樞儲存體端點,將事件的複本儲存至 Data Lake Storage 資料湖的原始層。 此功能實作了 Lambda 架構模式 中的「冷路徑」,並允許你使用 SQL Serverless 查詢 或 Spark 筆記本 ,依照前述半結構化資料來源的模式,對儲存在資料湖中的串流資料進行歷史與趨勢分析。
Process
如需即時深入解析,請使用 串流分析作業 來實作 Lambda 架構模式 的「經常性路徑」,並從傳輸中的串流數據衍生深入解析。 定義至少一個來自 事件中心 或 物聯網中心的資料流輸入,一個查詢用來處理輸入資料流,以及一個 Power BI 輸出到查詢結果的傳送點。
- 使用串流分析進行數據處理時,您可以叫用機器學習模型,以根據產生的預測來擴充串流數據集並推動商務決策。 這些機器學習模型可以從 Azure AI 服務或 Azure Machine Learning 中的自訂 ML 模型取用。
使用其他串流分析作業輸出,將已處理的事件傳送至 Azure Synapse SQL 集區 或 資料總管集區 ,以取得進一步的分析使用案例。
如需近乎即時的遙測和時間序列分析案例,請使用數據總管 集 區,輕鬆地直接從 事件 中樞或 IoT中樞內嵌IoT事件。 透過資料總管集區,您可以使用 Kusto 查詢 (KQL) 來執行 時間序列分析、 地理空間叢集和機器學習擴充。
Serve
然後,商務分析師會使用 Power BI即時數據集和儀錶板 功能,將串流分析查詢所產生的快速變更見解可視化。
數據也可以使用 Azure Data Share 安全地共用給其他業務單位或外部信任的合作夥伴。 數據取用者可以自由選擇想要使用的數據格式,以及哪些計算引擎最適合處理共享數據集。
您 Synapse 工作區中儲存的結構化和非結構化數據也可以用來建置 知識採礦解決方案 ,並使用 AI 來發掘不同檔類型和格式的寶貴商業見解,包括 Office 檔、PDF、影像、音訊、表單和網頁。
Components
Azure AI 服務 是一套基於雲的人工智能工具,使開發人員和組織能夠構建智能應用程序,而無需廣泛的 AI 或數據科學專業知識。 Azure AI 服務提供視覺、語言和決策工作的預先建置模型。 在此架構中,它們會透過與 Synapse 管線和串流分析整合,在處理期間擴充資料集。
Azure Cosmos DB 是全域分散式 NoSQL 資料庫。 在此架構中,它會儲存作業資料,並使用 Synapse Link 來啟用近乎即時的分析,而不會影響作業工作負載。
Data Lake Storage 是以 Azure Blob 儲存體為基礎的可調整資料湖。 在此架構中,它可作為中央存放庫,組織成原始、擴充和策劃層,適用於批次和串流案例中的所有資料類型。
Azure 資料共用 是一項受控資料交換服務,可在 Azure 租用戶之間安全、受控管地共用資料。 在此架構中,它會將資料湖或 Synapse 的策劃資料集散發至內部小組或外部合作夥伴。
Azure IoT 中樞 是 IoT 裝置的雲端閘道。 在此架構中,它會擷取遙測資料,並將它路由傳送至事件中樞進行資料流程處理,或直接路由傳送至資料湖進行儲存。
Azure 金鑰保存庫 是雲端式服務,可安全地儲存和管理機密、金鑰和憑證等敏感性資訊。 在此架構中,它會管理 Synapse 管線和 Azure Machine Learning 中使用的認證。
Azure Machine Learning 是建置和部署機器學習模型的平台。 在此架構中,它提供與 Synapse 管線和串流分析整合的自訂模型,以進行資料擴充。
Azure 監視器 是內建於 Azure 中的雲端原生監視系統,可從您的應用程式、基礎結構和服務收集和分析遙測資料。 在此架構中,它會監控所有資料平台元件的效能、可靠性和使用情況。
Azure 原則 是一種治理工具,可跨 Azure 資源強制執行治理規則。 在此架構中,它可確保跨資料平台的合規性、資料控管和成本控制。
Azure 串流分析 是 Azure 中的即時串流資料處理服務。 在此架構中,它會實作 Lambda 架構的「經常性路徑」,並處理來自事件中樞和 IoT 中樞的資料。
Azure Synapse Analytics 是整合式分析平台。 在此架構中,它會協調流程資料管線、提供 SQL Serverless 和 Spark 計算進行轉換,並透過 SQL 集區作為資料倉儲。
事件中樞 是高輸送量的即時事件擷取服務。 在此架構中,它接收來自應用程式和 IoT 裝置的串流資料,並具有資料湖中冷路徑儲存的擷取功能。
Microsoft Power BI 是一個商業智慧和資料視覺化平台,提供商業智慧和視覺化。 在此架構中,它會連線到 Synapse SQL 集區、資料總管集區和資料湖,以建立儀錶板和報表。
Microsoft Purview 是資料控管、安全性和合規性的統一平臺。 在此架構中,它會編目資料資產、追蹤 Synapse 管線的譜系。
Alternatives
在前述架構中,Azure Synapse 管線負責資料管線協調。 Azure Data Factory 管線也提供與本文所述相同的功能。
Azure Databricks 也可以作為計算引擎,用來直接在數據湖上處理結構化和非結構化數據。
使用 Azure Databricks 時,你可以直接將 Power Apps 服務層連接到 Azure Databricks 中的 Delta Lake 資料表,而不必匯出資料。 當商務小組需要從策劃的湖庫資料表進行近乎即時的讀取時,請考慮此路徑。
在前述架構中,Azure Stream Analytics 負責處理串流資料。 Azure Synapse Spark 集區和 Azure Databricks 也可用來透過執行筆記本來執行相同的角色。
Azure HDInsight Kafka 叢集也可以用來內嵌串流數據,並提供大型串流工作負載所需的正確效能和延展性層級。
您也可以利用 Azure Functions 從 Azure Synapse 管線叫用 Azure AI 服務或 Azure Machine Learning 自訂 ML 模型。
之所以選擇此架構中的技術,是因為每個技術都提供必要的功能來處理組織中最常見的數據挑戰。 這些服務符合延展性和可用性的需求,同時協助它們控制成本。 此架構所涵蓋的服務只是更大型的 Azure 服務系列的子集。 使用此設計未涵蓋的其他服務或功能,即可達成類似的結果。
針對分析應用場景的特定業務需求,可能會要求使用本設計未考慮的不同服務或功能。
如需其他替代方案的比較,請參閱:
案例詳細資料
此範例案例示範如何使用 Azure Synapse Analytics 搭配廣泛的 Azure 數據服務系列,來建置能夠處理組織中最常見數據挑戰的新式數據平臺。
潛在使用案例
此方法也可以用來:
- 建立 資料產品 架構,其中包含結構化資料的資料倉儲,以及半結構化和非結構化資料的資料湖。 您可以選擇為集中式環境部署單一數據產品,或針對數據網格等分散式環境部署多個數據產品。 請參閱 數據管理和數據登陸區域的詳細資訊。
- 使用巨量數據處理技術,整合關係型數據源與其他非結構化數據集。
- 使用語意模型化和功能強大的視覺效果工具進行更簡單的數據分析。
- 在組織內或與受信任的外部合作夥伴共享數據集。
- 實作知識採礦解決方案,以擷取隱藏在影像、PDF、檔等中的寶貴商務資訊。
Recommendations
探索與控管
數據控管是大型企業環境中常見的挑戰。 一方面,商務分析師必須能夠探索及瞭解可協助其解決商務問題的數據資產。 另一方面,首席數據官想要深入瞭解商務數據的隱私權和安全性。
Microsoft Purview
使用 Microsoft Purview 來 探索數據 ,並深入解析您的 數據資產、 數據分類和 敏感度,這涵蓋整個組織數據環境。
Microsoft Purview 可協助您維護 商務詞彙表 ,其中包含使用者所需的特定商務術語,以瞭解資料集的意義,以及如何在整個組織中使用資料集的語意。
設定 定期掃描 ,以自動編目和更新組織中資料資產的相關中繼資料。 Microsoft Purview 也可以根據來自 Azure Data Factory 或 Azure Synapse 管線的資訊,自動新增 資料譜系 資訊。
數據控管專業人員可以使用 Microsoft Purview 所產生的報表和 深入解析 來控制整個數據環境,並保護組織免受任何安全性和隱私權問題的影響。
平台服務
若要改善 Azure 解決方案的品質,請遵循 Azure Well-Architected Framework 中定義的建議和指導方針,以卓越架構五大要素:成本優化、營運卓越、效能效率、可靠性和安全性。
在使用這些建議時,請考慮以下服務作為設計的一部分:
- Microsoft Entra ID:跨 Azure 工作負載的身分識別服務、單一登入和多重要素驗證。
- Microsoft成本管理:Azure 工作負載的財務治理。
- Azure Key Vault:安全認證和憑證管理。 例如, Azure Synapse Pipelines、 Azure Synapse Spark 集區 和 Azure Machine Learning 可以從用來安全存取資料存放區的 Azure 金鑰保存庫擷取認證和憑證。
- Azure 監視器:收集、分析及處理 Azure 資源的遙測資訊,以主動識別問題,並將效能和可靠性最大化。
- 適用於雲端的 Microsoft Defender:加強和監視 Azure 工作負載的安全性狀態。
- Azure DevOps 和 GitHub:實作 DevOps 做法,以強制執行 Azure Synapse 和 Azure Machine Learning 的工作負載開發和部署管線的自動化和合規性。
- Azure 原則:實作資源一致性、法規合規性、安全性、成本和管理的組織標準和治理。
Considerations
這些考量能實作 Azure Well-Architected Framework 的支柱,這是一組指導原則,可以用來改善工作負載的品質。 如需詳細資訊,請參閱 Well-Architected Framework。
成本優化
成本優化著重於減少不必要的費用,並提升營運效率的方式。 如需詳細資訊,請參閱 成本優化的設計檢閱檢查清單。
一般而言,使用 Azure 定價計算機 來預估成本。 理想的個別定價層和架構中包含的每個服務的整體成本,取決於要處理和儲存的數據量,以及預期的可接受效能等級。 請使用以下連結了解每項服務的定價:
Azure Synapse Analytics 無伺服器架構可讓您獨立調整計算和記憶體層級。 計算資源會根據使用量收費,您可以視需要擴縮或暫停這些資源。 儲存資源是按 TB 計費,因此隨著資料增加,成本也會增加。
Data Lake Storage 會根據儲存的資料量,以及讀取和寫入資料的交易數目來收費。
Azure 事件中樞 和 IoT 中樞 會根據處理訊息資料流程所需的計算資源量來收費。
Azure Machine Learning 費用來自用來定型和部署機器學習模型的計算資源數量。
AI 服務 會根據您對服務 API 進行的呼叫次數收費。
Microsoft Purview 的定價是根據目錄中的數據資產數目,以及掃描這些資產所需的計算能力數量來定價。
Azure 串流分析 會根據處理串流查詢所需的計算能力量來收費。
Power BI 有不同的產品選項,可滿足不同的需求。 Power BI Embedded 提供 Azure 型選項,可在您的應用程式內嵌 Power BI 功能。
Azure Cosmos DB 是以資料庫所需的記憶體和計算資源數量為基礎來定價。
您也可以針對生產階段前環境實作類似的架構,您可以在其中開發和測試工作負載。 請考慮工作負載的特定需求,以及每個服務對於符合成本效益的生產前環境的功能。
部署此案例
本文提供 GitHub 中提供的隨附存放庫,說明如何自動部署此架構中涵蓋的服務。 遵循 Azure 分析端對端與 Azure Synapse 部署指南 ,將此架構部署至您的訂用帳戶。 該部署指南有詳細的指示和多個部署選項。
Contributors
本文目前由 Microsoft 更新與維護。 原始投稿人如下。
主要作者:
- 法比奧·布拉加 |首席 MTC 技術架構師
若要查看非公用LinkedIn配置檔,請登入LinkedIn。
後續步驟
檢閱 Azure 數據管理和分析案例 中定義的指導方針,以取得 Azure 中可調整的分析環境。
探索 Microsoft 學習的數據工程師學習路徑 ,以進一步訓練此參考架構相關服務的內容和實驗室。
使用 GitHub 上提供的部署指引,檢閱檔並部署參考架構。