你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
教程:使用 Power BI 可视化 Azure IoT 中心的实时传感器数据
了解如何使用 Microsoft Power BI 可视化 Azure IoT 中心接收的实时传感器数据。 为此,请配置 Azure 流分析作业,来使用 IoT 中心内的数据并将其路由到 Power BI 中的数据集。
Microsoft Power BI 是一种数据可视化工具,可用于对大型数据集执行自助服务和企业商业智能 (BI)。 Azure 流分析是一项完全托管的实时分析服务,旨在帮助你分析和处理可用于获取见解、生成报表或触发警报和操作的快速移动数据流。
将在本教程中执行以下任务:
- 在 IoT 中心创建使用者组。
- 创建并配置 Azure 流分析作业,以便从使用者组读取温度遥测数据并将其发送到 Power BI。
- 在 Power BI 中创建温度数据的报表,并将其共享到 Web。
如果还没有 Azure 订阅,可以在开始前创建一个免费帐户。
先决条件
开始本教程之前,需要具备以下先决条件:
使用你选择的开发语言完成某个发送遥测数据快速入门。 或者,可使用任何发送温度遥测数据的设备应用,例如 Raspberry Pi 联机模拟器或某个嵌入式设备教程。 这些文章阐述下列要求:
- 一个有效的 Azure 订阅。
- 订阅中的 Azure IoT 中心。
- 一个可向 Azure IoT 中心发送消息的客户端应用。
一个 Power BI 帐户。 免费试用 Power BI。
将使用者组添加到 IoT 中心
使用者组提供事件流的独立视图,可让应用和 Azure 服务单独使用同一事件中心终结点内的数据。 在本部分中,需要将一个使用者组添加到 IoT 中心的内置终结点,本教程稍后部分将使用该组从该终结点拉取数据。
要将使用者组添加到 IoT 中心,请执行以下步骤:
在 Azure 门户中打开 IoT 中心。
在左侧窗格中,选择“内置终结点”。 在“使用者组”下的文本框中,输入新使用者组的名称。
单击文本框以外的任意位置以保存使用者组。
创建、配置和运行流分析作业
创建流分析作业。 创建作业后,可以定义输入、输出和用于检索数据的查询。
创建流分析作业
创建流分析作业,用于将数据从 IoT 中心路由到 Power BI。
在 Azure 门户中,选择“创建资源”。 在搜索框中键入“流分析作业”,然后从下拉列表中选择它。 在“流分析作业”概述页面中,选择“创建”
在“新建流分析作业”页的“基本信息”选项卡中,输入以下信息:
参数 值 订阅 选择包含你的 IoT 中心的订阅。 资源组 选择包含你的 IoT 中心的资源组。 Name 输入作业的名称。 该名称必须全局唯一。 区域 选择你的 IoT 中心所在的区域。 将所有其他字段保留为默认值。
选择“查看 + 创建”,然后选择“创建”以创建流分析作业。
创建新作业后,选择“转到资源”。
将输入添加到流分析作业
配置流分析作业以从 IoT 中心收集数据。
打开流分析作业。
从导航菜单的“作业模拟”部分选择“输入”。
选择“添加输入”,然后从下拉列表中选择“IoT 中心”。
在新输入窗格中输入以下信息:
参数 值 输入别名 为输入提供唯一别名。 例如 PowerBIVisualizationInput
。订阅 选择本教程使用的 Azure 订阅。 IoT 中心 选择用于本教程的 IoT 中心。 使用者组 选择之前创建的使用者组。 共享访问策略名称 选择你希望流分析作业对你的 IoT 中心使用的共享访问策略的名称。 对于本教程,可以选择“服务”。 “服务”策略是在新 IoT 中心内默认创建的,它授予在 IoT 中心公开的云端终结点上发送和接收数据的权限。 有关详细信息,请参阅访问控制和权限。 共享访问策略密钥 系统会根据你选择的共享访问策略名称自动填充此字段。 终结点 选择“消息传送”。 将所有其他字段保留为默认值。
选择“保存”。
将输出添加到流分析作业
从导航菜单的“作业模拟”部分选择“输出”。
选择“添加输出”,然后在下拉列表中选择“Power BI”。
登录到 Power BI 后,输入以下信息以创建 Power BI 输出:
参数 值 输出别名 输出的唯一别名。 例如 PowerBIVisualizationOutput
。组工作区 选择目标组工作区。 身份验证模式 如果你没有使用托管标识进行身份验证的正确权限,门户会发出警告。 如果是这种情况,请改为选择“用户令牌”。 数据集名称 输入数据集名称。 表名称 输入表名称。 选择“授权”并登录到 Power BI 帐户。
选择“保存”。
配置流分析作业的查询
从导航菜单的“作业模拟”部分选择“查询”。
在查询编辑器中,将
[YourOutputAlias]
替换为作业的输出别名。将
[YourInputAlias]
替换为作业的输入别名。将以下
WHERE
子句添加到查询的最后一行。 此行确保仅将具有温度属性的消息转发到 Power BI。WHERE temperature IS NOT NULL
查询应类似于以下屏幕截图。 选择“保存查询”。
运行流分析作业
- 在流分析作业中选择“概述”。
- 选择“启动”>“立即”>“启动”。 成功启动作业后,作业状态将从“已停止” 更改为“正在运行” 。
创建并发布实现数据可视化的 Power BI 报表
以下步骤说明如何使用 Power BI 服务创建和发布报表。
确保你的 IoT 设备正在运行,并将温度数据发送到 IoT 中心。
登录到 Power BI 帐户。
从侧边菜单中选择“工作区”,然后选择你在流分析作业输出中选择的组工作区。
在工作区视图中,你应当会看到你在为流分析作业创建输出时指定的数据集。
将鼠标悬停在创建的数据集上,选择“更多选项”菜单(数据集名称右侧三个点),然后选择“创建报表” 。
创建折线图,显示某段时间的实时温度。
在报表创建页的“可视化”窗格中,选择折线图图标以添加折线图。 使用位于图表的侧边和角上的参考线来调整其大小和位置。
在“字段”窗格中展开一个表,该表是在为流分析作业创建输出时指定的。
将 EventEnqueuedUtcTime 拖至“可视化效果”窗格中的“X 轴”。
将“温度”拖至“Y 轴”。
已创建一个折线图。 X 轴显示 UTC 时区的日期和时间。 Y 轴显示来自传感器的温度。
注意
字段列表可能略有不同,具体取决于用于发送遥测数据的设备或模拟设备。
选择“文件”>“保存”以保存报表。 出现提示时,输入报表的名称。
依然是在报表窗格中,选择“文件”>“嵌入报表”>“网站或门户” 。
注意
如果收到通知,让你联系管理员启用嵌入代码创建,则可能需要联系管理员。 必须先启用嵌入代码创建才能完成此步骤。
系统会提供一个报表链接和一个代码片段,你可将链接共享给任何需要进行报表访问的人员,而代码片段可用于将报表集成到博客或网站中。 复制“安全嵌入代码”窗口中的链接,然后关闭该窗口。
打开 Web 浏览器并将链接粘贴到地址栏中,以在浏览器中查看报表。
Microsoft 还提供 Power BI 移动应用,用于在移动设备上查看 Power BI 仪表板和报表并进行交互。
清理资源
在本教程中,你在 Power BI 中创建了一个流分析作业和一个数据集。
如果你打算完成其他教程,可能需要保留资源组和 IoT 中心,以便稍后重复使用。
清理 Azure 资源
你的流分析作业应与 IoT 中心位于同一资源组中。 如果不再需要 IoT 中心或创建的其他资源,可在 Azure 门户中删除整个资源组。 或者,可以删除单个资源。
- 在 Azure 门户中导航到资源组。
- 检查组中的资源。 若要全部删除它们,请选择“删除资源组”。 如果要删除单个资源,请右键单击该资源,从上下文菜单中选择“删除”,然后按照提示操作。
若要删除资源组及其所有资源,也可使用 az group delete 命令:
az group delete --name {your resource group}
清理 Power BI 资源
你在 Power BI 中创建了一个数据集 PowerBiVisualizationDataSet。 可以删除数据集以及从 Power BI 服务创建的关联报表。
- 登录到 Power BI 帐户。
- 选择“工作区”,然后选择包含数据集的工作区的名称。
- 将鼠标悬停在 PowerBiVisualizationDataSet 数据集上,然后选择显示的三个水平点以打开“更多选项”菜单。
- 选择“删除”并按照提示操作。 删除数据集时,报表也随之删除。
后续步骤
在本教程中,你学习了如何使用 Power BI 可视化 Azure IoT 中心内的实时传感器数据。
有关可视化 Azure IoT 中心中的数据的另一种方法,请参阅以下教程: