为了对大数据产品做深入了解,我们选择了其中一个模块MPP的数据库产品做了测试。
图 中国软件评测中心副总工程师周润松
为何选择MPP数据库
MPP数据库有什么好处呢?过去我们更多的是结构化的数据,现在数据传感设备采集成本越来越低,视频、传感器非结构化数据越来越多,通常又分为高密度数据和低密度数据,我们的传感器持续采集,但大多时候没有太大价值,只有在某些突变的时候会产生比较有价值的数据。对于传统的高密度数据,我们以前是用传统的关系型数据库来管理,现在随着数据容量的增大,到了TB级和PB级的话,传统数据库不一定能应付。
MPP数据库产品有哪些特色?他能做到大运维处理,他是一种Shared Nothing Cluster方式,存储使用统一存储,我们把这些信息存储在不同的主机节点上。现在我们看到大的MPP的部署模式,可以支撑到数百台的节点规模,同时他能够支持到T B或者P B的处理,他的处理手段保证了我们系统的可扩展性和可用性,还有对于ACID的要求,MPP也做相应的支持。
指标体系的研究
我们的测试和研究得到国内很多厂商的支持,对于MPP测试指标,我们联合了华为、武汉达梦、人大金仓、神州通用、南大通用五家企业,做了大量工作。我们的测试主要关注功能性指标,包括安全性、兼容性、容错性、可扩展性、效率。
我们在传统上会把数据处理分析分成两个类型,一种是OLTP面向事务处理;另一种是OLAP连接事务分析。在TPC国际标准组织发布一系列的基准测试模型或者标准,大家经常会听到TPC-C,-E、-H,-C,-E是事务性,-H是数据库OLAP的业务,大量的统计分析或者实时查询的内容。TPC推出了-DS和-DI的标准,我们对-C、-E、-H做测试。后续对多数据融合业务类型会采用TPC-DI的标准做检测,TPC-DS的模型模拟了大型的企业系统,它的商店销售或者库存等相应的一些业务系统,有14个维度表,这样组成了一个相应的数据库模型。
我们的测试有一个很重要原则,能够模拟到实际的应用系统,人们经常会问我们测出来一个数据,到底对我们现行的行业业务系统有多大参考价值?这就是业务模型存在的重要性,通过TPC-DS对MPP的数据库或者对数据查询系统做相应的性能测试评价。
相对于传统的TPC-H有很多拓展,真正模拟大型的商业系统,其中有很多查询的业务类型,我们提到传统的分析报告类型,或者迭代的OLAP型查询,相对TPC+DS更加增强高性能的支持,对标准规范也有相应的支持,在表的容量和SQL语句进行增长,更加公正反映出真实的使用情况。
这个测试,前面提到的几家企业都参与了三个轮次智能规范的编审。在安全性测试方面,有三个主要部分:身份鉴别、访问控制、安全审计。身份鉴别里,数据库基本上支持传统的身份标识,有对口令的要求,对登录次数没有限制,在安全上有考虑,你重复用三次不允许你用一个号或者一定时间。有相应的角色划分和权限控制。
可以看到,基本上数据库是支持访问控制的,部分厂商在用户权限和授权方面是通过授权方式实现的,另外隔离没有超出用户的限制。
安全审计方面也是一样,对于一个数据库,他的访问日志从安全角度来说是比较重要的,从访问日志里会详细记录某一个人对一个系统做了怎样的操作和变更。
兼容性方面,我们也做了很多探索。以符合我国推进安全可靠、自主可控的方式。目前硬件兼容方面,兼容龙芯CPU、飞腾CU P、软件兼容方面,兼容中标麒麟操作系统、中科方德操作系统、普华操作系统等,在容错性方面,我们的节点恢复时效也是作为重点考量测定的,实际我们的节点能够自动切换过来,有些厂商能做到主节点回来以后能再次切换回来备份。
扩展性相对来说是非常重要的环节,在这个系统里,可以动态添加一个节点或者删除一个节点,删除的节点对我们的意义不是很重要,添加节点时有些厂商需要手动将数据重新做一次分配,对数据部分厂商能知道做到增量的数据平均分布,这是我们的指标测试。
数据库测试结果
●国产MPP数据库安全性层面上还需加强,可参照G B/T20273-2006《数据库管理系统安全基本要求》
●国产MPP数据库对国产主流芯片和操作系统兼容,产品本身具有自主知识产权,为大数据基础软件的安全可控奠定基础
●国产MPP数据库在大规模数据仓库、集市、分析决策系统中已投入使用,效益良好
●国产MPP数据库是大数据系统混合模式(关系数据库、数据仓库和新型大数据技术)下优选策略
●国产MPP数据库在性能表现上还有进一步优化的空间未来,仍希望继续推动行业的应用基准的测试,且测试更加贴近行业应用,具体来看,可能在这几方面:
⊹行业大数据应用基准测试模型研究
⊹大数据平台类产品比对测评
⊹服务于行业用户第三方产品与原型系统选型测试
⊹大数据分析算法验证测试
⊹大数据可视化验证测评
⊹大数据行业示范应用系统测评
⊹大数据系统安全测评