选择TPC-H作为Presto性能测试的benchmark

1. 絮絮叨叨

  • 读书的时候,帮师兄打过下手:在不同的大数据组件上,执行TPC-H的benchmark,测试改造后的HDFS的性能
  • 工作中,需要选择合适的benchmark对改造后的Presto进行测试
  • 在benchmark的调研的过程中,又关注到了大名名鼎鼎的TPC-H
  • 在学习的过程中发现,TPC提供了很多不同用处的benchmark,需要根据实际情况选择合适的benchmark

2. 什么是TPC

  • TPC的官网首页,有这样一段介绍:

    The TPC is a non-profit corporation focused on developing data-centric benchmark standards and disseminating objective, verifyable data to the industry.

  • 大致的中文意思为:TPC 是一家非营利性公司,专注于开发以数据为中心的benchmark标准,并向行业传播客观、可验证的数据。

  • TPC的全称为:Transaction Processing Performance Council

  • TPC为很多数据场景提供了标准的benchmark:

    • 2007年2月,获得批准的OLTP的benchmark —— TPC-E
    • TPC-DS:适用于Decision Support的benchmark,为决策支持系统的提供通用的性能评估。其他博客的介绍:模拟大型零售业务的系统,主要用于BI和决策支持,数据量和OLAP查询复杂度都很高,是TPC数据集中最大的
    • TPC-H:也属于Decision Support的benchmark,但侧重于ad-hoc(即席)查询,其前身为TPC-D。博客《向Hive导入TPC-H测试数据集》:TPC-H可以视作TPC-DS的简化版本
  • 除此之外,还有关于大数据、物联网(IoT)、人工智能(AI)等的benchmark,感兴趣可查看TPC官网的Benchmarks/ Results

3. 为什么选择TPC-H?

  • 从了解到的资料来看,TPC-H和TPC-DS都比较适合决策支持系统

3.1 关于TPC-H

3.2 关于TPC-DS

  • 相对TPC-H,TPC-DS更加全面
  • TPC-H的22个查询主要为ad-hoc查询,而TPC-DS的99个查询,可以分为:纯粹的 reporting queries、纯粹的ad-hoc queries、迭代的OLAP queries、extraction or data mining queries
  • 参考博客:A Summary of TPC-DS

3.3 为什么不选择更全面的TPC-DS?

  • 博客10 Questions: the TPC-H Benchmark甚至还明确指出:
    • TPC-DS的功能更强大,但是那些使用TPC-DS进行测试的报告中,并未明确说明:99个查询,是否能全部跑成功
    • 他们一般都是选择99个查询中,较为简单的一些查询进行测试
  • 从基于Presto的性能测试中,我们也可以发现:使用TPC-DS作为benchmark时,并不是99个查询都执行
  • 例如,Think Presto Is Fast? Dremio Is Up to 12x Faster中,就只执行了99个查询中的部分查询
  • 同时,考虑到TPC-DS在两次执行的中间,会对数据进行修改(data maintenance operations)
  • 而我们的Presto目前主要定位还是BI报表和ad-hoc查询,不涉及数据的更新操作
  • 因此,本人觉得选择TPC-H作为性能测试的benchmark更加合适

4. 附加资料

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值