将 Azure 的物联网服务进行简单整理,包括物联网中心、设备预配服务、Sphere、实时操作系统、物联网边缘以及其他相关内容
首先
当你想在Azure上开始IoT时,由于服务太多,甚至没有阅读文档的动力,最终你可能会选择手工操作,然后后悔地想到:
「哎呀,如果我早点知道这个服务就好了」
「技能方面可能不适合用这个」
也许会发生这样的情况吧。
我想在这篇文章中概述一下Azure的物联网服务。虽然不涉及细节,但我会简单介绍有哪些服务存在以及应该注意使用的要点。不过,由于数量较多,这篇文章可能会有些冗长。请参考目录,从您感兴趣的部分开始阅读确认。
除了各自的PaaS服务外,还存在着能够将SaaS和PaaS结合在一起的服务。
在某种程度上,有关存在于社会中的方案,也提供了将各种服务组合成SaaS和PaaS的服务。首先,我们来谈谈这个。
Azure物联网中心
Azure IoT Central 是一种成品的软件即服务(SaaS)产品,可根据各种场景进行使用。例如,针对零售客户的需求,可以轻松构建基于场景的应用程序的服务。
只需准备可连接的设备,即可开始使用IoT服务,无需在云端进行开发。
通过使用IoT Central,即使没有了解云端技术的IoT专家也能够以可预测的成本使用安全且可扩展的环境。
此外,还可以借助提供的接口和各种Azure服务来扩展您自己的服务。
Azure物联网解决方案加速器
Azure IoT Solution Accelerator是一个基于Azure IoT参考架构开发的半成品PaaS服务。它提供了根据”这样做最好”文档创建的服务,并提供了示例界面。由于是半成品,您可以根据自己的需求进行定制改造。实际上,这并不是一个特殊的服务,而是一个可以通过点击按钮来组合各种服务的工具。虽然这样说可能不太好,但我认为它已经提供了连接设备进行PoC所需的充分功能。关于更多细节我暂时不评论,但这对学习很有帮助。
在物联网平台即服务(PaaS)服务中,我们可以通过区分“设备”和“服务”来进行思考。
由于物联网的原因,我认为您知道”设备”是必需的。请养成将除了设备以外的部分称为”服务”而不是”云端”的习惯。
在技术人员之间的对话中,使用”云端”是可以的,但”云端”只是实现手段和方法的讨论。如果考虑到盈利和用户满意度,”设备”的对应物就是”服务”,请把它放在头脑的一角。
“设备”是信息收集的起点,有时也是执行某些反馈服务的最终消费地。
“服务”是为收集到的信息添加附加价值的地方,也是创造附加价值所必需的基础。
Azure的物联网服务等在”设备”和”服务”之间有明显的区别。
设备相关
设备一词可以指的是各种各样的东西。有一些设备基于个人电脑(例如超市的POS机或者工厂的机加工中心),具备相对高配置的性能;同时也有一些设备类似于嵌入式设备(例如冰箱或监控摄像头),寿命较长但需要注意严格的性能限制。
根据需求、配置和技术人员的技能范围,会选择不同的Azure服务来使用。
Azure 物联网边缘
Azure IoT Edge是一个将Azure IoT服务带到边缘侧(即本地)的服务。一开始,当我们谈到物联网时,最常见的场景是将数据发送到云端并获取反馈。然而,在现实问题中,这种方式可能出现许多问题。
-
- 画像データをバンバン飛ばしてAIやったからコストすごいしレスポンス悪い
-
- 回線切れたら使えない
- 工場内の機器間の通信速度からすると恐ろしいレイテンシーで使えない
在这样的时候,您可以使用IoT Edge。IoT Edge提供了以下功能:
-
- データを安全に収集する
-
- 収集データから洞察を得る(要するに付加価値を得る)
- 洞察を以ってアクションを起こす
我们可以在本地环境中实现IoT所需的三个操作。而且即使处于离线状态,它也能正常运作。
虽然在每个现场手工安装也可以,但如果进行分散部署,我们也能解决以下类似的问题。
-
- 動作状態をどうやって監視するのか(サービスの集中管理が可能)
-
- 内部動作のアップデートをどうやって実施するのか(OTA)
- AI的なこととかモデルの学習大変(クラウドで学習して、できたモデルをデバイスに配布)
我认为,在技术上虽然是开放式的,但当您希望在本地进行各种操作时,Azure IoT Edge是一个选择。
蓝色星云
Azure Sphere是为提供安全设备而开发的一体化解决方案。
-
- チップメーカーとも協業して作り上げたセキュアなハードウェア
-
- リリース後10年アップデートを保証する Azure Sphere OS (Linux)
- セキュアなOSおよびアプリケーションのアップデートを実現するクラウド環境
这个三位一体的东西就是Azure Sphere。
芯片内部分为与外部通信、内部操作在操作系统(OS)层面运行的部分和在实时操作系统(RTOS)上运行的部分明确分离。
它们负责处理嵌入式系统转变为物联网时最关心的安全和OTA部分。
如果在技术上是嵌入式系统,但想要展开IoT服务,我认为Azure Sphere是一个选择。就芯片的价格而言,老实说,如果单独考虑芯片本身,价格相当高。但考虑到可以委托上述所提到的功能,它是一个有吸引力的解决方案。
蔚蓝RTOS
Azure RTOS是专为嵌入式系统准备的物联网解决方案。其基础是微软在2019年收购的Express Logic公司的ThreadX。根据需求,
-
- FATと互換のあるFileX
-
- 画面構成するGUIXおよびGUIX Studio
-
- Windowsベースの分析ツールTraceX
-
- TCP/IPプロトコル標準(IPv4のみ)のNetXおよびNetX Duo
- USBデバイスとの通信を補助するUSBX
通过将这些组合使用,您可以制造基于RTOS的物联网设备。
但这并不包括硬件。
目前许可证的形式如下所示。
-
- 開発やテストについては無料
-
- 実運用については有料で、形態は2種類
-
- 事前ライセンス供与されたデバイスにデプロイする場合は無料(デバイスの費用に含まれている)(が、現在情報はありませんでした)
- 上記に該当しないデバイスについてはデバイス数によるのでAzureRTOSContactで問い合わせる
设备相关及其他
以下是对原文的汉语本地化翻译:
可以让设备开发更加容易的”Azure IoT设备SDK”
例如,用于在工厂或配送中心中处理大量数据、执行机器学习模型等任务的硬件设备”Azure Stack Edge”和”Azure Stack Hub”
专为物联网而设计的操作系统”Windows for IoT”系列
用于设备上运行的数据库引擎”Azure SQL Edge”
等等。
服务相关
有许多PaaS服务可用于实施服务提供,并且还有许多不同的组合方式。在这里,我们省略了显示界面和容器部分。(显示界面是一个无限而且常见的云原生配置话题,也适用于PowerApps,而容器可以实现任何功能,所以我们省略了它们。)
物联网中心
在Azure中,提到物联网,就是这个。它是所有的起点,称为”Azure IoT Hub”的服务。
这是一个关键的服务,负责与设备进行通信。它负责设备的管理和消息的收发。
-
- 各デバイスに配布するためのIDや接続情報を生成・管理
-
- 各デバイスの状態監視
-
- 各デバイスへのJobのプッシュ
- テレメトリーデータの送受信
我們可以負責處理等任務。
此外,根據屬性信息,我們可以確定“將數據分發到何處”,並且使用消費者群組可以複製並分發收集的數據。
由於IoT Hub本身可以保留一定時間的訊息,即使後續服務中斷,也可以減少數據損失。
如果設備已經將日誌寫入文件並僅需要定期收集,Azure Blob Storage也可以為我們提供輔助,因此我們仍然建議使用IoT Hub。
活动中心
Event Hubs并不仅限于物联网的应用。它是用于接收大量遥测数据的服务。(有一个能够接收并保存大量数据的服务可以使整个服务更加稳定)
IoT Hub可以管理设备,但Event Hubs不能。连接到IoT Hub的信息是以设备为单位的,而Event Hubs的连接信息是整体相同的。因此,我们无法直接管理“数据来自哪里”(可以在消息中写清楚,但是该消息是否确实是来自设备就不清楚了)。此外,也无法向设备进行Push通信。
但是,确实有一些客户在利用Event Hubs以更低的价格接收大量消息,所以有一些客户在使用它。
在物联网的应用中,我们建议与IoT Hub一起使用。
例如:
-
- IoT Hubを使ってデバイスを管理する
-
- Event Hubsの接続情報は、IoT Hub経由でデバイスに提供する
- Event Hubsの利用を開始する際は、IoT Hubから提供された接続情報を使う
通过实现这样的操作,可以在管理设备的同时减少遥测数据的费用,并获得弹性环境。
相比仅使用Event Hubs,可以更轻松地保持安全状态并为HA/DR做准备。
Azure IoT Hub 设备预配服务
Azure IoT Hub设备配置服务是一种保证设备安全轻松连接到IoT Hub的服务。简而言之,它会提供设备连接信息,告知设备应该连接到哪个IoT Hub。对于IoT Hub设备配置服务是什么,我们也写了一篇超级概述的文章,如果您感兴趣,可以查阅一下。
Azure 流式分析
-
- 今飛んできたデータがどんな感じなのかを評価して結果を返す
- 過去のデータを全体的に見てみるとどんな感じなのかを評価して結果を返す
流分析将执行前述操作。通过设置输入和输出位置,并编写查询进行执行,它会返回过去5分钟的平均值等。简单地说,虽然写成了过去5分钟,但有许多不同的方式计算5分钟。例如,以整点为起点的5分钟间隔也是5分钟,根据传入的数据时间计算的过去5分钟也是5分钟。这种具有时序特征的操作是流分析的特点之一。
有时,有些人想在经过流分析之后将数据保留为冷数据,但我建议直接从物联网中心输出而不是保存为冷数据。
此外,更新查询需要停止和启动流分析,并且需要一些时间。为了尽可能地减少停机时间,需要一些技巧。
Azure Cosmos DB 蓝澄星数据库
Azure Cosmos DB是一种快速可扩展的NoSQL数据库。它并不是一个名为”Cosmos DB”的数据库,而是让您可以选择其中一种数据库类型,并获取一个快速可扩展的PaaS环境。请考虑这个观点。
-
- キーバリュー(Azure Blob の Table Storage)
-
- 列ファミリー(Cassandra)
-
- ドキュメント(MongoDBや昔DocumentDBと呼ばれていたエンジンでCosmos DB内では”SQL”と記載されています)
- グラフ(Gremlin)
在Azure的门户中,只需点击一个按钮,就可以在全球各个区域生成副本,并且如果需要的话可以在任何地方进行写入(默认为写入后为胜出)。将数据通过指定的键进行水平扩展,如果键指定得当,即使数据量很大,操作也会非常快速。您可以通过选择5种不同的一致性级别来调整速度和可靠性之间的平衡。
然而,如果键没有使用得当,可能会变得较慢,并且会反映在成本上。另外,如果存储不必要的数据,也会反映在成本上,需要注意。
建议只存储所需的数据在Cosmos DB中,将暂存任务交给SQL数据库或Blob存储。
蓝色时间序列洞察

