【发布时间】:2018-07-20 10:39:09
【问题描述】:
我正在使用 Azure 的流分析来创建实时仪表板。为了提供流分析作业,我有一个事件中心作为输入。
问题是;我有三种不同类型的事件(交互事件、会话事件、用户事件),每一种都有不同的数据和结构。我必须将它们组合到 Stream Analytic 的查询部分,并且我想用一个事件中心来完成。到目前为止,我将所有事件发送到事件中心,但我还没有找到一种方法来区分一种事件与另一种事件以便正确处理它们。
我阅读了“事件中心的消费者组”,但我不知道如何使用它们来处理具有不同“消费者组”的不同类型的事件,以及是否可以在流分析作业中使用它。
【问题讨论】:
-
如果您无法将一种事件与另一种事件区分开来,消费者群体将无济于事。您应该在发送到事件中心的数据中包含一个属性,或者使用其他方式进行区分。您的活动看起来如何?
-
事件是 JSON 格式,它们有不同的字段我认为我可以通过字段来区分它们,不是吗?我怎样才能区分它们?以及如何将代码添加到事件中心以区分它们?
-
如果它们有不同的字段,那么您确实应该能够区分它们。你能显示你到目前为止的查询,以便我们有更多的工作要做吗?目前我不清楚这意味着什么:我必须将它们组合到 Stream Analytic 的查询部分中
-
您好,如果每种类型的事件具有不同的结构,您确实可以在查询中区分它们(例如,使用 WHERE 子句查看字段是否为 NULL)。如果您在查询方面需要任何帮助,请告诉我。
-
我做到了,我可以区分它们,查询; WITH CXUSER AS (SELECT * FROM "DemoDashboard" WHERE ClrType IS NOT NULL), CXSESSION AS (SELECT * FROM "DemoDashboard" WHERE UserAgent IS NOT NULL), CXINTERACTION AS (SELECT * FROM "DemoDashboard" WHERE EventType IS NOT NULL) select * FROM CXINTERACTION LEFT JOIN CXSESSION ON (CXINTERACTION.SessionId = CXSESSION.Id and DATEDIFF(minute, CXSESSION, CXINTERACTION) BETWEEN 0 and 10)
标签: azure azure-eventhub azure-stream-analytics