Parquet与ORC性能测试报告

本文在Hadoop集群环境下,对比了Parquet和ORC两种列式存储格式在TPC-DS数据集上的性能,包括数据导入、存储空间和查询效率。测试结果显示,ORC在存储空间、数据导入速度和查询性能上优于Parquet,尤其在宽表查询时,两者性能相近,但ORC存储占用更小。此外,扁平化表结构的查询性能优于嵌套结构。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、环境说明

Hadoop集群:使用测试Hadoop集群,节点:

hadoop230
hadoop231
hadoop232
hadoop233

这几台机器配置一样,具体参数可参考如下:
CPU数量:2个
CPU线程数:32个
内存:128GB
磁盘:48TB

使用测试机群上的同一个队列,使用整个集群的资源,所有的查询都是无并发的。

Hive使用官方的hive 1.2.1版本,使用hiveserver2的方式启动,使用本机的mysql存储元数据。

二、测试数据生成

测试数据为TPC-DS基准测试的数据,官方文档:http://www.tpc.org/information/current_specifications.asp,这个数据集一共24个表:7个事实表,17个维度表,每一个事实表和大部分的维度表组成雪花模型,scale_factor设置为100,也就是生成100GB的数据。

2.1 下载hive-testbench

git clone https://github.com/hortonworks/hive-testbench

这个项目是用于生成TPC-DS数据集并且将其导入到hive,在使用之前需要保证已经将hive、hadoop等命令加入到PATH中。

2.2 编译

进入该目录,执行./tpcds-build.sh,该命令会从TPC-DS下载源代码,并编译,初始化metaStore,为导入数据到hive做准备。

2.3 导入数据

导入ORC数据:./tpcds-setup.sh 100 默认的文件格式就是ORC,所以不需要指定存储格式。
导入Parquet数据:FORMAT=parquet ./tpcds-setup.sh 100 指定文件格式为Parquet
参数100表示生成100GB的数据,改程序首先会生成text格式的数据到临时目录,然后再将这些数据转换成orc或者

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值