你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

教程:使用 Power BI 可视化 Azure IoT 中心的实时传感器数据

可以使用 Microsoft Power BI 可视化 Azure IoT 中心接收的实时传感器数据。 为此,请将 Azure 流分析作业配置为使用 IoT 中心中的数据,并将其路由到 Power BI 中的数据集。

显示从设备到 Power BI 的数据流的关系图。

Microsoft Power BI 是一种数据可视化工具,可用于对大型数据集执行自助服务和企业商业智能(BI)。 Azure 流分析 是一项完全托管的实时分析服务,旨在帮助分析和处理可用于获取见解、生成报表或触发警报和作的快速移动数据流。

将在本教程中执行以下任务:

  • 在 IoT 中心创建使用者组。
  • 创建和配置 Azure 流分析作业,以便从使用者组读取温度遥测数据并将其发送到 Power BI。
  • 在 Power BI 中创建温度数据的报表并将其共享到 Web。

如果没有 Azure 订阅,请在开始之前创建一个免费帐户

先决条件

在开始本教程之前,请满足以下先决条件:

将使用者组添加到 IoT 中心

使用者组提供事件流的独立视图,可让应用和 Azure 服务单独使用同一事件中心终结点内的数据。 在本部分中,需要将一个使用者组添加到 IoT 中心的内置终结点,本教程稍后部分将使用该组从该终结点拉取数据。

若要将使用者组添加到 IoT 中心,请执行以下步骤:

  1. Azure 门户中,打开 IoT 中心。

  2. 在左窗格中,选择“中心设置”下的“内置终结点”。 在 使用者组下的文本框中输入新使用者组的名称。

    显示如何在 IoT 中心创建使用者组的屏幕截图。

  3. 选择文本框外的任意位置以保存使用者组。

创建、配置和运行流分析作业

创建流分析作业。 创建作业后,定义用于检索数据的输入、输出和查询。

创建流分析作业

创建一个流分析作业,用于将数据从 IoT 中心路由到 Power BI。

  1. Azure 门户中,选择“创建资源”。 在搜索框中键入 流分析作业,然后从下拉列表中选择它。 在 流分析作业 概述页上,选择 创建

  2. “新建流分析作业”页的“基本信息”选项卡中,输入以下信息:

    参数 价值
    订阅 选择包含 IoT 中心的订阅。
    资源组 选择包含 IoT 中心的资源组。
    名称 输入作业的名称。 该名称在全球范围内必须唯一。
    区域 选择 IoT 中心所在的区域。

    将所有其他字段保留为默认值。

    显示创建流分析作业的屏幕截图。

  3. 选择 “查看 + 创建”,然后选择“ 创建 ”以创建流分析作业。

  4. 创建作业后,选择“ 转到资源”。

向流分析作业添加输入

配置流分析作业以从 IoT 中心收集数据。

  1. 打开流分析作业。

  2. 从导航菜单的“作业拓扑”部分选择“输入”。

  3. 选择 “添加输入”,然后从下拉列表中选择 “IoT 中心 ”。

    显示从“添加输入”菜单中选择 IoT 中心的屏幕截图。

  4. 在新输入窗格中,输入以下信息:

    参数 价值
    输入别名 为输入项输入一个唯一的别名。 例如,PowerBIVisualizationInput
    订阅 选择用于本教程的 Azure 订阅。
    IoT 中心 选择用于本教程的 IoT 中心。
    使用者组 选择之前创建的使用者组。
    共享访问策略名称 选择您希望 Stream Analytics 作业使用的 IoT Hub 共享访问策略名称。 对于本教程,可以选择 服务服务策略默认在新 IoT 中心上创建,并授予在 IoT 中心公开的云终结点上发送和接收的权限。 若要了解详细信息,请参阅 访问控制和权限
    共享访问策略密钥 根据所选的共享访问策略名称自动填充此字段。
    终结点 选择 消息传送

    将所有其他字段保留为默认值。

  5. 选择“保存”

向流分析任务添加输出

  1. 从导航菜单的“作业模拟”部分选择“输出”。

  2. 选择 “添加输出”,然后从下拉列表中选择 “Power BI ”。

    显示从“添加输出”菜单中选择 Power BI 的屏幕截图。

  3. 登录到 Power BI 后,输入以下信息来创建 Power BI 输出:

    参数 价值
    输出别名 输出的唯一别名。 例如,PowerBIVisualizationOutput
    组工作区 选择目标组工作区。
    身份验证模式 如果无权使用托管标识进行身份验证,门户会发出警告。 如果是这种情况,请改为选择 “用户令牌 ”。
    数据集名称 输入数据集名称。
    表名称 输入表名称。
  4. 选择 “授权 ”并登录到 Power BI 帐户。

  5. 选择“保存”

