[英]How to autoscale azure data explorer(ADX) kusto cluster (optimized/custom) using python
[英]How to get the Source Data When Ingestion Failure in KUSTO ADX
base
表。
.create table base (info:dynamic)
dynamic
列) base
表並抓取幾列,並在base
表從EventHub獲取數據時將其存儲在另一個表中。 以下功能及其更新策略
.create function extractBase() { base | evaluate bag_unpack(info) | project tostring(column1), toreal(column2), toint(column3), todynamic(column4) } .alter table target_table policy update @'[{"IsEnabled": true, "Source": "base", "Query": "extractBase()", "IsTransactional": false, "PropagateIngestionProperties": true}]'
假設base
表不包含預期的列,則發生提取錯誤。 如何獲取失敗的來源(行)? 使用.show ingestion failures
,它會顯示失敗消息。 有一個名為IngestionSourcePath
的列。 當我瀏覽URL時,出現異常,如Resource Not Found
。
如果發生提取失敗,則需要將base
表的特定行存儲到IngestionFailure
表中。 有待進一步調查
在這種情況下,您的源數據不能“不具有”由其架構定義的列。 如果某行中某列未提取任何值,則此處將存在空值,並且更新策略不會失敗。
如果原始表行沒有足夠的列,則更新策略將中斷。 當前,此類錯誤的源數據未作為故障消息的一部分發出。
通常,僅當您從Blob提取數據時,源URI才有用。 在其他情況下,失敗的提取信息中顯示的URI是動態創建的內部Blob上的URI,沒有人可以訪問。
但是,文檔中缺少一個命令(我們將確保對其進行更新),該命令允許您將下一次錯誤提取的源數據復制(轉儲到提供的存儲容器中)到特定表中。
語法為:.dup-next-failed-ingest到TableName中以h @'Azure blob容器的路徑'
此處,Azure Blob容器的路徑必須包含可寫的SAS。 運行此命令所需的權限是DB admin。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.