本文提供近乎實時的異常偵測程序實作架構。
架構
資料流程
- 時間序列數據可能來自多個來源,例如 適用於 MySQL 的 Azure 資料庫、Blob 記憶體、事件中樞、Azure Cosmos DB、SQL 資料庫 和 適用於 PostgreSQL 的 Azure 資料庫。
- 數據會從各種記憶體來源擷取到計算中,以便由 異常偵測程式 監視。
- Databricks 可協助匯總、取樣及計算原始數據,以產生具有偵測結果的時間。 Databricks 能夠處理數據流和靜態數據。 串流分析和 Azure Synapse 可以根據需求做為替代方案。
- 異常偵測器 API 會偵測異常,並傳回要計算的結果。
- 異常相關的元數據已排入佇列。
- Application Insights 會根據異常相關元數據從消息佇列挑選訊息,並傳送有關異常的警示。
- 結果會儲存在 Azure Data Lake Service Gen2 中。
- Web 應用程式和 Power BI 可以將異常偵測的結果可視化。
元件
用來實作此架構的重要技術:
- 服務匯流排:可靠的雲端傳訊即服務 (MaaS) 和簡單的混合式整合。
- Azure Databricks:快速、簡單且共同作業的 Apache Spark 型分析服務。
- Power BI:互動式數據視覺效果 BI 工具。
- 儲存體 帳戶:持久、高可用性且可大幅調整的雲端記憶體。
- 認知服務:具有 REST API 和用戶端連結庫 SDK 的雲端式服務,可協助您在應用程式中建置認知智慧。
- Logic Apps:無伺服器平臺,可用來建置整合應用程式、數據和服務的企業工作流程。 在此架構中,邏輯應用程式會由 HTTP 要求觸發。
- Azure Data Lake 儲存體 Gen2:Azure Data Lake 儲存體 Gen2 提供文件系統語意、檔案層級安全性和規模。
- Application Insights:Application Insights 是 Azure 監視器的一項功能,可提供可延伸的應用程式效能管理(APM)和即時 Web 應用程式的監視。
替代項目
- 使用 Kafka 的事件中樞:執行您自己的 Kafka 叢集的替代方案。 此事件中樞功能提供與 Kafka API 相容的端點。
- Azure Synapse Analytics:整合企業數據倉儲和巨量數據分析的分析服務。
- Azure 機器學習:在雲端式環境中建置、定型、部署及管理自定義機器學習/異常偵測模型。
案例詳細資料
Azure 認知服務 異常偵測程式 API 可讓您監視和偵測時間序列數據中的異常狀況,而不需要知道機器學習。 不論產業、案例或數據量為何,API 的演算法都會自動識別並套用最適合您時間序列數據的模型。 它們會決定異常偵測、預期值和異常數據點的界限。
潛在的使用案例
異常偵測可協助監視的某些區域:
- 銀行欺詐(金融業)
- 結構缺陷(製造業)
- 醫療問題 (醫療保健行業)
考量
這些考慮會實作 Azure Well-Architected Framework 的支柱,這是一組指導原則,可用來改善工作負載的品質。 如需詳細資訊,請參閱 Microsoft Azure Well-Architected Framework。
延展性
此範例案例中使用的大部分元件都是會自動調整的受控服務。
如需設計可調整解決方案的一般指引,請參閱 Azure 架構中心的效能效率檢查清單 。
安全性
安全性可提供針對蓄意攻擊和濫用寶貴數據和系統的保證。 如需詳細資訊,請參閱 安全性要素概觀。
Azure 資源的 受控識別可用來提供帳戶內部其他資源的存取權,然後指派給您的 Azure Functions。 允許這些身分識別只存取必要的資源,以確保不會向您的函式公開任何額外專案(且可能向您的客戶公開)。
如需設計安全解決方案的一般指引,請參閱 Azure 安全性檔。
復原
此案例中的所有元件都會受到管理,因此在區域層級,它們都會自動復原。
如需設計復原解決方案的一般指引,請參閱 設計適用於 Azure 的復原應用程式。
成本最佳化
成本優化是考慮如何減少不必要的費用,並提升營運效率。 如需詳細資訊,請參閱 成本優化要素概觀。
若要探索執行此案例的成本,請參閱預先填入的計算機,其中包含所有服務。 若要查看特定使用案例的定價如何變更,請變更適當的變數,以符合您預期的流量/數據量。
我們已根據流量量提供三個範例成本配置檔(我們假設所有影像的大小都是 100 kb):
- 範例計算機:此定價範例是此架構中所有服務的計算機,但 Power BI 和自定義警示解決方案除外。
參與者
本文由 Microsoft 維護。 原始投稿人如下。
主體作者:
- 阿什沙漢 |資深雲端解決方案架構師
若要查看非公用LinkedIn配置檔,請登入LinkedIn。
下一步
- 異常偵測程式 API 檔
- 互動式示範
- 使用 異常偵測程式 API 偵測和可視化數據中的異常 - Jupyter Notebook 上的示範
- 透過 IoT 中樞 將數據路由傳送至 Azure 串流分析中的內建 ML 模型,以識別異常
- 配方:使用巨量數據的認知服務進行預測性維護
- 服務匯流排 檔
- Azure Databricks 文件
- Power BI 文件 (機器翻譯)
- 儲存體 檔