Azure 数字孪生
Azure Digital Twins是一种解决方案,用于在物联网的数字世界中准确追踪现实世界。其目的是将实际空间的状态再现在虚拟空间中,并以”Twins”来表示。
在构建物联网服务时,个别传感器信息可能会独立工作,但也有一些通过多个传感器的协作来产生许多附加价值的情况。
例如,在建筑物的每个楼层和区域放置温度传感器、光照传感器和人体感应传感器,通过考虑它们的位置信息和关联性,可能构建出舒适且能源效率高的建筑物。其中可能还考虑与用户的日程安排相结合来管理会议室。
例如,在工厂的生产线上的各种设备、设备附近的机械臂、设备的末端和人员乘坐区域放置传感器,通过考虑它们的关联性,可能对提高生产率和员工安全性有所贡献。
通过将这些传感器之间的关联性保留为图形数据,Azure Digital Twins可以为应用程序的生产力提供帮助。
截至2020年6月,v2版即将发布,所以我想观望一段时间。
蓝点地图
Azure Maps是一种用于可视化地理空间数据的PaaS服务。在讨论物联网时,地理空间数据与时间序列数据一起是不可或缺的要求之一吧。如果只是简单地绘制到地图上,可能还可以,但是如果涉及到与移动有关的交通、路线、以及几百米内的地理围栏等等,那么可能会相对困难一些。这个PaaS服务可以很好地承担这方面的工作。但是说实话,个人认为在日本还无法使用。(我真心觉得日本的地图信息真厉害啊。)
蓝色监控
Azure Monitor 是一项 PaaS 服务,可以收集和可视化 Azure 上各种服务器和设备的指标数据和日志数据,在 Azure 上的任何服务和代理上运行。通过指标数据,比如 CPU 和内存状态,可以触发扩展,通过从 Application Insights 收集的应用程序日志数据,可以检查延迟并确定查询的处理时间。各种 Azure 内的 PaaS 服务都可以与 Azure Monitor 配合使用,可以进行监视,同时还可以创建整个服务能够自我修复的机制。与安全中心配合使用,可以确认保持了多安全的状态也非常重要。
安全中心
安全中心与Azure Monitor和第三方产品等进行协作,客观评估您的Azure和其他服务提供环境的安全状态,并提供建议。
该服务中包括Azure物联网安全中心,可提供专门针对物联网的安全解决方案。
Azure 物联网安全中心
Azure Security Center for IoT可以检查IoT设备的安全状态。它有两种模式:嵌入式模式在IoT Hub上执行,扩展模式需在设备上添加代理。当然,扩展模式可以收集更多的信息,但必须在经过精审的基础上使用。它可以生成警报,同时也可对警报进行一定程度的自定义。
总结
您觉得如何呢?虽然Azure拥有众多无法一一列举的服务,但我凭借主观判断和偏见选择了与物联网相关性较高的服务进行介绍。
如果您能以这些为核心来构建服务,包括考虑人力成本等运营方面的竞争力,打造出可持续发展的物联网服务,我将感到非常高兴。