Amazon OpenSearch Service 中的異常偵測 - Amazon OpenSearch Service

Amazon OpenSearch Service 中的異常偵測

Amazon OpenSearch Service 中的異常偵測功能會使用 Random Cut Forest (隨機分割森林,簡稱 RCF) 演算法,以近乎即時的速度自動偵測 OpenSearch 資料中的異常。RCF 是一種非監督式的機器學習演算法,它會為傳入資料串流的草圖建立模型。該演算法會為每個傳入資料點計算 anomaly gradeconfidence score 值。異常偵測使用這些值來區分資料中的異常與正常變化。

您可以將異常偵測外掛程式與 在 Amazon OpenSearch Service 中設定提醒 外掛程式配對,以在偵測到異常時立即通知您。

在執行任何 OpenSearch 版本或 Elasticsearch 7.4 或更高版本的網域上均可使用異常偵測。除了 t2.microt2.small 外,所有執行個體類型都支援異常偵測。如需異常偵測的完整文件,包括詳細步驟和 API 說明,請參閱 OpenSearch 文件

先決條件

異常偵測具有以下先決條件:

  • 異常偵測需要 OpenSearch 或 Elasticsearch 7.4 或更高版本。

  • 異常偵測在 Elasticsearch 版本 7.9 和更高版本以及所有版本的 OpenSearch 上僅支援精細存取控制。在 Elasticsearch 7.9 之前,只有管理員使用者可以建立、檢視和管理偵測器。

  • 如果您的網域使用精細存取控制,則非系統管理員使用者必須在 OpenSearch Dashboards 中映射anomaly_read_access 角色來檢視偵測器,或映射到 anomaly_full_access 來建立和管理偵測器。

開始使用異常偵測

若要開始使用,請在 OpenSearch Dashboards 中選擇異常偵測

步驟 1:建立偵測器

偵測器是個別的異常偵測任務。您可以建立多個偵測器,且所有偵測器皆可同時執行,而每個偵測器會分析來自不同來源的資料。

步驟 2:將功能新增至偵測器

功能是您檢查異常之索引中的欄位。偵測器可在一或多個功能中探索異常。您必須針對每個功能選擇以下其中一個彙總:average()sum()count()min()max()

注意

count() 彙總方法只能在 OpenSearch 和 Elasticsearch 7.7 或更高版本中使用。對於 Elasticsearch 7.4,請使用如下所示的自訂表達式:

{ "aggregation_name": { "value_count": { "field": "field_name" } } }

彙總方法會決定構成異常的內容。例如,如果您選擇, min(),偵測器會專注於根據功能的最小值來尋找異常。如果您選擇 average(),偵測器會根據功能的平均值來尋找異常。每個偵測器最多可以新增五個功能。

您可以配置下列選用設定 (在 Elastisearch 7.7 及更高版本中可用):

  • 類別欄位-使用 IP 地址、產品 ID、國家/地區代碼等維度來分類或分割資料。

  • 時段大小-設定要在偵測時段中考量的資料串流彙總間隔數。

設定功能後,請預覽範例異常,並視需要調整功能設定。

步驟 3:觀察結果


                    異常偵測儀表板上提供下列視覺效果:
  • Live anomalies (即時異常) - 顯示最後 60 個間隔的即時異常結果。例如,如果間隔設為 10,則會顯示最後 600 分鐘的結果。此圖表每隔 30 秒重新整理一次。

  • Anomaly history (異常歷程記錄) - 會使用對應可信度測量來繪製異常分數。

  • Feature breakdown (功能明細) - 根據彙總方法來繪製功能。您可以呈現偵測器的日期時間範圍差異。

  • Anomaly occurrence (異常出現次數) - 顯示每個偵測到的異常的 Start timeEnd timeData confidenceAnomaly grade

    如果您設定類別欄位,您會看到額外的熱度圖圖表,它會關聯異常實體的結果。選擇填滿的矩形以查看異常的更詳細檢視。

步驟 4:設定提醒

若要建立監控以在偵測到任何異常時傳送通知,請選擇 Set up alerts (設定提醒)。外掛程式會將您重新導向至 Add monitor (新增監控) 頁面,您可在此設定提醒。