簡體   English   中英

Azure 流分析作業將兩個事件中心之間不匹配記錄的輸出延遲了 1 分鍾

[英]Azure Stream Analytics Job delayed output of not matching records by 1 minutes between two event hubs

任何人都可以幫助我,為什么不匹配的記錄會延遲 1 分鍾,但匹配的記錄會立即寫入博客存儲容器。

即使 eventA 與其他 eventB 不匹配,是否有任何方法可以避免延遲(作為我的下游系統將在我的用例中處理)

select b.eventenqueuedutctime as btime,a.Id,a.SysTime,a.UTCTime
,b.Id as BId,b.SysTime as BSysTime 
into outputStorage -- to blob storage (container)
from eventA a TIMESTAMP BY eventenqueuedutctime
left outer join eventB b TIMESTAMP BY eventenqueuedutctime
on a.id = b.id
and datediff(minute,b,a) between 0 and 180 -- join with last 3 hours of eventB data

下面是輸出,但看看最后一行 (Id:99) currentTime:T19: 42:13.1690000 Z 與前 4 行相比延遲了 1 分鍾 (currentTime:T19: 41:13.1690000 Z)

僅供參考,通過 Json 序列化通過 EventDataBatch 一次發送所有 eventA Id (2,4,1,101,99)

{"btime":"2020-11-03T17:00:50.6360000Z","Id":2,"SysTime":"2020-11-03T11:41:12.860466-08:00","UTCTime":"2020-11-03T19:41:12.8604646Z","BId":2,"BSysTime":"2020-11-03T09:00:49.6751336-08:00","fullname":"cc","currentTime":"2020-11-03T19:41:13.1690000Z"}
{"btime":"2020-11-03T17:00:50.6360000Z","Id":4,"SysTime":"2020-11-03T11:41:12.8605138-08:00","UTCTime":"2020-11-03T19:41:12.8605135Z","BId":4,"BSysTime":"2020-11-03T09:00:49.6751371-08:00","fullname":null,"currentTime":"2020-11-03T19:41:13.1690000Z"}
{"btime":"2020-11-03T17:00:50.6360000Z","Id":1,"SysTime":"2020-11-03T11:41:12.8605561-08:00","UTCTime":"2020-11-03T19:41:12.8605559Z","BId":1,"BSysTime":"2020-11-03T09:00:49.6749841-08:00","fullname":"test","currentTime":"2020-11-03T19:41:13.1690000Z"}
{"btime":"2020-11-03T19:39:04.0100000Z","Id":101,"SysTime":"2020-11-03T11:41:12.860598-08:00","UTCTime":"2020-11-03T19:41:12.8605978Z","BId":101,"BSysTime":"2020-11-03T11:39:03.7462454-08:00","fullname":"test-101","currentTime":"2020-11-03T19:41:13.1690000Z"}
{"btime":null,"Id":99,"SysTime":"2020-11-03T11:41:12.860322-08:00","UTCTime":"2020-11-03T19:41:12.8602803Z","BId":null,"BSysTime":null,"fullname":null,"currentTime":"2020-11-03T19:42:13.1690000Z"}

這是因為您將 JOIN 與 DATEDIFF 一起使用。

臨時連接的使用,例如 JOIN with DATEDIFF:

一旦匹配事件的雙方到達,匹配就會生成。

對於左側的每個事件,在 DATEDIFF 窗口的末尾生成缺少匹配項的數據,例如 LEFT OUTER JOIN。

更多詳情,可以參考https://docs.microsoft.com/en-us/azure/stream-analytics/stream-analytics-troubleshoot-output#the-first-output-is-delayed

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM