物联网大数据平台是通过无线网络,以视频为核心,将各种传感器采集到的数据汇聚到大数据平台,进行数据分析统计,以一张图的形式,对当前状态和未来趋势进行概况展示,让决策者可以实时全局掌控系统内的各项关键数据,并根据对历史数据的统计分析,预测未来趋势,辅助决策者及时做出准确的判断和决策。
一个物联网大数据平台需要具备哪些功能?与通用的大数据平台相比,它需要具备什么样的特征呢?我们来仔细分析一下。
1.必须是高效的分布式系统。物联网产生的数据量巨大,仅中国而言,就有5亿多台智能电表,每台电表每隔15分钟采集一次数据,一天全国智能电表就会产生500多亿条记录。这么大的数据量,任何一台服务器都无能力处理,因此处理系统必须是分布式的,水平扩展的。为降低成本,一个节点的处理性能必须是高效的,需要支持数据的快速写入和快速查询。
2.必须是实时处理的系统。互联网大数据处理,大家所熟悉的场景是用户画像、推荐系统、舆情分析等等,这些场景并不需要什么实时性,批处理即可。但是对于物联网场景,需要基于采集的数据做实时预警、决策,延时要控制在秒级以内。如果计算没有实时性,物联网的商业价值就大打折扣。
3.需要运营商级别的高可靠服务。物联网系统对接的往往是生产、经营系统,如果数据处理系统宕机,直接导致停产,产生经济有损失、导致对终端消费者的服务无法正常提供。比如智能电表,如果系统出问题,直接导致的是千家万户无法正常用电。因此物联网大数据系统必须是高可靠的,必须支持数据实时备份,必须支持异地容灾,必须支持软件、硬件在线升级,必须支持在线IDC机房迁移,否则服务一定有被中断的可能。
4.需要高效的缓存功能。绝大部分场景,都需要能快速获取设备当前状态或其他信息,用以报警、大屏展示或其他。系统需要提供一高效机制,让用户可以获取全部、或符合过滤条件的部分设备的新状态。
5.需要实时流式计算。各种实时预警或预测已经不是简单的基于某一个阈值进行,而是需要通过将一个或多个设备产生的数据流进行实时聚合计算,不只是基于一个时间点、而是基于一个时间窗口进行计算。不仅如此,计算的需求也相当复杂,因场景而异,应容许用户自定义函数进行计算。
6.需要支持数据订阅。与通用大数据平台比较一致,同一组数据往往有很多应用都需要,因此系统应该提供订阅功能,只要有新的数据更新,就应该实时提醒应用。而且这个订阅也应该是个性化的,容许应用设置过滤条件,比如只订阅某个物理量五分钟的平均值。
7.实时数据和历史数据的处理要合二为一。实时数据在缓存里,历史数据在持久化存储介质里,而且可能依据时长,保留在不同存储介质里。系统应该隐藏背后的存储,给用户和应用呈现的是同一个接口和界面。无论是访问新采集的数据还是十年前的老数据,除输入的时间参数不同之外,其余应该是一样的。