Postgres在最近的几个大版本当中针对分析场景进行了大量的优化,包括实现并行查询、LLVM代码生成优化等,今天我们就通过性能测试来看看Postgres在面对一款我们国人自己研发的数据库OushuDB时性能到底如何吧。
测试平台:
单节点x86服务器
CPU:2颗10核Intel(R) Xeon(R) CPU E5-2630 v4 @ 2.20GHz,超线程40
内存:256GB
硬盘:4*1000GB SSD
操作系统:Centos 7.4
对比软件版本:
OushuDB 4.0
Postgres 12.1
测试方法:
本次测试我们采用了国际通用的数据库测试标准TPC-H。该测试包括 22 个查询(Q1~Q22),我们主要的评价指标是各个查询的响应时间,即从提交查询到结果返回所需时间。
关于TPC-H测试
TPC-H(商业智能计算测试) 是美国交易处理效能委员会(TPC,Transaction Processing Performance Council) 组织制定的用来模拟决策支持类应用的一个测试集。目前在学术界和工业界普遍采用它来评价数据查询处理能力。
测试过程:
由于Postgres只支持单节点,而OushuDB是一个大规模分布式数据库,所以为了公平起见,本次采用了单节点进行测试。同时,我们将两款数据库都开启了并行计算功能,并使用Scale为100的数据集(约100GB)进行测试。
OushuDB,存储格式为ORC,使用新一代基于SIMD的执行器。Postgres,存储格式为Heap。
数据生成方式:
提前用dbgen生成TPCH测试用文本数据;OushuDB采用外部表并行导入,并进行Analyze,共用了705秒,Postgres采用Copy的方式导入并进行Analyze共用了2750秒。
运行结果比较:
(两款数据库不同Query下的耗时,越小越好)
![](https://img.haomeiwen.com/i17547291/eaa44e183fbccf5a.png)
根据TPC-H的测试结果来看,OushuDB综合性能比Postgres快了30倍以上。虽然Postgres是一款很多企业都在使用的十分优秀的数据库,但是在面对海量数据的查询这样的需求时,比OushuDB差的挺远的。
由此我们也看到国产数据库这两年的巨大进步,同时国产数据库的崛起也在很多领域打破了国外数据库的垄断。
接下来我们还将继续和国外比较常用的数据库进行一对一PK,包括MySQL、Oracle、Spark、Hive等等。大家最想看哪款请留言?下期我们PK继续。
关于偶数科技
⌈偶数科技⌋是一家领先的AI和大数据产品和解决方案提供商,致力于AI赋能全球各行业客户。公司的愿景和使命是 “让人类只为兴趣而工作”。偶数科技的产品已在金融、电信、制造、公安、能源和互联网等行业得到广泛的部署和应用。目前⌈偶数科技⌋已经获得多轮顶级VC的投资。⌈偶数科技⌋是微软加速器成员企业,并入选美国著名商业杂志《快公司》“中国最佳创新公司50”榜单。
如果您喜欢本文请点右下角在看或转发到朋友圈。
更多新闻请点击:
网友评论