大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。
Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺
1、AWS 的物联网架构
Amazon Web Services (AWS) 是一个安全的云服务平台,提供计算能力、数据库存储、内容交付以及其他功能来帮助实现业务扩展和增长。了解数以百万计的客户目前如何利用 AWS 云产品和解决方案来构建灵活性、可扩展性和可靠性更高的复杂应用程序。
AWS IOT 主要是解决 物联网 相关问题的, AWS IOT 的基本架构如下:
AWS IOT 的架构主要 由三大部分组成,分别在边缘端和云端。
Edge : things 数据产生的来源,也是经过数据分析后,你要执行的对象,所以 things 既是起源,也是终源。一般配置比较低,但是每天都会产生无穷的数据。具有非常小的处理能力和计算能力。
Cloud:必不可少的,具有强大的数据存储能力、数据分析能力和处理能力。
Intelligence:更偏向于目的,实现智能化。
主要包括,大数据分析,机器学习,巨大的数据库 redshift 等。通过对数据的分析,你能了解到你设备的状态,可以预测设备未来的状态(预测可能出现的问题)。
你可以在云端训练你的数据,优化你的模型,然后在将你优化后的模型适用到你的边缘端的设备。
这里所有的前提是,你的数据必须能够上传到云端。但是如果你的数据无法上传到云端呢,这个时候 Greengrass 就派上用场了。
2 在 边缘端(事物端)处理数据的价值
如果这个数据送不上来,怎么办呢?那有人可能说了,那数据为什么送不上来呢?现在科技那么发达,网络那么发达,怎么可能送不上来?当然这个有很多情况:
- 物理规律的限制 。有时候即便能够将数据上传上去,这个delay 也是不能承受的,比如在无人驾驶的场景,紧急刹车的时候,你要把数据上传到云端,让云端告诉你该不该刹车吗?哪怕这个 delay 很短,不过可能也就几十个 ms ,不过也行就这几十个 ms ,一起车祸就发生了。那还有人说了,随着科技的发展,这个 delay 会越来越小,但是光速是一定的,delay 再小也是存在的,这是由于物理规律 限制的。有的地方是有网络的,有的地方是没有网络的,有的地方有网络但是不稳定的,比如在军区,矿产,山区等信号不好的地方,那你不能说有网络的时候,我就work,没有网络的时候,我就不work,那这是不行的。
- 经济定律的限制。也就是 成本,钱的限制。IOT 往往在事物端的设备配置比较低,它产生的数据会有很多的噪音,这些噪音你要都送到云上的话,第一这会 cost 你的存储能力,第二在云端你要 处理这些数据,把噪音给剔除,这些都是需要花钱的。而且把所有的噪音都传上去,数据的 quality 就会变低,影响你的结果。
- 国家法律的限制。一个国家是有一些法律的,有一些数据是不允许你上传到网络上去的。比如军区的设备。
3、 AWS Greengrass 设计初衷和解决的问题
3、AWS Greengrass 的功能
本地操作:提供了本地 Lambda 执行环境,可以在本地写你的程序,对你的时间,数据进行处理和执行,达到本地操作的功能。
本地触发器:利用本地的消息代理和 message bus ,每天都有无数的事件产生,无数的数据产生,这些都是通过 本地的消息代理来管理,分析,调度,最后对你的设备进行操作。
数据和状态同步:这不光是本地设备之间的同步(很快),还有云端和设备间的同步,这个同步方向可以是双向,也可以是单向,因为有些数据可以传到云端,有些数据是不能传到云端的。
通过设备影子 (Device Shadows)来实现设备间的同步。
安全性:不管是本地设备间的通信,还是本地设备和云端设备间的通信,都有一个相互的身份认证。Greengrass 来做的,用户不用care。
4、AWS Greengrass 的优势
- 快速响应。本地有 lamada 执行环境。
- 离线操作。不管网络环境怎样,有无网络,稳定与否,只不过是有网络的时候,可以使用云端的功能,没有网络的时候,使用不了云端功能,但是不影响本地的执行。
- 简化设备编程。用 lamada的模式 ,可以用你熟悉的 IDE 来编写,测试之后,可以空降到你的设备上。可以在本地写 lamada 函数来去除你的噪音,压缩整合你的数据,
- 降低程序的成本。
- 安全性
5、AWS Greengrass 的目标用户
各行各业,需要本地进行实时操作的,本地进行执行的,本地进行离线操作的,网络connection 不稳定的,都可以用 greengrass来解决你的问题。
6、AWS Greengrass 案例分析 (矿区的矿车)
RioTinto 澳大利亚的一个采矿公司,有很多很大,很昂贵的设备,有的矿车有几层楼高,轮胎有1层楼高,这对路况的要求很高,糟糕的路况可能会对轮胎造成损坏,甚至可能造成翻车,这对于一个采矿公司的流程化作业造成的损失是很大的,有的设备对灰尘量要求很高,灰尘量很大的时候,对设备的磨损,损害很大 。矿区的 internet 是很不稳定的,时有时无。
矿区就把所有的遥感 传感器的数据 都送到 greengrass 上,进行分析处理,用lamada 处理,控制。比如 灰尘量很大的时候,启动清灰的程序。同时在有网络的时候,将路面的数据 传到云端,云端会根据数据进行训练,用更优化的模型进行训练。
用的功能:
1 、快速反应:本地lamada 快速执行,如果路况不好,灰尘量过高,会快速发出消息,快速响应,把机器停掉。
2、离线操作:internet 有时候在,有时候不在,在的时候把数据送到云端,不在的时候,本地就在操作。
3、programming : 利用 lamada 函数,在云端上编程,空降到你的设备,很简单,测试方便,因为云端和设备端都是 lamada的模式。
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/192685.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...