教程:使用时序见解可视化和分析来自 Azure 数字孪生的事件

重要

Azure 数字孪生服务的新版本已发布。 鉴于新服务的扩展功能,本文档集中介绍的原始 Azure 数字孪生服务 (已停用) 。

若要查看新服务的文档,请访问活动的 Azure 数字孪生文档

部署 Azure 数字孪生实例、预配空间并实现用于监视特定条件的自定义函数以后,即可将空间中的事件和数据可视化,查找趋势和异常。

第一个教程中,你配置了一栋虚构大楼的空间图,其中一个房间包含用于移动、二氧化碳和温度的传感器。 在第二个教程中,已预配了图形和用户定义的函数。 此函数监视这些传感器值并在条件适当的情况下触发通知, 这里的条件适当是指房间为空房间且温度和二氧化碳水平正常。

本教程介绍如何将这些通知和来自 Azure 数字孪生设置的数据与 Azure 时序见解集成。 然后,你可以将某段时间的传感器值可视化, 查找各种趋势,例如,哪个房间使用频率最高、一天中最忙的时间是什么时间。 也可检测异常,例如,哪些房间让人感觉又闷又热,或者大楼中某个区域发送的温度值是否始终很高,表明空调故障。

在本教程中,你将了解如何执行以下操作:

  • 使用 Azure 事件中心对数据进行流式传输。
  • 使用时序见解进行分析。

先决条件

本教程假定你已配置预配 Azure 数字孪生设置。 在继续操作之前,请确保已具备以下条件:

提示

如果要预配新实例,请使用唯一的数字孪生实例名称。

使用事件中心对数据进行流式传输

可以使用事件中心服务创建流式传输数据所需的管道。 本部分介绍如何将事件中心创建为 Azure 数字孪生和时序见解实例之间的连接器。

创建事件中心

  1. 登录 Azure 门户

  2. 在左窗格中,选择“创建资源”。

  3. 搜索并选择“事件中心”。 选择“创建”。

    创建事件中心命名空间

  4. 为事件中心命名空间输入一个“名称”。 选择“标准”作为定价层,然后选择你的订阅、用于数字孪生实例的资源组,以及位置。 选择“创建”。

  5. 在事件中心命名空间部署中,选择“概述”窗格,然后选择“转到资源”

    部署后的事件中心命名空间

  6. 在事件中心命名空间的“概览”窗格中,选择顶部的“事件中心”按钮 事件中心按钮

  7. 为事件中心输入一个“名称”,然后选择“创建”

    事件中心在部署以后,会显示在其命名空间的“事件中心”窗格中,其“状态”为“活动”。 选择此事件中心,打开其“概览”窗格。

  8. 选择顶部的“使用者组”按钮,为使用者组输入一个名称,例如 tsievents 选择“创建”。

    事件中心使用者组

    使用者组在创建以后,会显示在事件中心的“概览”窗格底部的列表中。

  9. 打开事件中心的“共享访问策略”窗格,然后选择“添加”按钮。 输入 ManageSend 作为策略名称,确保所有复选框都已选中,然后选择“创建”。

    事件中心连接字符串

    提示

    确保你正在为事件中心实例而不是名称空间创建 SAS 策略。

  10. 打开创建的 ManageSend 策略,并将 连接字符串(主键连接字符串)的值 复制到临时文件。 在下一部分,将需要这些值来创建事件中心的终结点。

