近日,Eclipse IoT Working Group,AGILE IoT,IEEE和 Open Mobile Alliance共同发起了一项在线调查,目的是理解开发人员在构建物联网解决方案时面临的关键挑战。
研究者通过对502位开发人员展开调查控制工程网版权所有,汇总成这份《物联网开发者调查报告2018》,提供了物联网开发人员的一线视角,其中的关键结论如下:
●亚马逊AWS 和微软 Azure是两大顶级物联网云服务提供商,谷歌云平台未能获得太多的青睐。
●虽然随着企业开始规模化部署物联网和后端系统,AMQP(Advanced Message Queuing Protocol,高级消息队列协议)变得越来越受欢迎,但MQTT(MessageQueuing Telemetry Transport,消息队列遥测传输)仍然是物联网设备传递信息时的标准选择。
●93%的物联网数据库和数据存储使用开源软件。物联网应用收集和使用的数据非常多样化CONTROL ENGINEERING China版权所有,从时间序列传感器数据到设备信息再到日志数据。
亚马逊AWS和微软 Azure牵头www.cechina.cn,谷歌云落后
过去几年中,当我问及开发人员“在构建相应的物联网解决方案时,你们计划使用哪家的云平台?”时,自2016年以来,亚马逊AWS一直是受访者们的首选,其次是微软Azure和谷歌云平台。
从今年的结果看,采用亚马逊AWS(51.8%,和去年相比增加了21%)和微软 Azure(31.21%,比2017年增加了17%)云平台的物联网开发者比例有明显的上升趋势;与此同时,谷歌云平台(18.8%,同比降低了8%)正在为保持自己受到的“宠幸”而苦苦挣扎。
如果谷歌想在物联网云平台的这条赛道上追上比赛,我们是否会看到更多类似于Xively的收购案发生?就在2018年2月,谷歌以5000万美元收购IoT平台Xively。谷歌表示,预计2020年会有200亿个设备联入云端,数据存储与分析将是解决物联网问题的基石。
考虑到微软计划在未来四年向物联网领域投资50亿美元,物联网云计算的竞争格局一定会变得非常有趣……
物联网数据终于引起重视
虽然物联网已经存在了很长一段时间,早在1991年,也就是万维网刚刚诞生后不久,剑桥大学特洛伊计算机实验室的科学家为了解决不影响工作又能随时了解楼下咖啡壶状况的“难题”,特意编写了一套程序。他们在咖啡壶旁安装了一个便携式摄像头,利用终端计算机的图像捕捉技术,以3帧/秒的速率传递到实验室的计算机上,以方便工作人员随时查看咖啡是否煮好。这就是物联网最初的“雏形”。
但很多开发人员看起来像是最近才认识到构建互联设备应该不仅仅只是为了“酷”,物联网真正的价值和商业机会在于收集和理解数据。
今年,18%的受访者认为在开发物联网解决方案的时候,怎样收集和分析数据是他们最为关心的几个问题之一控制工程网版权所有,这一比例相比去年增长了50%。在2017年,安全性、连接性和硬件集成问题都颇受开发者的关注。
不出所料,工业自动化和智慧城市等领域往往更关心物联网的数据收集和分析——在这些行业的受访者中,有23%认为数据收集和分析是关键问题。
整合物联网通讯协议
通过观察物联网消息传递协议的演变历史,你可以清楚的认识到MQTT协议是怎样确立自身作为物联网通讯协议的必要选择的。今年的调查结果只是确认了这一事实:62%的受访者使用MQTT,HTTP(54.1%)紧随其后。
基于IBM和Eurotech对MQTT协议开源之路的促进和日益流行的Eclipse Mosquitto项目,这再一次证明“开源为王”。随着MQTT 5即将来临,MQTT很有可能会在未来变成物联网通讯的标准协议。
看来,对HTTP协议使用比例的下降也许是为了造福更轻量级、更通用的HTTP/2协议(从去年的16.8%上升至今年的24.9%)。XMPP协议(4.3%)似乎已经在这场战斗中失去了“斗志”,其使用比例自2016年以来持续下降。
随着人们开始规模化部署物联网后,采用AMQP协议的开发者相比2017年增长了超过30%,因为它是物联网后端系统的一个核心元素。
使用专有供应商协议和内部协议的比例正在稳步下降,这进一步说明了整个行业都倾向于在封闭的解决方案中使用开放标准。
专注于增加安全性
安全的实现是非常困难的,这显然不是秘密。不幸的是,仍然只有有限的安全实践处于物联网开发人员心中的优先地位。通信层安全(eg.使用TLS 或 DTLS)和数据加密仍然是最受欢迎的两种实践,分别被57.3%和45.1%的受访者所采纳。
采用OTA方式更新物联网应用以增加安全性的比例相比去年增加了将近50%。
物联网数据是多方面的,并且由开源数据库主导市场
今年我们增加了几个问题,旨在了解更好的物联网数据收集方式,以及它们如何被储存?
有趣的是,在所有行业中,物联网数据都来自于多个方面,各种各样的数据被物联网应用所收集。61.9%的被收集的数据是时间序列数据(eg.传感器数据),但设备信息(60.4%)和日志数据(54.1%)同样重要。
虽然物联网应用收集的时间序列数据是最常见的数据类型,但是传统关系数据库(即MySQL,以44.6%的比例占据明显的领先地位)仍被广泛的使用。这反映出一个事实,除了传感器数据,设备元数据和企业历史数据的储存也很重要。
至于NoSQL和时间序列数据库,MongoDB(29.8%)和InfluxDB(15.7%)似乎是存储非关系物联网数据的两个首选平台。
值得强调的是,物联网使用的数据库93%是开源的www.cechina.cn,亚马逊DynamoDB (6.9%)是唯一的例外。对于关键且敏感的物联网数据,解决方案开发人员似乎倾向于那些不但易于访问,更重要的是能让他们真正的“拥有”数据的技术。
Linux仍然是无可争议的物联网操作系统
在设备端、网关和云的后端,Linux(71.8%)仍然是最主要的物联网操作系统。
尽管Amazon收购 FreeRTOS的事件仅仅发生在该调查报告发布之前的几个月,但这似乎可以解释对该操作系统的使用显著增加的部分原因——从2016年的13%增长至今年的20%。它成为领先的嵌入式物联网操作系统,其次是Arm Mbed (9%) 和Contiki (7%)。