APP下载

企业级MPP数据仓库选型探索

2018-05-28戴昭颖范文娟

中国管理信息化 2018年9期
关键词:数据仓库架构工具

戴昭颖,尹 涛,范文娟

(首钢京唐钢铁联合有限责任公司 信息计量部,河北 唐山 063200)

1 前 言

目前市场上的数据仓库产品多种多样,这些数据仓库产品也都有自己的特点。阿里云的Maxcompute,提供表搜索、数据查询功能,用户可以轻松读取分析数据,可以直接扩展到EB级别数据,扩展规模不受限制,但是一整套产品都是阿里自研开发。IBM DB2 DPF的数据库分区特性体现在数据库分布在多个服务器上,非共享体系架构,工作负载分散在所有结点,管理节点是其中的一个计算节点,优点就是从传统数据库OLTP转型到OLAP上,与传统数据库语言能够很好地兼容。Greenplum DB是基于X86平台的完全无共享的并行处理架构,管理节点和计算节点是严格分开的,增加节点可线性增加存储、查询和加载性能,支持在线扩容。百度云的Palo提供的PB级别的MPP数据仓库服务,以较低的成本提供在大数据集上的高性能分析和报表查询功能,它不是面向OLTP的数据库产品,而是一款面向OLAP的数据库产品,和Palo功能定位比较相似的产品包括Greenplum、Vertica、Exadata等商业数据仓库系统和 Amazon RedShift、GoogleBigQuery等云服务能够快速创建、管理、调整集群,导入海量数据提供高可靠存储,提供与MySQL完全兼容的接口,与Qlik Sense等BI工具无缝集成,但是支持的SQL查询复杂程度差于DB2 DPF和Greenplum DB。

除了以上MPP架构的数据仓库外还有SAP的BO,它是一个集查询、报表和OLAP技术为一身的智能决策支持系统,使用独特的“语义层”技术和“动态微立方”技术来表示数据库中的多维数据,具有较好的查询和报表功能,提供钻取(Drill)等多维分析技术,支持多种平台和多种数据库,同时它还支持Internet/Intranet,可以通过WWW进行查询、报表和分析决策。Oracle公司也有自己的数据仓库解决方案,它具有多用户数据仓库管理能力,多种分区方式,较强的与OLAP工具的交互能力,及快速和便捷的数据移动机制等特性,Oracle Warehouse Builder集成了数据建模、数据抽取、数据转移和装载、聚合、元数据的管理等功能,但是Oracle的数据转移工具需手工编写SQL脚本,在处理复杂的数据转换需求时困难很多。Oracle的前端工具易用性较差,需较多地依赖第三方产品。此外,我们最为熟知的Microsoft公司的SQL Server 2000已经在性能和可扩展性方面确立了世界领先的地位,是一套完全的数据库和数据分析解决方案,使用户可以快速创建下一代的可扩展电子商务和数据仓库解决方案。Microsoft将OLAP功能集成到Microsoft SQL Server中,提供可扩充的基于COM的OLAP接口,Microsoft Office 2000套件中的Access和Excel可以作为数据展现工具,另外SQL Server还支持第三方数据展现工具,Microsoft Repository存储包括元数据在内的所有中间数据,SQL Server OLAP Services支持在线分析处理,PivotTable Services提供客户端OLAP数据访问功能,通过这一服务,开发人员可以用VB或其他语言开发用户前端数据展现程序,PivotTable Services还允许在本地客户机上存储数据。但值得注意的是,数据仓库是Microsoft公司刚刚进入的一个全新领域,与该公司的传统产品差别较大,同时,Microsoft也缺少在数据仓库实施方面的咨询经验。

经过初步性能分析,我们发现Greenplum DB和IBM DB2 DPF比较适合作为本公司数据仓库产品支持经营决策分析,因此,下面只需要集中对Greenplum DB和IBM DB2 DPF两款产品进行性能测试。

2 Greenplum DB和IBM DB2 DPF测试、对比分析

