从 python 脚本执行 Azure 流分析查询

Execute Azure steaming analytics queries from a python script

python 的 azure-eventhub (1.3.2) 库仅允许用户发送和使用来自 Azure EventHub 的消息。

Use the Event Hubs client library for Python to:

  • Publish events to the Event Hubs service through a sender.

  • Read events from the Event Hubs service through a receiver.

出于构思和调试的目的,我尝试使用 Azure 门户上提供的查询控制台,但体验是……没有成效(多次崩溃、重新加载等)。有没有办法从 python 代码执行流式分析查询?

示例查询:

SELECT
    [event],
    DATEDIFF(...)
INTO
    [Output]
FROM
    [input] TIMESTAMP BY Time

遗憾的是,Azure 流分析不支持来自 python 脚本的查询。

Azure 流分析中的查询以类似 SQL 的查询语言表达。 Stream Analytics query language reference 指南中记录了语言结构。

查询设计可以表达简单的传递逻辑,将事件数据从一个输入流移动到输出数据存储,或者它可以进行丰富的模式匹配和时间分析,以计算不同时间的聚合 windows如使用流分析构建 IoT 解决方案指南中所述。您可以连接来自多个输入的数据以组合流式事件,并且可以对静态参考数据进行查找以丰富事件值。您还可以将数据写入多个输出。

详情请参考“Query examples for common Stream Analytics usage patterns”。

希望对您有所帮助。

没有用于 Azure 流分析的 python SDK。

如果你必须使用python,你可以尝试使用python调用related powershell script来达到你的目的。

Here 是如何使用 python 调用 powershell 的示例。