APP下载

基于MPP和Hadoop的低价值密度结构数据联合处理方法的设计与实现

2015-05-30侯健卫杨波李栓林刘浩熙鲁瑞

中国新通信 2015年1期
关键词:数据库系统结构化数据处理

侯健卫 杨波 李栓林 刘浩熙 鲁瑞

【摘要】 针对当前RDBMS、MPP等关系型数据管理系统在处理低价值密度数据过程中的诸多不足,提出了一种基于MPP和Hadoop的海量低价值密度的机构化数据处理方案。该方案通过结合MPP和Hadoop技术解决了目前处理手段 I/O性差的问题,并在很大程度上提高了系统的可扩展性;同时,该方案明显降低了低价值密度数据的分析成本,具有明显的经济意义。实验结果表明:该方案能够用于处理海量低价值密度数据,解决目前低价值密度数据操作方案I/O性能低、读写响应慢、价格高昂等缺点,达到设计要求。

【关键字】 大数据 低价值数据 Hadoop MPP

随着互联网时代的到来,数据量正以几何级数高速增长[1]。这些新增数据具有明显的低价值密度的特点,主要表现为数据总量大、有价值数据含量少[2]。低价值密度数据分为结构化数据和非结构、半结构化数据,其中非结构化、半结构化低价值密度数据可以采用Hadoop技术体系Hbase等进行处理,而结构化低价值密度结构化数据大多采用目前主流RDMBS、MPP等关系型数据库进行处理[3]。

目前基于MPP(大规模并行处理技术)数据库技术在一定程度上可以弥补传统关系型数据库当中的不足,但是面对海量、低价值密度数据时,MPP数据库系统主要表现在优化系统性能。MPP数据库的不足之处主要表现在:1)对于的低价值密度数据,MPP体系的价格成本依然较高;2)虽然MPP体系可以提供较快的查询处理速度,但是在高吞吐量时依然存在较多的问题。3)在数据量非常大或者大规模写入操作时,MPP数据库延时严重;4)MPP数据库适合应用于OLTP等事务性工作,无法有效的支持大规模非结构化数据的读写操作。

针对上述不足之处,本文结合MPP数据库特点和当前流行的大数据体系Hadoop的良好的扩展性、I/O性能的特点,设计并实现了一种低价值密度结构化数据联合处理方法。

一、实现方案

1.1总体思想

结合share-Nothing工作模式的MPP数据库系统和Hadoop技术体系的各自优点,实现低价值密度结构化数据的协同处理,以期达到提高数据处理效率、降低数据处理成本的效果。

系统整体设计目标如下:1)利用Hadoop、MPP技术体系优点,实现适合于低价值密度结构化数据的数据处理手段;2)针对OLTP事务处理和数据挖掘分析的要求,根据不同应用场景提出不同的低价值密度数据处理方法;3)充分利用Hadoop体系中HDFS和Hive的技术特点,提高系统处理高并发、大规模数据吞吐情况下的处理能力;4)在海量、低价值密度数据的情况下,实现更加经济、更加符合数据处理特点的新的技术体系和新的处理方法。

系统整体设计思路如下:1)采用MPP数据库处理小规模查询类的低价值密度数据操作;2)采用Hadoop体系处理对低价值密度数据分析类的、大规模、高吞吐量、写多读的操作。

1.2系统结构

在系统结构上,基于MPP和Hadoop技术的低价值密度结构化数据联合处理方法具体结构具体包括:应用系统、混合引擎、MPP客户端/HDFS客户端/Hive、MPP数据库系统/HDFS分布式文件系统、联合数据加载器等。系统整体结构如图1所示。

MPP数据库基于高性能计算的Share-Nothing架构实现,节点主要采用SMP技术,多个SMP节点采用高速网络互联,其具体包括主机节点和数据节点,主机阶段负责管理,而数据节点负责数据处理。

混合前端引擎、联合数据加载处理器是为实现本方法提出的两个新的软件系统,混合前端引擎主要负责对各种应用进行调度处理,而联合数据加载处理器主要负责加载、提取各种原有的大规模低价值密度数据。混合前端引擎其分别通过MPP Client客户端、HDFS Client客户端,以及Hive系统的HQL语言分别和MPP数据库系统、HDFS分布式文件系统、Hive系统接口。

1.3联合数据加载处理器

联合数据加载处理器的核心功能就是从传统的RDBMS数据库、FTP、文件服务器中加载数据到MPP数据库系统、HDFS分布式文件系统、Hive数据仓库。

对于非低密度价值数据,联合数据加载处理器首先加载其到MPP数据库,而对于低价值密度数据,联合数据加载处理器需要分析其具体类型:1)如果是大规模、分析型,那么就需要加载到HDFS分布式文件系统,其通过调用HDFS客户端系统进行处理,同时和Hive系统连接,实现元数据在Hive中的处理;2)如果不是大规模的数据,但是是分析型的数据,如果是文件类型的,其也直接加载到HDFS分布式文件系统,同时,如果其数据类型标志为读操作,则也部署到HDFS分布式文件系统中;3)其他类型数据加载到MPP数据库系统中。

