写点什么

AWS IoT Things Graph

  • 2019-09-29
  • 本文字数:1567 字

    阅读完需:约 5 分钟

AWS IoT Things Graph

去年 11 月,我们曾宣布要推出 AWS IoT Things Graph,并介绍它是一种可用于直观地构建 IoT 应用程序的工具。今天,我很高兴地告诉大家,该服务现已推出,可供您使用!


正如您将在稍后看到的那样,您可以在由设备和服务组成的流中表示您的业务逻辑。每项 Web 服务和每种类型的设备(传感器、摄像头、显示器等)在 Things Graph 中都表示为模型。这些模型隐藏了具体的设备品牌或型号所特有的实施细节,允许您构建可随硬件而演变的流。每个模型都有一组操作(输入)、事件(输出)和状态(属性)。Things Graph 包含一组预定义的模型,并且允许您定义自己的模型。您还可以在流中使用映射,将一个设备的输出转换为其他设备所需要的形式。构建流后,您可以将其部署到启用 [AWS IoT Greengrass] 的设备以用于本地执行。在流部署完毕之后,会协调本地连接的设备和 Web 服务之间的交互。


使用 AWS IoT Things Graph


我们来快速了解一下 AWS IoT Things Graph 控制台!


第一步是确保我拥有代表我计划在流中使用的设备和 Web 服务的模型。首先,单击控制台导航中的模型:



控制台概述了在创建模型时必须遵循的三个步骤,还列出了我的现有模型:



若上面列出的每个设备的 URN 中存在 aws/examples,则表示它们已经过预定义,并且是公共 AWS IoT Things Graph 命名空间的一部分。我单击摄像头来了解有关此模型的更多信息;我可以看到 属性、操作和事件:



模型是使用 GraphQL 定义的;我可以查看、编辑或上传包含模型定义的文件。摄像头的定义如下:



该模型定义了一个抽象的摄像头设备。然后,该模型可以引用一个或多个实际设备的定义,如设备部分中所列:



每个设备也都使用 GraphQL 定义。特别值得注意的是使用 MQTT 主题和消息来定义操作:



前面,我提到模型还可以表示 Web 服务。在部署引用此类型的模型的流时,激活模型上的操作将调用 Greengrass Lambda 函数。定义 Web 服务的方式如下:



现在,我可以创建一个流。单击导航中的流,然后单击创建流:



对流进行命名并输入描述:



首先,我打开一个空画布,然后将节点(设备、服务或逻辑)拖到其中:



在本演示(在 AWS IoT Things Graph 用户指南中有详细说明)中,我将使用 MotionSensor、摄像头和屏幕:


我通过连接设备来定义流:



然后,我对其进行配置和自定义。由于选择和设置很多,因此我将向您展示其中的一些重点,并建议您参阅用户指南以获取更多信息。我设置了 MotionSensor,以便通过状态更改来启动此流:



我还(未显示)将摄像头配置为执行拍摄操作,并配置屏幕来显示它。我还可以使用预定义的服务:



我还可以将逻辑添加到我的流中:



与模型一样,我的流最终使用 GraphQL 进行定义(如果需要,我可以直接查看和编辑它):



现在,我已定义流,接下来我单击发布,使其可用于部署:



接下来的步骤是:


关联 – 此步骤会将实际的 AWS IoT Thing 分配给设备模型。我选择了 Thing,然后选择一个设备模型,并为我的流中的每个设备模型重复此步骤:



部署 – 我创建一个流配置,在云或 Greengrass 上定位它,并使用它来部署我的流(阅读创建流配置以了解更多信息)。


注意事项


在本文中,我只略作讲述;AWS IoT Things Graph 为您提供了强大的功能和灵活性,更多信息将留待您自己去发现!


这里需要牢记几点:


定价 – 定价基于执行的步骤(针对云部署)或部署(针对边缘部署),已在 AWS IoT Things Graph 定价页面上予以详细说明。


API 访问 – 除了控制台访问外,您还可以使用 AWS IoT Things Graph API 构建模型和流。


区域 – AWS IoT Things Graph 已在 美国东部(弗吉尼亚北部)、美国西部(俄勒冈)、欧洲(爱尔兰)、亚太地区(悉尼)和亚太地区(东京)推出。


作者介绍:


Jeff Barr


AWS 首席布道师; 2004 年开始发布博客,此后便笔耕不辍


本文转载自 AWS 技术博客。


原文链接:


https://amazonaws-china.com/cn/blogs/china/now-available-aws-iot-things-graph/


2019-09-29 09:18735
用户头像

发布了 1856 篇内容, 共 129.5 次阅读, 收获喜欢 81 次。

关注

评论

发布
暂无评论
发现更多内容

30岁,就被大厂抛弃了

J.Smile

求职

数据同步,应该如何设计

迹_Jason

Android 无埋点从入门到放弃:了解 Java 字节码

GrowingIO技术专栏

系统/子系统/模块/组件/框架/架构

gen_jin

你并不理解i++和++i

flyhero

Java 程序员 JVM i++

钟离昧的第一张架构设计图之旅

XxxxxxxMr

非结构化数据可视化 —— 现在与未来

做技术BP的文案Gou

人工智能 大数据 数据可视化 非结构化数据

架构第一周-学习总结

seng man

使用VSCode连接到IBM Cloud区块链网络

程序那些事

智能合约 hyperledger fabric ibm cloud

2020年6月11日 高性能MySQL

瑞克与莫迪

可视化算法网站汇总,从此简单学算法!(附动图)

王磊

Java 算法

读笔 | 既然拖延症难以根治,不妨暂且享受它

张鸱鸺

读书笔记 时间管理 随笔杂谈

关于UML、4+1视图、系统架构的思考

吴建中

LocalDateTime和Date的比较与区别

彭阿三

时间格式化 LocalDateTime Date

架构师训练营第一周学习总结

R20114

<<架构师训练营>>第一周作业

R20114

极客大学架构师训练营

【写作群星榜】6.5~6.11写作平台优秀作者&文章排名

InfoQ写作社区官方

写作平台 排行榜 热门活动

02-kubernetes自建CA及双向TLS认证

绿星雪碧

Kubernetes TLS CA证书

极客大学架构师训练营 听课总结 - 架构视图,设计文档 -- 第二课

John(易筋)

极客时间 极客大学 架构设计 极客大学架构师训练营 架构文档

搭建websocket消息推送服务,必须要考虑的几个问题

GoEasy消息推送

websocket 消息推送 即时通讯

vs code中使用vetur对eslint格式化

玏佾

vscode

作业 - 1 & 2

Happy-Coming

Homework

Intellij IDEA 右击没有run

程李文华

面向对象五大基本原则

彭阿三

面向对象设计 面向对象五个基本原则 基本原则

游戏夜读 | 如何成长为游戏人?

game1night

作业一:食堂就餐卡系统设计

seng man

极客大学架构师训练营

从微服务到Service Mesh

博文视点Broadview

架构 微服务 Service Mesh istio 架构师

数据库周刊27丨6月最新国产数据库排行;OB成立新公司奥星贝斯;腾讯云发布图数据库TGDB;Oracle坏块修复;MySQL故障排查导图;经典SQL语句大全...

墨天轮

数据库

钟离昧的一梭子架构师之旅

XxxxxxxMr

独立开发者为什么不需要运营也能月薪几万,甚至几十万?

非著名程序员

程序员 独立开发者 副业赚钱 程序人生 提升认知

架构第一课学习总结

师哥

AWS IoT Things Graph_语言 & 开发_亚马逊云科技 (Amazon Web Services)_InfoQ精选文章