为事件中心创建终结点

  1. 在命令窗口中,确保当前位置为 Azure 数字孪生示例的 occupancy-quickstart\src 文件夹。

  2. 在编辑器中打开 actions\createEndpoints.yaml 文件。 将内容替换为以下内容:

    - type: EventHub
      eventTypes:
      - SensorChange
      - SpaceChange
      - TopologyOperation
      - UdfCustom
      connectionString: Primary_connection_string_for_your_event_hub
      secondaryConnectionString: Secondary_connection_string_for_your_event_hub
      path: Name_of_your_Event_Hub
    - type: EventHub
      eventTypes:
      - DeviceMessage
      connectionString: Primary_connection_string_for_your_event_hub
      secondaryConnectionString: Secondary_connection_string_for_your_event_hub
      path: Name_of_your_Event_Hub
    
  3. 将占位符 Primary_connection_string_for_your_event_hub 替换为连接字符串的值-事件中心 的主键 。 确保此连接字符串的格式如下:

    Endpoint=sb://nameOfYourEventHubNamespace.servicebus.windows.net/;SharedAccessKeyName=ManageSend;SharedAccessKey=yourShareAccessKey1GUID;EntityPath=nameOfYourEventHub
    
  4. 将占位符 Secondary_connection_string_for_your_event_hub 替换为连接字符串的值 - 事件中心的 辅助密钥 。 确保此连接字符串的格式如下:

    Endpoint=sb://nameOfYourEventHubNamespace.servicebus.windows.net/;SharedAccessKeyName=ManageSend;SharedAccessKey=yourShareAccessKey2GUID;EntityPath=nameOfYourEventHub
    
  5. 将占位符 Name_of_your_Event_Hub 替换为事件中心的名称。

    重要

    输入所有值,不带任何引号。 在 YAML 文件中,请确保在冒号之后至少有一个空格字符。 也可使用任何联机 YAML 验证程序(例如此工具)来验证 YAML 文件内容。

  6. 保存并关闭该文件。 在命令窗口中运行以下命令,在系统提示时使用 Azure 帐户登录。

    dotnet run CreateEndpoints
    

    它为事件中心创建两个终结点。

    事件中心的终结点

使用时序见解进行分析

  1. Azure 门户的左窗格中,选择“创建资源”

  2. 搜索并选择时序见解正式版 (GA) 资源。 选择“创建”。

  3. 为时序见解实例输入一个名称,然后选择你的订阅。 选择用于数字孪生实例的“资源组”,然后选择“位置”。 选择 “下一步:事件源 ”按钮或 “事件源 ”选项卡。

    用于创建时序见解实例的选择

  4. 在“事件源”选项卡中,输入一个名称,选择“事件中心”作为“源类型”,并确保正确选择其他值以引用所创建的事件中心。 选择 ManageSend 作为“事件中心访问策略名称”,,然后选择在上一部分创建的使用者组,作为“事件中心使用者组”。 选择“查看 + 创建”。

    用于创建事件源的选择

  5. 在“查看 + 创建”窗格中,查看所输入的信息,然后选择“创建”

  6. 在部署窗格中,选择已创建的“时序见解”资源。 它将打开时序见解环境的“概述”窗格。

  7. 选择顶部的“转到环境”按钮。 如果出现数据访问警告,则请打开时序见解实例的“数据访问策略”窗格,选择“添加”,选择“参与者”作为角色,然后选择适当的用户。

  8. “转到环境”按钮会打开时序见解资源管理器 如果它不显示任何事件,请模拟设备事件,方法是:浏览到数字孪生示例的 device-connectivity 项目,然后运行 dotnet run

  9. 生成一些模拟的事件以后,请返回到时序见解资源管理器,选择顶部的刷新按钮。 此时将显示针对模拟传感器数据创建的分析图表。

    时序见解资源管理器中的图表

  10. 然后,可以在时序见解资源管理器中针对来自房间、传感器和其他资源的不同事件和数据生成图表和热度地图。 在左侧使用“度量值”和“拆分方式”下拉框创建自己的可视化效果。

    例如,选择“事件”作为“度量值”,选择“DigitalTwins-SensorHardwareId”作为“拆分方式”,以便为每个传感器生成热度地图。 热度地图将类似于下图:

    时序见解资源管理器中的热度地图

清理资源

如果不希望继续探索 Azure 数字孪生,可以删除本教程中创建的资源:

  1. Azure 门户的左菜单中依次选择“所有资源”、数字孪生资源组、“删除”。

    提示

    如果在删除数字孪生实例时遇到麻烦,请使用已推出的包含修补程序的服务更新。 请重新尝试删除实例。

  2. 可以根据需要删除工作计算机上的示例应用程序。

后续步骤

请继续阅读下一篇文章,详细了解 Azure 数字孪生中的空间智能图和对象模型。