联合数据加载器仅仅大概、粗粒度的处理低价值密度数据,其无法实现精细粒度的数据加载和转换处理。

1.4混合前端引擎

混合前端引擎一方面接口连接所有的ODBC、JDBC等应用系统,另一方面接口连接MPP客户端、HDFS客户端、Hive系统接口等,其本质上是各种SQL应用的调度处理管理程序。其核心功能就是对各种SQL应用进行分类处理:1)查询类的、小规模的、多写多读的、实时的低价值密度数据和MPP数据库接口;2)分析类的、大规模的、一写多读的、高延迟的低价值密度数据和HDFS/Hive接口。

为了实现低价值密度结构化数据的合理部署和管理,混合前端引擎需要实现三类功能:1)SQL-数据调度器;2)数据类型判断管理算法;3)Hash数据管理表。为了实现各种SQL数据的调度管理,在具体实现中基于HASH表实现了低价值密度数据的管理表,该管理表一方面在数据加载的时候进行写入,而且还在具体应用处理数据时候修改,其相当于数据库的元数据、HDFS系统的元数据。

二、实际测试

为了验证方案的可行性,通过模拟实际生产环境对该方案进行了测试,主要对系统的I/O性能进行测试。

2.1测试环境

为了确保测试结果的准确性,选用主流x86服务器作为硬件环境。其中,对于Hive相关的存储节点,重叠部署在HDFS 的DataNode服务器上面。

2.2测试过程

为了确保测试结果的准确性,采用控制变量的方式进行了三种测试,分别是:1)单一基于MPP数据库系统的低价值密度结构数据处理方案;2)单一基于HDFS+Hive数据库系统的低价值密度结构数据处理方案;3)本文所涉及的基于MPP和Hadoop的低价值密度结构数据联合处理方案。同时,模拟四类操作:1)小规模数据查询类操作;2)大规模数据查询类操作;2)小规模数据分析类操作;3)大规模数据分析类操作。

2.3测试结果

对系统的最大并发数测试结果如图2所示。

从图2可以看出,在初始状况下,MPP、Hive以及MPP与Hadoop结合方式的系统响应时间几乎相同;随着请求并发量的增大,响应时间都出现了上涨趋势,但是MPP与Hadoop结合方式的系统响应时间增长速度要明显小于其它二者。这说明MPP与Hadoop结合方式的系统具有更好的应对请求热点等用户操作高并发的情况。

三、结论

本文基于MPP和Hadoop技术设计并实现了低价值密度结构数据联合处理方法的设计与实现方案。经过测试分析发现,基于MPP和Hadoop技术的低价值密度结构化数据联合处理方法适合于低价值密度数据处理,在大规模、高吞吐量数据处理方面具有良好的系统性能,而且有效的降低了系统成本。因此,该方法在大数据时代可以有效地处理大规模、低价值密度、高吞吐量的结构化数据。

由于条件限制,涉及方案只是模拟生产环境下进行了测试,这和实际的企业生产环境仍有很大的差距,这些差距可能会使得测试结果有一定的偏差。因此,在更大规模实际生产环境上进行实际测试将是下一步的研究的主要工作。

样刊邮寄地址:太原市胜利街兵工南马路59号

联系人:鲁瑞13935128085

参 考 文 献

[1]孟小峰,慈祥. 大数据管理:概念、技术与挑战[J]. 计算机研究与发展,2013,50(1):146-169.

[2]邬贺铨. 大数据时代的机遇与挑战[J]. 求是,2013,(4):47-49.

[3]李雪娇,余建桥,冯静. 关系型数据库中不确定性数据的Top-k查询研究[J]. 计算机应用与软件,2012,29(4) :186-187.

[4]李书攀. 一种关系型数据库自动划分方法的设计[J]. 计算机光盘软件与应用,2014,17(9):55-56.

[5]董纪英,燕志伟,梁正玉. SQLite、MySQL、PostgreSQL关系型数据库管理系统比较[J]. 电脑编程技巧与维护,2014,27(14):55-58.

猜你喜欢

数据库系统结构化数据处理
认知诊断缺失数据处理方法的比较:零替换、多重插补与极大似然估计法*
ILWT-EEMD数据处理的ELM滚动轴承故障诊断
促进知识结构化的主题式复习初探
结构化面试方法在研究生复试中的应用
数据库系统shell脚本应用
微细铣削工艺数据库系统设计与开发
实时数据库系统数据安全采集方案
核反应堆材料数据库系统及其应用
基于希尔伯特- 黄变换的去噪法在外测数据处理中的应用
基于图模型的通用半结构化数据检索