1.2 大数据发展的历程及技术演进
大数据技术是指从各种各样类型的巨量数据中快速获得有价值信息的技术。解决大数据问题的核心是大数据技术。目前所说的“大数据”不仅指数据本身的规模,也包括采集数据的工具、平台和数据分析系统。大数据研发的目的是发展大数据技术并将其应用到相关领域,通过解决巨量数据处理问题促进大数据突破性发展。因此,大数据时代带来的挑战不仅体现在如何处理巨量数据而从中获取有价值的信息,也体现在如何加强大数据技术研发,抢占时代发展的先机。
1.2.1 采集解析技术
大数据具有“体量大、结构多样、时效性强”等特征,要用好各类大数据,对数据源进行数据准备处理是必备的前置环节。电信运营商大数据面对着复杂的生产环境:设备厂商多、网元种类繁杂、数据类型及字段复杂、字段定义与电信技术交缠。传统数据处理体系中的ETL(抽取、转换、加载)前置数据处理已不足以完成电信运营商复杂环境中对数据的解析、关联、标准化及准确性要求。因此,数据采集解析关键技术研究方面,需充分研究网元设备原始数据提供能力、数据接口方式、原始数据解析及标准化、跨行业数据融合、多层次数据关联等数据采集解析技术,在传统ETL前置数据处理的基础上,根据电信运营商大数据面广量大、动态复杂的特点,将网络原始数据梳理解析,初步加工为可用的规整且意义明确的元数据。这方面的工作是大数据技术构架的基础。此外,积极寻找并发掘网络数据外的其他关联数据源,并经采集解析相关的前置处理后引入大数据系统中,也是采集解析技术研究需要关注的研究方向。
1.关注网元设备原始数据提供能力
通信技术在不断演进发展,通信设备也随之进行代际更替,数据应用对原始数据的粒度、范围、类型等都不断提出更高的要求。例如使用NFV(Network Function Virtualization,网络功能虚拟化)技术后新出现的虚拟网元、物联网设备、5G(The 5th Generation,第五代移动通信技术)新设备等;通信标准升级也带来了新通信功能技术点,如VoLTE(Voice over LTE,基于LTE的语音)技术、最小化路测技术、SON(Self-Organizing Network,自组织网络)技术等;上层数据应用也对原始数据提出新需求,如对MR(Measurement Report,测量报告)的定位需求、对数据采集周期缩小的需求等。电信运营商需深入研究并向设备厂商提出原始数据采集需求,推动设备厂商进行原始数据开发,及时准确地从设备上提供原始数据。
2.研究数据接口技术
随着IT技术的发展,数据接口技术也在不断演进,如CORBA(Common Object Request Broker Architecture,公共对象请求代理体系结构)接口的简化、FTP(File Transfer Protocol,文件传输协议)的高效加密、流式消息处理等技术出现后,为数据采集接口升级改造提供了技术条件。电信运营商需具体研究各类数据需求,研究从厂商网元设备、OMC(Operation and Maintenance Center,操作维护中心)、链路接口等多途径获取应用所需数据的接口方式,提出对现有不满足应用需求的接口进行改造的技术方案。
3.原始数据解析及标准化研究
根据数据特点及上层应用的需求,对多厂商、多种类的异源数据进行解析及标准化,使其规整统一,以利于上层应用。在解析及标准化的过程中,如何在尽量保持原有语义的情况下去粗取精、消除噪声,形成规范化的可以标准方式利用的数据词典,将是研究的重点。
4.跨行业数据源融合研究
通过项目合作、引用公开数据等方式了解电信运营商范围外的其他大数据源或大数据产品,如交通路网流量、搜索点击等统计数据、地图及POI(Point of Interesting,兴趣点)数据、天气气候数据等,研究探索使用外部大数据资源为运营商网络规划、建设、维护、优化等提供应用工具的技术。
5.多层次数据关联技术
各数据源间的关联关系往往产生“1+1>2”的效果,有助于形成数据服务生态系统。对多层次关联合成技术,如无线侧与核心网侧信令准确串接合成、信令数据与设备或OMC(Operation and Maintenance Center,操作维护中心)数据匹配、用户面用户行为与信令面信令事件关联、O域数据与B域及M域综合关联等,进行充分研究,将为上层大数据应用爆炸式增长提供有力的工具及数据支持。
1.2.2 存储管理技术
1.大数据存储的特征
大数据时代其实带来的是数据来源发生质的变化。在互联网出现之前,数据主要是以人机会话的方式产生的,以结构化数据为主。所以大家都需要传统的RDBMS(Relational Database Management System,关系型数据库管理系统)来管理这些数据和应用系统。那时候的数据增长缓慢,系统都比较孤立,用传统数据库基本可以满足各类应用开发的需求。互联网的出现和快速发展,尤其是移动互联网的发展,加上数字设备的大规模使用,如今数据的主要来源已经不是人机会话了,而是通过设备、服务器、应用程序自动产生的。传统行业的数据也同时多了起来,这些数据以非结构、半结构化为主,而真正的交易数据量并不大,增长并不快。机器产生的数据也同时正在呈几何级增长,比如基因数据,各种用户行为数据,定位数据,图片、视频、气象、地震、医疗数据,等等。
2.大数据存储的技术方案
大数据存储技术路线分为以下典型的三种:
(1) MPP数据库
MPP(Massively Parallel Processing,大规模并行处理)架构的新型数据库集群重点面向行业大数据,通过列存储、粗粒度索引等多项大数据处理技术,再结合MPP架构高效的分布式计算模式,完成对分析类应用的支撑,运行环境多为低成本PC服务器,具有高性能和高扩展性的特点,在企业分析类应用领域获得了极其广泛的应用。
并行数据库是指那些在无共享的体系结构中进行数据操作的数据库系统。其主要目标是通过多个节点并行执行数据库任务,提高整个数据库系统的性能和可用性。近年来不断涌现一些提高系统性能的新技术,如索引、压缩、实体化视图、结果缓存、I/O共享等,这些技术都比较成熟且经得起时间的考验。
并行数据库系统的一个主要缺点是没有较好的弹性。人们在对并行数据库进行设计和优化时,若需要对集群进行扩展和收缩,则会导致系统在某段时间内不可访问,而这种较差的灵活性直接影响到并行数据库的弹性以及现用现付商业模式的实用性。并行数据库的另一个缺点是系统的容错性较差,系统只提供事务级别的容错功能,如果在查询过程中节点发生故障,那么整个查询都要从头开始,重新执行。因此,并行数据库只适合资源需求相对固定的应用程序。
(2) 基于Hadoop架构的NoSQL数据库
传统关系型数据库在处理数据密集型应用方面显得力不从心,主要表现在灵活性差、扩展性差、性能差等方面。最近出现的一些存储系统摒弃了传统关系型数据库管理系统的设计思想,转而采用不同的解决方案来满足扩展性方面的需求。这些没有固定数据模式并且可以水平扩展的系统现在统称为NoSQL(Not Only SQL),即对关系型SQL数据系统的补充。
目前,开源的NoSQL数据库有Redis、Tokyo Cabinet、Cassandra、Voldemort、MongoDB、Dynomite、HBase、CouchDB、Hypertable、Riak、Tin、Flare、Lightcloud、KiokuDB、Scalaris、Kai、ThruDB。
(3) 大数据一体机
这是一种专为大数据的分析处理而设计的软、硬件结合的产品,由一组集成的服务器、存储设备、操作系统、数据库管理系统以及为数据查询、处理、分析而特别预先安装及优化的软件组成,高性能大数据一体机具有良好的稳定性和纵向扩展性。
3.大数据存储的研究方向
基于大数据研究的需求及现状,重点研究方向如下:
(1)HDFS/HBase的存储技术原理:重点研究Hadoop体系中的HDFS/HBase的技术原理及编程模型。
(2)常用的存储系统软件的功能研究:研究基于Hadoop架构的存储管理软件系统的技术原理、功能、使用方法及基于该系统的开发技术。
(3)存储系统产品的测试及部署建议:针对常用存储系统的产品开展相关测试,熟悉其功能并验证性能、部署成本、维护成本及存储数据的安全性、可靠性;根据大数据分析的数据特点研究其适应场景、典型配置,为存储系统的采购、部署提供指导意见。
(4)存储系统的优化技术研究:根据数据特点、数据存储现状及未来使用方向,研究存储系统的优化方法,降低单位数据的存储成本,提升数据安全性、可靠性、维护及访问的便利性。
1.2.3 并行计算技术
1.并行计算技术的基础
并行计算是指同时使用多种计算资源解决计算问题的过程,是提高计算机系统计算速度和处理能力的一种有效手段。它的基本思想是用多个处理器来协同求解同一问题,即将被求解的问题分解成若干个部分,各部分均由一个独立的处理机来并行计算。并行计算系统既可以是专门设计的、含有多个处理器的超级计算机,也可以是以某种方式互连的若干台独立计算机构成的集群。通过并行计算集群完成数据的处理,再将处理的结果返回给用户。
MapReduce 分布式并行计算技术是新型分布式计算技术的代表。一个MapReduce 系统由廉价的通用服务器构成,通过添加服务器节点可线性扩展系统的总处理能力(Scale Out),在成本和可扩展性上都有巨大的优势。
2.并行计算技术的演进
MapReduce 架构能够满足“先存储后处理”的离线批量计算(Batch Processing)需求,但也存在局限性,最大的问题是时延过大,不适合用于机器学习迭代、流处理等实时计算任务,也不适合针对大规模图数据等特定数据结构的快速运算。
为此,业界在MapReduce的基础上提出了多种不同的并行计算技术路线,如Yahoo 提出的S4 系统、Twitter 的Storm系统是针对“边到达边计算”的实时流计算(Real Time Streaming Process)框架,可在一个时间窗口上对数据流进行在线实时分析,已经在实时广告、微博等系统中得到应用。谷歌于2010 年公布的Dremel系统是一种交互分析(Interactive Analysis)引擎,几秒就可以完成PB级数据的查询操作。此外,还出现了将MapReduce内存化以提高实时性的Spark框架、针对大规模图数据进行优化的Pregel 系统等。
3.并行计算技术的研究目标
在深入研究MapReduce基本原理的基础上,跟踪并行计算新的技术方向及系统解决方案,并逐步掌握新工具的使用,为进一步完善现有大数据分析系统的并行计算解决方案进行技术储备。