本文将描述如何在Azure上启动一个弹坑数据库集群,将其连接到Azure物联网中心,并通过使用Azure物联网解决方案加速器接收模拟传感器数据进行测试。
有必要首先了解您的物联网应用将产生的数据类型,以便为测试目的准确模拟这些信息。 例如,智能工厂将拥有无数的传感器来收集各种结构的数据。 环形山数据库使得通过使用动态对象在单个表中建模不同的数据结构成为可能,动态对象可以被查询到任意深度(这是 不 这是推荐的生产实践,但在本演示的简单范围内是有帮助的)。
Azure提供了几个物联网解决方案加速器——旨在支持和加速物联网项目的预配置模板——包括一个能够模拟一系列物联网设备的设备模拟加速器。 使用这种方法生成的数据可以被推送到Azure物联网中心,然后被接收到环形山数据库中。
要创建新的设备模拟,请转到微软Azure IoT解决方案加速器站点中的“新设备模拟”页面,并输入所需信息(包括部署名称、Azure订阅、部署选项和Azure位置):
在本例中,设备模拟被命名为装箱接收,并使用Azure订阅箱开发,即部署选项 提供新的物联网中心,以及Azure位置 西欧。 准备就绪后,单击创建按钮将开始15-20分钟的部署新设备模拟的过程。 当模拟可用时,您将收到一封通知电子邮件。
现在,您可以在界面中查看您的解决方案加速器:
接下来,单击 我的解决方案 选项卡,并选择适当的 发动 按钮。
现在,您将看到解决方案加速器界面。 选择新模拟,并填写必要的信息:
我们的示例模拟被命名为SensorDevice。 并设置为10分钟后停止。 它还使用 冷却器 设备模型,提供来自测量温度、压力和湿度的模拟传感器的遥测数据。 我们将这些模拟设备的数量设置为10,它们每秒发送的消息总数为1。 我们还选择了 使用预配置的物联网集线器,和 S2标准 对于节流限制。
输入正确的设置后,单击 开始模拟 按钮。 Azure将开始模拟并显示类似如下的屏幕:
在我们的示例中,模拟在10分钟的时间内总共生成了520条消息。 这些消息也称为事件,一旦设置完成,我们将把它们推送到弹坑数据库。
接下来,访问Azure门户开始配置。 在Azure门户屏幕上,使用顶部的搜索栏搜索”资源组“。 应该有一个与您的解决方案加速器部署同名的新可用资源组(如果您将解决方案加速器部署到现有资源组,则不会创建新组)。 在我们的示例中,资源组环形山摄取与设备模拟同名:
资源组包括13个列出的资源。 出于我们的目的,我们需要调整的配置 物联网枢纽 and 存储帐户 资源类型,如 类型 列。
上面的截图显示,在我们的例子中,物联网中心资源的名称是IoT Hub-oo6xx。 选择您的物联网中心资源,然后选择 内置端点 选项在下 设置。 在。。.下面 消费者团体 部分,创建一个新的消费者群体:我们的示例使用了名称“环形山摄取”。
请务必记住您选择的名称并复制 与事件中心兼容的端点 网址(在下面的截图中两者都用红色标出),因为您将在后面的步骤中需要这些。
现在,选择 信息发送 从菜单中添加新路线。 给路线命名(在我们的示例中,我们将再次使用环形山摄取)。 接下来,选择端点事件,并将数据源设置为 设备遥测信息. 保存您的更改以完成您的物联网集线器配置。
返回资源组,使用下面屏幕截图中的设置创建新的存储帐户:
也可以选择使用解决方案加速器创建的存储帐户。 但是,如果您要删除解决方案加速器,您需要为其他使用情形创建一个新的存储帐户。 因此,首先为数据创建一个单独的存储帐户可能是有意义的。
我们将使用blob存储来从事件队列中“检查”数据。 有了您的存储帐户,创建一个blob存储。 下一个,在下面 设置,选择 访问键 并复制存储帐户名和blob存储连接字符串(在下面的屏幕截图中用红色标出)。
为了成功地建立环形山数据库云,您应该在Azure上建立您的设备模拟器,并准备好以下关键信息:
- 您的Azure消费群名称
- 使用者组事件中心兼容的端点网址
- 您的存储帐户名(您用于Azure blob存储的帐户名)
- 斑点存储连接网址
要开始与环形山云交互,您可以使用克罗德命令行界面工具。 使用以下命令安装克罗德:
然后登录:
将会打开一个浏览器窗口,您可以使用它登录到您的弹坑数据库帐户(如果需要,您也可以使用 签约雇用 链接):
环形山云帐户的组织如下:
在结构上,所有的环形山云帐户都属于一个组织。 每个组织可以有多个项目。 每个项目可以有多个环形山数据库集群,每个集群可以有多个活动客户。
首先,使用以下命令创建一个新组织:
现在,您可以创建您的第一个项目。 在下一个命令中,确保用您自己的组织标识替换组织标识(在上面命令的输出表中提供)。
该命令的输出表现在返回项目标识(在我们的示例中是d24b 6665-9719-42e 8-9876-9b7f 300 DD 159)。
接下来,您可以部署一个环形山集群。 确保用您自己的项目标识替换项目标识,用您的数据库管理用户界面用户名和密码替换用户名和密码:
关于最后一组命令的细节:我们的例子使用了装箱。az-gp1作为产品,位于“超小型”xs层(其他选项可用)。 与此同时,集群大小是以 单位:一个单元包含三个节点。 该命令部署CrateDB版本3。3.3在一个单元(一个三节点集群)中,名为环形山。 成功的群集部署命令的输出表将显示标识、名称、完全限定的域名(FQDN)和网址,如上面的示例所示。
虽然该命令将立即返回输出表,但环形山云将需要几分钟时间来完成集群的部署。 要验证群集是否可用,请使用浏览器访问群集网址。 群集网址允许您访问群集的管理用户界面(一旦运行)。 您可以使用创建集群时选择的用户名和密码登录管理用户界面。 当您登录时,您将看到类似于此屏幕截图的界面:
为了让环形山数据库使用之前生成的模拟事件,您需要创建一个表来保存传感器数据。
使用环形山用户界面,选择 安慰 从菜单上。 将此输入控制台:
该命令指示应将传感器数据建模为一个动态对象,称为有效负载,它能够处理任意结构的传感器读数。
该命令还生成一个事件时间戳,以及基于当前一周开始的时间戳,这使得可以按周对表进行分区。 通过减少要处理的记录总数,这种划分在极大地提高日期范围查询的速度方面很有价值数据库增量同步 。
要创建此表,请选择 EXECUTE QUERY.
准备好记录传感器事件的表格后,您就可以预订您的设备模拟物联网中心,使用环形山事件消费者来接收事件。
使用以下命令部署事件使用者。 请务必:
- 用正确的项目标识和集群标识替换项目标识和集群标识。
- 将事件集线器_DSN替换为事件集线器兼容的连接字符串,将消费者_组替换为消费者组的名称,这是您在配置Azure IoT集线器端点时使用的名称。
- 用正确的blob存储连接URL替换STORAGE_DSN。
- 用您的Azure存储帐户名替换STORAGE_CONTAINER。
该命令在xs(超小型)层使用eventhub-consumer产品,并部署一个名为环形山摄取的使用者,以写入文档模式中的原始表。
一个成功的命令将开始把数据从Azure设备模拟器发送到环形山数据库。 要验证此数据流,请使用菜单导航到环形山数据库管理用户界面中的表格屏幕(如下图所示):
在我们的示例中,该页面验证原始表包含560条记录。
接下来,选择 QUERY TABLE 要查看模拟数据本身:
您现在可以查看模拟物联网传感器产生的湿度、温度和压力数据。
使用这些技术,您可以使用微软Azure模拟真实的物联网传感器数据并生成事件,然后部署一个环形山数据库集群,并使用Azure物联网集线器订阅您的集群以接收事件流。