查詢記錄
重要
此功能目前為預覽功能。 適用於 Microsoft Azure 預覽版的補充使用規定包含適用於 Beta 版、預覽版或尚未發行至正式運作之 Azure 功能的更合法條款。 如需此特定預覽的相關信息,請參閱 AKS 預覽資訊的 Azure HDInsight。 如需問題或功能建議,請在 AskHDInsight 上提交要求,並提供詳細數據,並遵循我們在 Azure HDInsight 社群上取得更多更新。
Trino 支援 自定義事件接聽程式 ,可用來接聽查詢生命週期事件。 您可以撰寫自己的事件接聽程式,或使用 HDInsight 在 AKS 上提供的內建外掛程式,將事件記錄到 Azure Blob 儲存體。
您可以透過兩種方式啟用內建查詢記錄:
您可以啟用 Hive 目錄,在建立 Trino 叢集期間啟用內建查詢記錄。
您可以使用 ARM 樣本在叢集中啟用內建查詢記錄。
本文涵蓋使用ARM範本將查詢記錄新增至叢集。
必要條件
- 在 AKS 上使用 HDInsight 的作業 Trino 叢集。
- 為您的叢集建立 ARM範本 。
- 檢閱完整的叢集 ARM 範 例。
- 熟悉 ARM 範本撰寫和部署。
啟用查詢記錄
若要在 Trino 叢集中啟用內建查詢記錄外掛程式,請在叢集 ARM 範本中新增/更新 clusterProfile.trinoProfile.userTelemetrySpec
具有下列屬性的 區段。
屬性 | 說明 |
---|---|
path |
用來擷取不同查詢記錄之根目錄的完整路徑。 |
hivecatalogName |
此目錄可用來在記憶體帳戶中寫入的檔案上掛接外部數據表。 此目錄必須新增在您的叢集中, 新增Hive目錄。 |
hivecatalogSchema |
查詢記錄外掛程式會使用此架構來掛接記錄的外部數據表,如果尚未存在,外掛程式就會建立此架構。 預設值 - trinologs |
partitionRetentionInDays |
查詢記錄外掛程式會剪除記錄數據表中的數據分割,這些分割區比指定的組態還舊。 預設值 - 365 |
下列範例示範如何在 Trino 叢集中啟用查詢記錄。 在 ARM 範本中新增 [*].properties.clusterProfile
此範例 json。
"trinoProfile": {
"userTelemetrySpec": {
"storage": {
"path": "https://querylogstorageaccount.blob.core.windows.net/logs/trinoquerylogs",
"hivecatalogName": "hive",
"hivecatalogSchema": "trinologs",
"partitionRetentionInDays": 365
}
}
}
部署更新的 ARM 範本,以反映叢集中的變更。 瞭解如何 部署ARM範本。
注意
外掛程式會使用系結至叢集的使用者指派受控識別 (MSI) 來驗證記憶體,請新增
Contributor
並Storage Blob Data Owner
存取 MSI,以確保外掛程式可以將記錄寫入記憶體帳戶。
使用者指派的 MSI 名稱會列在msiResourceId
叢集資源 JSON 中的屬性中。 瞭解如何 指派角色。PartitionRetentionInDays 只會從掛接的數據表中移除元數據分割區,並不會刪除數據。 如有需要,請根據需求清除數據。
中繼資料管理
如果使用者在 屬性中 hiveCatalogName
指定目錄名稱,外掛程式會將記憶體帳戶中寫入的記錄檔掛接為外部數據表和檢視表,而這些記錄檔可透過 Trino 查詢。
外掛程式會建立三個數據表和三個檢視,可用來查詢生命週期事件 (QueryCompletedEvent
、 QueryCreatedEvent
和 SplitCompletedEVent
) 。 這些數據表和檢視是在使用者輸入提供的目錄和架構下建立的。
資料表的名稱:
querycompleted
:包含QueryCompleted
Trino 所引發的事件。querycreated
:包含 Trino 所引發的QueryCreatedEvents
。splitcompleted
:包含 Trino 所引發的SplitCompletedEvents
。
檢視的名稱:
vquerycompleted
vquerycreated
vsplitcompleted
注意
建議使用者在不受基礎架構變更和說明數據表的帳戶免疫時使用檢視。
數據表封存
外掛程式支援在使用者決定變更 path
記錄或外部位置的案例中封存第 N-1 個數據表。
如果發生這種情況,外掛程式會將指向舊路徑的數據表重新命名為 <table_name>_archived,建立的檢視會結合此案例中目前和封存數據表的結果。
建立您的自定義外掛程式
您也可以撰寫自定義事件接聽程式外掛程式,遵循檔上的指示,遵循外掛程式部署步驟來部署自定義外掛程式。
意見反應
https://aka.ms/ContentUserFeedback。
即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:提交並檢視相關的意見反應