You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过Azure IoT Hub路由将数据分发至不同Azure Data Explorer表

解决Azure IoT Hub数据分流到多个Azure Data Explorer表的方案

核心思路

利用Azure IoT Hub的路由规则+Azure Data Explorer(ADX)的多数据连接,基于设备数据中的类型标识字段,直接将不同类型的计量数据分流到对应ADX表,无需Event Hub或额外类型列。

具体步骤

  1. 确保设备数据包含类型标识字段
    你的Python模拟脚本发送的每条数据里,必须携带明确区分计量类型的字段(比如meterType),示例数据格式:

    {
        "Timestamp": "2024-05-20T12:00:00Z",
        "DeviceId": "gas-meter-001",
        "GasUsage": 1.2,
        "meterType": "gas"
    }
    

    水、电数据同理,meterType分别设为water、electricity。

  2. 在ADX中创建三个目标表
    根据三类计量数据的结构,创建独立的表,示例DDL:

    .create table GasMeters (Timestamp: datetime, DeviceId: string, GasUsage: double)
    .create table WaterMeters (Timestamp: datetime, DeviceId: string, WaterUsage: double)
    .create table ElectricMeters (Timestamp: datetime, DeviceId: string, ElectricUsage: double)
    
  3. 为每个ADX表创建独立的IoT Hub数据连接

    • 进入ADX集群的目标数据库,选择「数据连接」→「添加」→「Azure IoT Hub」
    • 每个连接对应一个ADX表,配置时:
      • 选择你的IoT Hub实例
      • 设置路由查询:比如燃气表连接的查询为$body.meterType = 'gas',水表为$body.meterType = 'water',电表为$body.meterType = 'electricity'
      • 配置表映射(自动或手动),确保数据字段与ADX表字段匹配
    • 重复此步骤,完成三个表的连接配置
  4. 验证IoT Hub路由规则
    进入你的IoT Hub控制台,查看「路由」页面:每个ADX数据连接会自动创建对应的路由规则,规则的查询条件就是你设置的过滤逻辑,端点为ADX的内置端点。确保规则优先级合理(无冲突拦截)。

  5. 测试数据分流效果
    用Python脚本发送不同类型的测试数据,分别查询ADX的三个表,确认对应类型的数据进入正确的表。

关键注意事项

  • 类型标识字段是分流的核心,必须确保每条数据都携带且值准确
  • 每个ADX表对应独立的IoT Hub数据连接,避免复用连接导致数据混流
  • 无需额外部署Event Hub,ADX与IoT Hub的直接连接已支持基于路由的分流

内容的提问来源于stack exchange,提问作者valdoucet

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.26 13:20:24