物联网开发平台的作用及需要改进的功能(附热门物联网开发平台)
不过很少提供可视化的数据分析功能。
在不同的物联网软件平台中,还有几个常见功能,包括基于集成的REST API,支持用MQTT协议来收集数据,以及使用SSL进行链路加密。尽管在表一中没有提到,不过单ParStream公司就能达到300万到400万行/秒的吞吐量。
这表明大多数物联网软件平台设计时并未太多考虑物联网部署的系统性能,而在真实情况下这是非常关键的。
需要改进的功能
很明显有若干地方需要改进。在本节中,我们首先提供了一张改进功能列表。在物联网软件平台供应商的努力下,其中一些项目已经实现,还有一些性能等待实现。之后我们提供了一张列表,包括现在尚未实现的这些新功能。
现有功能
数据分析
现在物联网软件平台大多支持实时分析,不过批处理分析和交互式数据分析也许同样重要。
在这一点上,有人可能会争辩:在其他知名的处理平台中包括这类分析功能,想要配置用于分析场景的软件系统也很简单。不过,这谈何容易。用于实时分析(Storm、Samza等)、用于批处理分析(Hadoop、Spark等)、用于预测分析(Spark MLLIB等)、用于交互式分析(Apache Drill等)的知名数据处理系统,并不能直接用在物联网案例中。
基准
物联网软件平台需要有扩展性,还应包含描述和评估系统性能的设备。定义良好的性能指标需要:能够塑造与测量物联网系统的性能,并考虑到网络特性、能耗特点、系统吞吐率、计算资源消耗以及其他运行特征。
边缘分析
需要采取措施以减少传感器设备与物联网服务器之间的大量网络带宽损耗。解决方案之一是使用轻量级的通讯协议。另一个办法就是使用边缘分析法,以减少传输到物联网服务器上的原始数据总量。即便是在简单的硬件嵌入系统中(如Arduino),也可以实现边缘分析法。
其他问题
应当注意:有多个与物联网软件平台相关的其他问题,比如伦理、道德和法律问题,在本文中并未涉及。尽管这些问题也很重要,但在本文中不作讨论。
需要添加的功能
处理无序进程
在任何物联网应用中都有可能碰到无序事件,在传感器所发出的事件流中,元组顺序混乱可能是网络延迟、时钟偏移等原因所导致的。处理无序的物联网事件可能会导致系统故障。处理无序事件时,需要在结果准确性与延迟之间做出权衡。
有四项主要的处理技术:基于缓存(Buffer-based)、基于标点(PunctuaTIon-based)、基于推测(SpeculaTIon-based)以及基于近似(ApproximaTIon-based techniques)。在物联网解决方案中,应当使用其中的一项或多项来解决无序事件的问题。
支持物联网背景
背景主要由个体、其偏好或过去的行为构成。例如:在移动电话案例中,由于现代移动电话中有很多不同类型的传感器,因此我们能够获得丰富的背景信息。在物联网分析中,这些背景数据应当被纳入考虑。
结论
物联网模式的快速发展需要强大的物联网软件平台,能通过物联网用例满足出现的需求。本文中,我们调查了现有最先进的物联网软件平台的功能,调查集中在这些方面:设备管理、集成、安全性、数据收集协议、分析类型、可视化支持。从这项研究中,像设备管理、物联网数据分析、物联网软件系统可扩展性以及性能这样的领域明显需要物联网平台社区投入特别的关注。
原文:Comparing 11 IoT Development Platforms
作者:Miyuru Dayarathna(WSO2高级技术总监)
编译:孙薇
责编:周建丁
- 基于不同物联网开发平台的智能家居解决方案(11-08)
- 基于 WebNMS 物联网开发平台的ATM机监控解决方案(11-08)
- 能量收集器于所在环境产生电能,无线传感器无需使用电池(08-23)
- 针对能量收集型无线远程传感器网络的实用电源管理设计(11-29)
- 智能防窃电系统的设计(03-25)
- 一种无线传感器的能量收集的实现(08-31)