您好,欢迎访问三七文档
当前位置:首页 > 建筑/环境 > 水利工程 > 大数据技术在物联网服务平台中的应用
82016年2月第2期(第29卷总第221期)月刊2016年第2期电信工程技术与标准化大数据与物联网专题大数据技术在物联网服务平台中的应用段为(中国移动通信集团广东有限公司,广州510000)摘 要 物联网的出现及发展标志着大数据时代已经来临,大数据已渗透到我们生活的各个领域,引领并且改变着我们现有的生活方式。大数据不断地从多样化的物联网传感设备和应用系统中产生,并且将会以更多、更复杂、更多样化的方式持续增长。大数据的复杂化和格式多样化,决定了物联网服务平台中针对大数据的服务场景和类型的多样化,从而要求物联网服务平台必须融合大数据技术来应对。关键词 物联网;大数据;Hadoop;Spark中图分类号TN915文献标识码A文章编号1008-5599(2016)02-0008-06收稿日期:2015-10-281研究背景1.1物联网催生了大数据随着物联网的蓬勃发展,各种跨行业、领域的感知设备、终端能够快速接入网络并汇聚在一起。物联网世界中大量的传感器将物质世界中形形色色的信息转换成电信号后通过各类网络传送到上层应用系统,可以预见一种趋势已经形成,那就是海量的非结构化数据将急速增长。这些数据量的增长并非是线性的,而是随着越来越多的传感器的研发、制造、投产,数据量会呈现指数性的增长,这种趋势是不可阻挡的。1.2大数据丰富了物联网应用大数据时代下的物联网,使得大数据价值得以体现。在物联网技术的应用中,通过构建智能建筑、数字化医疗、遥感勘测、智能运输、环境监测保护等手段,可以通过大数据的收集,通过云计算技术分析数据,把有用的数据挖掘出来形成有用的信息,从而创造价值。世界顶级汽车公司,正在使用的一项遥感技术,有效识别车主身份,避免豪车的被盗,有效记忆识别开车人的驾姿,判断驾驶员是否在集中精神开车,有效避免交通事故的发生。该技术通过对汽车座椅安装一个传感器,记忆车主的重量、正常驾驶的受力点以及相关的关键指标,识别车主身份,一旦驾驶员跟原有的数据不吻合,汽车防盗系统会自动识别出危险,并且自动通过无线技术把信息反馈到车主,使得车主可以及时作出相应的处理方式。大数据分析技术的发展和运用,使得各类物联网应用更加丰富多彩。2大数据技术在物联网服务平台应用的必要性2.1广东移动物联网服务平台的数据特点笔者负责建设的广东移动物联网服务平台是一个基9大数据与物联网专题电信工程技术与标准化2016年2月第2期(第29卷总第221期)月刊2016年第2期于GPRS企业接入网络的网元、接口信令数据以及BOSS中的计费数据等,设计开发出行业客户需要的服务组件,以开放、灵活的API接口方式向行业客户提供物联网服务的平台。目前平台每天接入数据量为1TB左右,数据量庞大,接口种类繁多,主要包括如下。(1)信令监测平台接口:通过FTP获取专用APN卡、CMNet通道卡的网络信令数据,包括2G/3G卡信令数据(GN-CDR、用户行为CDR及TCP建链CDR等)、4G卡信令数据(MME_CDR、HTTP_CDR、RTSP_CDR、VOIP_CDR等)。(2)ESB系统接口:通过FTP、Webservice方式与接入ESB的话音网管、数据网管及资源管理系统对接,接入网元的网络性能数据,包括2G/3G网元(BSC、SGSN、GGSN)、4G网元(eNodeB、MME、SGW、PGW),用户在HLR中的APN配置信息、用户实时的开关机信息以及2G/3G/4G基站的位置信息。(3)BOSS接口:通过FTP获取物联网卡的业务订购数据,包括集团信息、产品信息及成员订购信息。(4)BI系统接口:通过FTP获取2G/3G/4G物联卡日流量信息。(5)专网专号接口:通过WebService获取专网专号的网络数据以及业务状态数据。2.2平台引入大数据技术的必要性平台中数据的复杂性使得加快引入大数据技术已经刻不容缓。针对海量数据的特点,虽然数据资源非常重要,但其中的数据信息很大程度上是冗余的,需要对数据进行清洗压缩;再者,颗粒化、非结构化也是物联网中大数据的特点,尽管这种特性的数据处理起来非常复杂,然而它们对数据的使用者来说至关重要,因此,解析非结构数据也是不可忽视的重要环节。鉴于这些因素,非常有必要引入大数据技术,通过统一的架构设计,将非结构化的数据变得结构化,将不同系统之间不同结构的数据尽可能地统一,从而使数据信息发挥更大的价值。2.3大数据技术的选型物联网服务平台数据处理的流程包括采集,导入预处理,数据清洗与计算(提取、转换和加载),存储和管理数据,数据统计分析,利用数据等阶段。通过FTP接口聚集的信令数据、行业数据等更多的是非结构化文档,需要引入的大数据平台和技术,如分布式文件系统、分布式计算框架、非SQL数据、流计算技术等,通过这些技术可以加强非结构数据的处理和集聚。技术选型如图1所示。3物联网服务平台大数据处理3.1总体架构通常认为物联网包含信息感知、传递和处理这3个基本要素,相应地,物联网架构也包含感知层、网络层和应用层3个基本层次。感知层利用传感器(网)、RFID等手段来实现信息采集和标识;网络层利用现有的移动网、互联网或其它专用网,对采集来的信息进行传输和基础处理,并提供公共管理服务;应用层对所感知的信息进行智能处理和决策后,实现各类应用服务。物联网服务平台属于应用层,其内外部数据的集成统一需要两种数据(结构化、非结构化)和两种技术平台(关系型数据库、大数据平台)的巧妙融合,从而向上层应用提供物联网服务,达到可运营、可管理的效果,使各种资源相互配合,实现效能最大化。整体架构设计如图图1物联网平台大数据技术选型102016年2月第2期(第29卷总第221期)月刊2016年第2期电信工程技术与标准化大数据与物联网专题2所示。3.2数据流组成物联网服务平台数据分析基础框架自数据源从下往上分为数据集成层、文件存储层、编程模型层、数据存储层以及数据分析层5层。数据流组成如下。(1)数据采集与导入:①②。(2)数据清洗与计算:实时分析——①③④、离线分析——⑤⑥。(3)数据分析与统计:列存储数据分析——⑦⑧⑨、数据仓库数据分析——⑦⑧⑩。3.3数据技术应用说明(1)采用Hadoop分布式文件系统HDFS对非结构化数据进行存储。(2)采用Hbase/Hive对半结构化数据进行存储。(3)采用Oracle/Redis对结构化数据分析结果进行存储/缓存。(4)采用Zookeeper作为分布式协调系统。(5)采用ApacheFlume-NG导入离线数据到Hadoop分布式文件系统HDFS。(6)采用Storm/ApacheKafka进行实时数据处理。(7)采用ApacheSpark进行离线数据处理。(8)采用SparkSQL/HiveOnSpark进行大数据统计分析。4大数据技术应用场景4.1数据导入预处理由于采集数据的速度和数据处理的速度不一定同步,故不同方式接入的数据应利用不同的技术导入。对于实时的数据流数据,现有的消息(队列)系统能够很好的导入,但存在未及时处理的数据不会写到磁盘上,需要缓存在内存的问题。Kafka正是为了解决以上问题而设计,它能够很好地支持在线应用。采集完成后,由集成子系统预处理导入到消息中间件,Kafka利用可靠高效的消息递送机制帮助分布式系统进行平台数据交换。对于离线处理的文件则由ApacheFlume-NG将需要离线分析的文件数据写入Hadoop的分布式文件系统(HDFS)。FlumeNG是一个分布式、可靠、可用的系统,它能够将不同数据源的海量数据进行高效收集、聚合、移动,最后存储到一个中心化数据存储系统中。Flume-NG中的HdfsSink的路径名(对应参数hdfs.path,不允许为空)以及文件前缀(对应参数hdfs.filePrefix)支持正则解析,时间戳自动按时间创建目录及文件前缀。采集到Hdfs中后,能有对应的文件名,方便后续分析。4.2数据清洗与计算由于数据源是由不同的系统定义,存在于不同的使用环境,来源于这些数据源的数据存在许多不一致的情形,所以在物联网服务平台数据集市构建的过程中,需要对这些不一致或错误的数据进行转换和清洗,以提高数据的质量。数据清洗的过程是从大量原始数据中使用一系列逻辑判断,检查数据是否是符合数据集市的数据,从而选择做进一步保留或过滤的动作。物联网服务平台根据数据的时效性,分两种清洗与计算模型:实时分析与离线分析。图2物联网平台大数据处理总体架构11大数据与物联网专题电信工程技术与标准化2016年2月第2期(第29卷总第221期)月刊2016年第2期实时分析主要处理同步频率比较小的数据,比如同步信令系统的网络数据,每5min同步一个数据文件,需要用流计算框架进行持续处理。Storm是Twitter的开源分布式流计算平台。Storm通过简单的API可以可靠地处理无界持续的流数据,进行实时分析、持续计算、ETL处理等。Storm集群有两种节点:主节点(Master)和工作节点(Worker)。主节点运行一个称之为Nimbus的后台程序,Nimbus负责在集群范围内分发代码、为Worker分配任务和监测故障。每个工作者节点运行一个称为Supervisor的后台程序,监听分配给它所在机器的工作,基于Nimbus分配给它的事情来决定启动或停止工作者进程。Nimbus和Supervisor之间所有的协调工作是通过Zookeeper集群来进行的。物联网服务平台使用Storm实时分析信令文件数据,抽取出用户快照数据存储到Redis内存数据库,同时把网络轨迹数据保存到Hbase。相应的处理程序会一直执行,直至手动停止。离线分析主要处理批量同步的数据以及较长时间间隔才清洗计算的大数据。Spark是UCBerkeleyAMPlab所开源的类HadoopMapReduce的通用的并行计算框架,它是基于内存的迭代计算框架,适用于需要多次操作特定数据集的应用场合。需要反复操作的次数越多,所需读取的数据量越大,受益越大。物联网服务平台通过采用Spark计算框架迭代统计物联卡的日流量,并累计得出物联卡的月流量,然后将结果保存到Hbase。4.3数据存储与管理物联网服务平台数据存储分文件存储、半结构化数据存储、分析结果以及业务订购数据存储。文件存储采用Hadoop分布式文件系统(HDFS),其运行于普通PC构建的大规模集群之上,它隐藏了下层的负载均衡、冗余复制等实现细节,对上层应用程序提供一个统一的文件系统应用程序接口。ApacheHBase是运行于HDFS顶层的NoSQL(NotOnlySQL,泛指非关系型的数据库)数据库系统,是一个架构在ApacheHadoop上的开源的、分布式的、可横向扩充的、一致的、低时延的、随机访问的非关系型数据库。区别于Hive,HBase具备随即读写功能,是一种面向列的数据库。HBase以表的形式存储数据,表由行和列组成,列划分为若干个列簇(RowFamily)。Hbase按列存储数据,方便做数据压缩,对某一列或者某几列的查询有非常大的I/O优势,查找速度快、可扩展性强、更容易进行分布式扩展。Hbase低时延随机访问特性如下。(1)Hbase写操作:1~3ms,每个节点每秒1000~10000个写操作。(2)Hbase读操作:内存读0~3ms,硬盘读10~30ms,从内存读每个节点每秒10000~40000个读操作。(3)在表的任何位置都可以读、写或者插入数据。(4)没有顺序写的限制。ApacheHive是一个构建于Hadoop(分布式系统基础架构)顶层的数据仓库。Hive可以看作是用户编程接口,它本身不存储和计算数据;它依赖于HDFS(Hadoop分布式文件系统)和MapReduce(一种编程模型,映射与化简;用于大数据并行运算)。Hive最初的计算引擎为MapReduce,受限于其自身的Map+Reduce计算模式,以及不够充分的大内存利用,MapReduce的性能难以得到提升。于是Hive社区推出了HiveonSpark项目,将Spark作为继MapReduce和Tez之后Hive的第3个计算引擎。把Spark
本文标题:大数据技术在物联网服务平台中的应用
链接地址:https://www.777doc.com/doc-1364309 .html