QCon 演讲火热征集中,快来分享技术实践与洞见! 了解详情
写点什么

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:18697
用户头像

发布了 1854 篇内容, 共 121.7 次阅读, 收获喜欢 78 次。

关注

评论

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

Nginx面试三连问:如何工作?负载均衡策略有哪些,如何成为一个更好的Java开发者

Java 程序员 后端

MySQL InnoDB 事务隔离级别的实现原理,linux群集部署架构

Java 程序员 后端

MySQL中特别实用的几种SQL语句送给大家,java面试核心知识

Java 程序员 后端

MySQL面试题:谈谈MySQL 索引,B,新鲜出炉的Java面试真题集锦我给你们整理出来了

Java 程序员 后端

Mybatis源码分析二-如何优雅的使用主体日志,zookeeper集群实现原理

Java 程序员 后端

MySQL数据量太大,日常卡死!想跑路了,java三大框架面试题

Java 程序员 后端

MySQL热点面试题:为什么我使用了索引,查询还是慢,java基础入门第二版第四章答案

Java 程序员 后端

Netty入门,javaee教程网上购书系统

Java 程序员 后端

Nginx标准配置文件(包括反向代理、大文件上传,java基础面试问题大全及答案大全

Java 程序员 后端

Maven虐我千百遍,我待Maven如初恋!(1),springcloud实战演练

Java 程序员 后端

MyBatis初级实战之三:springboot集成druid,java实用教程第五版

Java 程序员 后端

Mybatis学习笔记--自定义Mybatis,java数据结构面试题及答案

Java 程序员 后端

Mysql必知必会:物理备份与恢复测试,linux教程第四版答案孟庆昌

Java 程序员 后端

MyBatis07:使用注解开发,java教程视频我赢职场

Java 程序员 后端

mybatis学习一之入门示例,阿里+头条+腾讯等大厂Java面试题分享

Java 程序员 后端

Mybatis学习笔记--多表查询,java入门基础代码

Java 程序员 后端

Mybatis学习笔记--Mybatis的概念与入门案例,java中高级面试题最新

Java 程序员 后端

Nginx如何优雅的实现负载均衡!(建议收藏),腾讯&字节&爱奇艺&网易&华为实习面试汇总

Java 程序员 后端

Nacos 2,Java开发社招面试总结

Java 程序员 后端

MyBatis初级实战之二:增删改查,java项目开发实战入门光盘

Java 程序员 后端

Mybatis学习笔记--延迟加载与缓存,深入分析解读MySQL锁,解决幻读问题

Java 程序员 后端

MyBatis官方文档-入门,java开发工程师技术栈

Java 程序员 后端

Lua+OpenResty+nginx,java菜鸟教程集合

Java 程序员 后端

MyBatis的SQL执行流程不清楚?看完这一篇就够了!,kafka视频教程下载

Java 程序员 后端

MySQL:互联网公司常用分库分表方案汇总!,javaspring框架面试

Java 程序员 后端

MyBatis实现一对一,一对多关联查询,java程序设计教程课后题

Java 程序员 后端

Matlab数值微分与数值积分,linux环境高级编程

Java 程序员 后端

Maven虐我千百遍,我待Maven如初恋!,mongodb教程

Java 程序员 后端

Mybatis入门篇之结果映射,你射准了吗?,java框架ssh和ssm百度

Java 程序员 后端

Mysql 纵表转换为横表,靠着这份190页的面试资料

Java 程序员 后端

Mysql探索之索引详解,又能和面试官互扯了~,mysql基础知识笔记

Java 程序员 后端

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