配置流分析作业的查询

  1. 从导航菜单的“作业拓扑”部分选择“查询”。

  2. 在查询编辑器中,将[YourOutputAlias]替换为作业的输出别名。

  3. [YourInputAlias] 替换为作业的输入别名。

  4. 将以下 WHERE 子句添加到查询的最后一行。 此行可确保仅将具有 温度 属性的消息转发到 Power BI。

    WHERE temperature IS NOT NULL
    
  5. 查询应类似于以下屏幕截图。 选择“保存查询”。

     显示向流分析作业添加查询的屏幕截图。

运行流分析作业

  1. 在流分析作业中,选择“ 概述”。
  2. 选择“立即>启动作业>”。 作业成功启动后,作业状态将从 “已停止” 更改为 “正在运行”。

创建并发布 Power BI 报表以可视化数据

以下步骤演示如何使用 Power BI 服务创建和发布报表。

  1. 确保 IoT 设备正在运行并将温度数据发送到 IoT 中心。

  2. 登录到 Power BI 帐户。

  3. 从侧菜单中选择 “工作区 ”,然后选择在流分析作业输出中选择的组工作区。

  4. 在工作区视图中,应会看到在为流分析作业创建输出时指定的数据集。

  5. 将鼠标悬停在创建的数据集上,选择“ 更多选项 ”菜单(数据集名称右侧的三个点),然后选择“ 创建报表”。

    显示创建Microsoft Power BI 报表的屏幕截图。

  6. 创建折线图以显示随时间推移的实时温度。

    1. 在报表创建页的 “可视化效果 ”窗格中,选择折线图图标以添加折线图。 使用位于图表边角的参考线调整其大小和位置。

    2. 字段 窗格中,展开在为流分析作业创建输出时指定的表。

    3. EventEnqueuedUtcTime 拖到可视化效果窗格上的 X 轴

    4. 温度 拖到 Y 轴

      创建折线图。 x 轴在 UTC 时区中显示日期和时间。 y 轴显示传感器的温度。

      向 Microsoft Power BI 报表添加温度折线图

    注释

    字段列表可能略有不同,具体取决于用于发送遥测数据的设备或模拟设备。

  7. 选择“ 文件>保存” 以保存报表。 出现提示时,输入报表的名称。

  8. 仍在报表窗格中,选择“ 文件>嵌入报表>网站或门户”。

    注释

    如果收到通知,让你联系管理员启用嵌入代码创建,则可能需要联系管理员。 必须先启用嵌入代码创建,然后才能完成此步骤。

    显示“联系管理员通知”的屏幕截图。

  9. 你提供了报表链接,你可以与任何人共享报表访问权限,以及可用于将报表集成到博客或网站的代码片段。 复制 “安全嵌入代码 ”窗口中的链接,然后关闭该窗口。

  10. 打开 Web 浏览器并将链接粘贴到地址栏中,在浏览器中查看报表。

Microsoft还提供 Power BI 移动应用 ,用于查看和与移动设备上的 Power BI 仪表板和报表进行交互。

清理资源

在本教程中,你在 Power BI 中创建了流分析作业和数据集。

如果打算完成其他教程,可能需要保留资源组和 IoT 中心,以便稍后可以重复使用它们。

清理 Azure 资源

流分析作业应与 IoT 中心位于同一资源组中。 如果不再需要 IoT 中心或其他资源,可以在 Azure 门户中删除整个资源组。 或者,可以删除单个资源。

  1. 在 Azure 门户中导航到资源组。
  2. 查看组中的资源。 如果要全部删除它们,请选择“ 删除资源组”。 如果要删除单个资源,请右键单击该资源,从上下文菜单中选择“ 删除 ”,然后按照提示进行作。

若要删除资源组及其所有资源,还可以使用 az group delete 命令:

az group delete --name {your resource group}

清理 Power BI 资源

已在 Power BI 中创建数据集 PowerBiVisualizationDataSet。 可以删除从 Power BI 服务创建的数据集和关联的报表。

  1. 登录到 Power BI 帐户。
  2. 选择 工作区,然后选择包含数据集的工作区的名称。
  3. 将鼠标悬停在 PowerBiVisualizationDataSet 数据集上,然后选择显示打开 “更多选项 ”菜单的三个水平点。
  4. 选择“删除”并按照提示操作。 删除数据集时,也会删除报表。

后续步骤

本教程介绍了如何使用 Power BI 可视化 Azure IoT 中心的实时传感器数据。

有关可视化 Azure IoT 中心数据的另一种方法,请参阅以下教程: