物联网近年呈蓬勃发展之势,为更好的迎接物联网数据爆发式增长带来的挑战,天泽信息研发了一款专业面向物联网领域的大数据处理产品——TIZA STAR企业级物联网大数据平台,提供物联网数据的接入、计算、存储、交换和管理等功能,可广泛应用于装备制造、交通管理、气象监测、环境保护和新能源等诸多领域。
● 全面的数据接入,可支持千万级物联网终端并发接入、每秒接入百万个数据包。
● 高效的数据处理,在千亿级数据集内,达到秒级的查询响应时间。
● 灵活的数据交换,提供多种接口方式,用户可以根据实际情况灵活选择。
● 多重的数据保护,从五个层面保证数据的安全。
● 数据接入:
数据接入时,传感器或者采集终端通过无线或者有线的方式发送到平台端,平台端通过软负载均衡(LVS)或者硬负载均衡(F5等)将流量均匀的负载到各个可水平扩展的网关,每个网关都是基于netty实现的高性能的网络接入程序。
数据接入协议分两个层次,在通讯层次上,支持TCP、UDP、HTTP和WEBSOCKET等通讯协议;在数据协议层次上,支持MQTT、JSON、SOAP和自定义二进制协议。通过这两个层次的互相搭配,可以轻松实现任何物联网终端、任何协议的数据接入。
网关接收到数据,并完成解包之后,将数据包发送到消息中间件Kafka中,可以有效地应对“井喷流量”和下游服务短暂不可用的问题。
● 数据存储:
TIZA STAR综合使用了多种存储引擎,包括HDFS、HBase、RDBMS和Redis。
HDFS非常适合于非结构化数据的存储,支持数据的备份、恢复和迁移,在系统中主要用于存储原始数据和需要进行离线分析的数据。
HBase适合于存储半结构化的数据,可以很好的支持海量物联网终端的历史数据的查询,在系统中主要用于存储终端的历史轨:妥刺?忍辶勘冉洗蟮氖?。
Redis是基于内存的KV数据库,在系统中通常用来缓存需要频繁更新和访问的数据,比如物联网终端的当前状态等。Redis可以为多种数据类型以及多种数据操作提供很好的内嵌支持。
● 数据处理:
数据处理包括实时计算和离线计算两种。
TIZA STAR采用Storm作为实时处理引擎,并在它的基础上包装了自己的实时计算服务,可以支持应用层的调度和管理。基于实时计算服务可以很容易实现对物联网数据的清洗、解析、报警等实时的处理。
离线计算支持MapReduce和Hive等,主要用于对物联网数据做日/周/月/年等多个时间维度做报表分析和数据挖掘,并将结果输出到关系数据库中。
● 数据交换接口:
数据交换接口支持SQL、Restful、Thrift和Java API等,用户可以根据实际情况灵活选择数据交换的方式。
数据交换的内容包括物联网终端的当前状态、物联网终端的历史状态/轨迹、指令下发、数据订阅与发布等等。
● 平台管理:
平台管理包括监控报警和管理UI。
监控报警采用Ganglia和Nagios结合的形式,包括硬件级别(服务器、cpu、内存、磁盘等)、进程级别(进程不存在、端口监听异常等)、关键业务指标(中间队列的元素数、网关建立的tcp连接数等)等三个级别。
管理UI包括界面化安装部署、用户管理、终端管理、集群管理、数据接入管理、实时和离线计算任务界面化管理。
● 平台SDK:
为了方便企业用户基于TIZA STAR定制自己的物联网应用,我们提供了三个SDK:GW-sdk、RP-sdk、OP-sdk。其中基于GW-sdk可以快速新增一种新的物联网终端协议的接入,基于OP-sdk可以快速开发一个可周期性调度的MapReduce/Spark任务,基于OP-sdk可以快速开发一个可周期性调度的MapReduce/Spark任务。
● 平台安全:
TIZA STAR从链路安全、接入安全、网络安全、存储安全和数据防篡改这几个方面来保证物联网安全。通过SSL和TLS保证链路安全;通过秘钥鉴权对数据的访问有效进行控制;通过防火墙等硬件设备防止网络攻击;通过副本冗余保证数据的存储安全;通过每512字节进行CRC校验的机制保证数据的防篡改。