我们使用机器学习技术将英文博客翻译为简体中文。您可以点击导航栏中的“中文(简体)”切换到英文版本。
如何通过解锁 50 个 亚马逊云科技 IoT 事物类型属性来提高设备可发现性
简介
如果您正在使用或计划使用
“事物” 是 亚马逊云科技 IoT Core 中支持物联网的设备等实体的逻辑名称。在配置事物时,您可以附加可搜索的属性,以便更轻松地在 亚马逊云科技 IoT 注册表中进行识别和搜索。
为什么有人想从 亚马逊云科技 IoT 注册表中搜索内容?为了回答这个问题,让我们以联网照明的用例为例,照明即服务提供商 (LaaS) 或其客户(通过自助服务门户)需要从其照明安装基础上确定有多少属于特定的产品类型、型号、瓦数、亮度、颜色和生产批次。
亚马逊云科技 IoT Core 限制仅向事物附加 3 个可搜索的属性,如果您需要根据其他属性发现设备,这可能还不够。在这篇博客文章中,我们将展示如何结合使用亚马逊云科技 IoT Core
借助舰队索引,舰队管理员可以组织、调查设备群并对其进行故障排除。他们可以查询一组设备,并根据设备属性的不同组合(包括状态、连接和设备违规)汇总设备记录的统计信息。例如,您可以查询信息,例如安装在某个位置的特定型号的灯泡当前有多少已断开连接且正在运行旧版本的固件。
先决条件
这篇博客文章需要对 亚马逊云科技 IoT Core 的
草率排练
现在让我们看看如何向事物添加不可搜索的属性,以及如何使用队列索引进行搜索,即使在使用不可搜索的属性时也是如此。
让我们预置一个 “myFirstThing” 的东西,并为其附加可搜索的属性。正如你在下面的快照中所看到的,你只能附加 3 个可搜索的属性。
要为此事物添加更多属性,可以向该事物附加 “事物类型”。
“事物类型” 允许您存储与同一事物类型关联的所有事物共有的描述和配置信息。这简化了注册表中事物的管理。例如,您可以创建名为 “LightBulb” 的事物类型,并将灯泡的属性(例如序列号、亮度、瓦特数等)关联起来,而不是单独为每个灯泡分配属性。此外,如果您将现有事物的类型更改为 “LightBulb”,它将继承事物类型的属性,您可以为 “事物类型” 中定义的每个属性指定值。
尽管为事物分配事物类型是一项可选活动,但使用它可以解锁其他 47 个 “不可搜索的事物属性” 的新部分。通过此关联,您现在可以访问总共 50 个属性,如以下快照所示。
在这篇文章中,我们已经创建了一个具有可搜索属性(例如制造商、序列号和瓦特数)的 “LightBulb” 事物类型,并将其分配给 “myFirstThing”。我们还附上了 3 个不可搜索的属性(颜色、固件类型、亮度),如以下快照所示。
现在,让我们尝试使用 亚马逊云科技 CLI 中的 “列出事物” 命令来搜索内容。我们可以看到,使用 “可搜索” 属性进行搜索时,该命令会返回匹配的内容 “LightBulb_1”。
aws iot list-things --attribute-name "wattage" --attribute-value '40'
{
"things": [
{
"thingName": "LightBulb_1",
"thingTypeName": "LightBulb",
"thingArn": "arn:aws:iot:ap-south-1:************:thing/LightBulb_1",
"attributes": {
"Color": "White",
"Firmware_Type_Version": "Smart_LED.1.0",
"Luminosity": "100",
"manufacturer": "xyz_corp",
"serialnumber": "123",
"wattage": "40"
},
"version": 5
}
]
}
但是,使用 “不可搜索” 的属性进行搜索时,该命令不返回任何内容,因为通过事物类型添加的属性被归类为不可搜索。
aws iot list-things --attribute-name "Color" --attribute-value 'White'
{
"things": []
}
这就是 亚马逊云科技 IoT Device Management 队列索引功能的帮助之处,它使您即使在 “不可搜索” 的事物属性上也可以运行搜索查询。
使用 亚马逊云科技 IoT Device Management 机群索引,您可以从以下来源索引、搜索和汇总您的设备数据:亚马逊云科技 IoT 注册表、亚马逊云科技 IoT Device Shadow、亚马逊云科技 IoT 连接和 亚马逊云科技 IoT Device Defender 违规行为。
尽管舰队索引功能将上述功能作为其主要功能,但在这篇博客文章中,我们将仅关注基于事物类型属性的索引和搜索。
现在,让我们使用 亚马逊云科技 IoT 控制台启用队列索引(如果已启用,请跳过此步骤),但也可以从 CLI 中启用。 从左侧面板中选择 “ 设置 ”,向下滚动到 “ 舰队索引 ”, 然后选择 “ 管理索引 ” ,如下所示:
在管理舰队索引屏幕上,切换开关以激活舰队索引,如下所示,然后选择屏幕 底部的 更新 以保存设置。
上一个屏幕上显示的其他复选框允许根据设备影子、连接状态和 Device Defender 违规行为进行索引和搜索查询,这些超出了本文的范围,因此此处未选中。
启用舰队索引后, 从 亚马逊云科技 IoT Manage Things 控制台中选择 高级搜索 ,如以下快照所示。
使用搜索框搜索不可搜索的属性,例如,值为 “白色” 的 “颜色”,您将看到具有匹配属性值的内容将作为搜索结果显示在屏幕底部,如下所示。
您还可以使用 亚马逊云科技 CLI 对值为 “白色” 的不可搜索属性 “颜色” 的设备运行类似的队列索引查询,其中返回具有匹配属性值的事物,如下所示。
aws iot search-index –query-string ‘attributes.color=White’
{
"things": [
{
"thingName": "LightBulb_1",
"thingId": "******************************",
"thingTypeName": "LightBulb",
"attributes": {
"Color": "White",
"Firmware_Type_Version": "Smart_LED.1.0",
"Luminosity": "100",
"manufacturer": "xyz_corp",
"serialnumber": "123",
"wattage": "40"
}
}
]
}
但是,还需要注意的是,亚马逊云科技 IoT Device Management 机群索引仅用于管理目的,允许管理员对设备队列进行组织、调查和故障排除,只能用于此类活动。
舰队索引和搜索功能由执行的索引更新和搜索查询的数量来衡量。请参阅定
结论
在这篇文章中,我向您展示了如何使用 亚马逊云科技 IoT 事物类型和 亚马逊云科技 IoT Device Management 队列索引来增强设备的可发现性。事物类型使您能够为事物附加其他属性(不可搜索),尽管这些属性不可搜索,但您可以使用队列索引功能根据不可搜索的属性进行搜索,从而可以方便地从庞大的物联网设备队列中筛选和查找这些设备。
如需更多 亚马逊云科技 IoT Core 学习资源,请访问该
*前述特定亚马逊云科技生成式人工智能相关的服务仅在亚马逊云科技海外区域可用,亚马逊云科技中国仅为帮助您发展海外业务和/或了解行业前沿技术选择推荐该服务。