首先要准备测试数据,可以从ERP系统导出一张表MSEG,截取其中9个字段,并将每个字段之间用“|”隔开,组成了一个大小为23.2G的文件mseg.txt。然后分别在两个数据仓库中创建新的数据库表MSEG,如图1所示。此外,要将mseg.txt中的内容导入到新的数据库表中,以备测试。

图1 数据库表MSEG的表结构

在数据加载与压缩比的测试方面,可以看出Greenplum DB加载耗时为234.1s,DB2 DPF加载耗时为190.2s,二者都为并行加载方式,DB2 DPF要优于Greenplum DB;相同大小的文件分别导入到两个数据库后,都默认为行式压缩,Greenplum DB的压缩比为 3.01,DB2 DPF 压缩比为 2.94,Greenplum DB 略优于DB2 DPF。在数据的查询性能测试方面,展开了四个场景的测试,Greenplum DB的查询速度依次为3.53s、9.17s、14.84s,3.7s,而DB2 DPF相同的场景查询速度依次为21.63s,15.66s,44.36s,12.28s,Greenplum DB的查询速度明显优于DBZ DPF。在数据的操作性能测试方面,Greenplum DB 为 3.86s,DPF为153.16s,Greenplum DB的操作性能更是优于DB2 DPF,如图2所示。

图2 Greenplum DB和DB2 DPF性能测试对比

表索引、表分区、内置分析功能、性能线性扩展、与ETL工具集成、与BI工具集成、与数据挖掘工具集成方面,二者性能相似;在对大数据的支持能力方面,Greenplum DB要优于DB2 DPF,因为DPF仅支持数据文件批量导入、导出,而Greenplum DB支持 SQL语句直接读写 HDFS、Hive、HBase等多种格式Hadoop数据,此外Db2引擎内部没有MapReduce,但Greenplum支持MapRedurce计算框架,可以直接运行MapRedurce程序;产品的友好性方面,两者产品都很成熟,编程开发和用户访问以SQL为主,对人员要求低。但DB2 DPF性能调优复杂,体系搭建有一定难度;成本方面,DPF比Greenplum在初期投入和后期扩容成本都会高一些。综合性能对比如表1。

表1 DB2 DPF和Greenplum DB综合性能对比表

3 结语

MPP架构的新型数据库集群,重点面向行业大数据,采用Shared Nothing架构,通过列存储、粗粒度索引等多项大数据处理技术,再结合MPP架构高效的分布式计算模式,完成对分析类应用的支撑,运行环境多为低成本的PC Server,具有高性能和高扩展性的特点,在企业分析类应用领域获得极其广泛的应用。MPP产品可以有效支撑PB级别的结构化数据分析,这是传统数据库技术无法胜任的。对于企业新一代的数据仓库和结构化数据分析,目前最佳选择是MPP架构的数据仓库支撑经营决策分析。

由以上探索实践可以看出,作为企业级数据仓库,Greenplum DB的各方面指标普遍优于DB2 DPF。此外,和目前比较流行的大数据Hadoop平台的数据仓库对比,Greenplum DB的性能在数据量为TB级别时表现非常优秀,单机性能要比Hadoop快好几倍。它是基于PostgreSQL的一个完善的数据库,在功能和语法上都要比Hadoop上的SQL引擎Hive好用很多,对于普通用户来说更加容易上手。Greenplum有着完善的工具,相比Hive,整个体系都比较完善,不需要像Hive一样花太多的时间和精力进行改造,非常适合作为经营决策的解决方案。

主要参考文献

[1]王雪迎.Hadoop 构建数据仓库实践[M].北京:清华大学出版社,2017.

[2][加]韩家炜.数据挖掘:概念与技术[M].北京:机械工业出版社,2012.

猜你喜欢

数据仓库架构工具
基于FPGA的RNN硬件加速架构
功能架构在电子电气架构开发中的应用和实践
波比的工具
波比的工具
基于数据仓库的住房城乡建设信息系统整合研究
“巧用”工具
LSN DCI EVPN VxLAN组网架构研究及实现
分布式存储系统在液晶面板制造数据仓库中的设计
探析电力系统调度中数据仓库技术的应用
基于数据仓库的数据分析探索与实践