使用TPC-DS对kudu进行基准测试
使用TPC-DS对kudu进行基准测试
目录
文章目录
- 使用TPC-DS对kudu进行基准测试
- TPC-DS介绍
- kudu介绍
- 安装TPC-DS工具
- 初始化目录,提前准备sh脚本,使用TPC-DS工具生成测试数据和基准查询语句
- TPC—DS生成测试数据文件批量上传至HDFS
- TPC-DS提供DDL语句与impala和kudu建表语法有差异,需要手动改造
- impala外部表和kudu表的创建-外部表数据导入到kudu表中
- 数据导入成功进行TPC—DS提供的基准查询
使用TPC-DS工具对kudu列式存储数据库进行一个完整的自动化基准测试。
前置条件:CDH整套环境已经搭建好,登录Impala Daemon节点执行。
操作步骤:
1.安装TPC-DS工具
2.初始化测试目录,使用TPC-DS工具生成测试数据dat文件和查询语句。
3.在HDFS新建目录,将测试数据dat文件上传到HDFS中。
4.将TPC-DS提供的DDL语句做语法兼容改造。
5.准备impala外部表和kudu表的DDL、COUNT、LIMIT语句,整理成SQL文件。准备统计分析(computer status table_name)的SQL语句。
6.调用start_tpc_import.sh进行impala外部表的建表,执行kudu内部表ddl,将impala外部表数据导入到kudu内部表,调用统计分析SQL,收集执行结果信息到tpc_ds_test/result目录查看,具体的SQL文件执行日志在tpc_ds_test/logs目录查看。
7.整理TPC-DS提供的SQL基准查询语句,由于有些语法不兼容kudu,需要进行手动调整,最后整理到单独SQL文件中。
8.调用start_kudu_query.sh,执行手动调整过后的TPC—DS的SQL基准查询。收集执行结果信息到tpc_ds_test/result目录查看,具体的SQL文件执行日志在tpc_ds_test/logs目录查看。
自动化测试脚本地址:https://github.com/linmeibao/tpc_ds_test
TPC-DS介绍
TPC-DS是一个面向决策支持系统(decision support system)的包含多维度常规应用模型的决策支持基准,包括查询(queries)与数据维护。此基准对被测系统(System Under Test’s, SUT)在决策支持系统层面上的表现进行的评估具有代表性。
此基准体现决策支持系统以下特性:
1.测试大规模数据
2.对实际商业问题进行解答
3.执行需求多样或复杂的查询(如临时查询,报告,迭代OLAP,数据挖掘)
4.以高CPU和IO负载为特征
5.通过数据库维护对OLTP数据库资源进行周期同步
6.解决大数据问题,如关系型数据库(RDBMS),或基于Hadoop/Spark的系统
基准结果用来测量,较为复杂的多用户决策中,单一用户模型下的查询响应时间,多用户模型下的查询吞吐量,以及数据维护表现。
TPC-DS采用星型、雪花型等多维数据模式。它包含7张事实表,17张纬度表平均每张表含有18列。其工作负载包含99个SQL查询,覆盖SQL99和2003的核心部分以及OLAP。这个测试集包含对大数据集的统计、报表生成、联机查询、数据挖掘等复杂应用,测试用的数据和值是有倾斜的,与真实数据一致。可以说TPC-DS是与真实场景非常接近的一个测试集,也是难度较大的一个测试集。
kudu介绍
Kudu 是一个针对 Apache Hadoop 平台而开发的列式存储管理器。Kudu 共享 Hadoop 生态系统应用的常见技术特性: 它在 commodity hardware(商品硬件)上运行,horizontally scalable(水平可扩展),并支持 highly available(高可用)性操作。
安装TPC-DS工具
1.下载安装包,http://www.tpc.org/tpc_documents_current_versions/current_specifications5.asp
。必须输入邮箱,他会发下载地址到邮箱中,点击下载地址即可下载。
2.在linux服务器进行解压:unzip 8fb68f0a-33f8-40be-96b4-322eb3e88af5-tpc-ds-tool.zip
drwxr-xr-x 10 hsy staff 320B 5 25 16:13 v2.13.0rc1
➜ cd v2.13.0rc1 && ll
total 40
-rw-r--r-- 1 hsy staff 17K 5 25 15:27 EULA.txt
drwxr-xr-x 131 hsy staff 4.1K 5 25 15:28 answer_sets
drwxr-xr-x 109 hsy staff 3.4K 5 25 15:27 query_templates
drwxr-xr-x 17 hsy staff 544B 5 25 15:27 query_variants
drwxr-xr-x 4 hsy staff 128B 5 25 15:27 specification
drwxr-xr-x 70 hsy staff 2.2K 5 25 15:27 tests
drwxr-xr-x 364 hsy staff 11K 5 25 15:26 tools
3.安装TPC-DS编译依赖环境
yum -y install gcc gcc-c++ expect
4.进入tools目录进行编译:make
初始化目录,提前准备sh脚本,使用TPC-DS工具生成测试数据和基准查询语句
1.新建一个测试目录,新建tpc_test_init.sh,进行初始化目录,这里使用/root/目录
vim /root/tpc_test_init.sh
将
使用TPC-DS对kudu进行基准测试相关推荐
- tpc ds 导入到oracle,用TPC-DS测试Sql server,Oracle
TPC-DS是什么 TPC-DS是TPC组织发布的用于测试决策系统的基准测试,是TPC-H的改进版.我们可以用它生成测试数据集和sql语句来测试数据库的OLAP能力. 最近我们用TPC-DS测试了一下 ...
- tpc ds mysql_TPC-DS 生成数据
简介 其实,使用 TPC-DS 生成系统性能测试的数据,说简单也简单,说难,确实也不好做! 关键是在每一步的操作中,如果遇到了问题,该怎么样处理,这个是个问题的关键. 下面就将生成的步骤简单描述一下, ...
- tpc ds安装教程 linux,TPC-DS测试hadoop 安装步骤
1.TPC-DS下载地址如下 http://www.tpc.org/tpc_documents_current_versions/current_specifications.asp 1.安装依赖 y ...
- tpc ds mysql_TPC-DS 数据仓库查询性能测试
最近,需要导入大量的测试数据来评估下某个产品复杂查询SQL性能是否能满足需要,然后,领导大致提了下TPC,找到了TPC-DS工具,创造数据,利用SQL查询模板查询. 一.安装TPC-DS工具 1.下载 ...
- tpc ds mysql_tpc-ds测试tidb结果
1.环境说明 (1)硬件环境: 3台机器 CPU:Intel(R) Xeon(R) CPU E5-2640 v4 @ 2.40GHz 2U40核 MEM:256G DISK:SSD (2)软件环境 ...
- 自研云原生数据仓库AnalyticDB再破权威评测TPC-DS世界纪录!
北京时间 2020/5/4 青年节,TPC(全球最知名非盈利的数据管理系统评测基准标准化组织)官网正式上线AnalyticDB TPC-DS成绩,AnalyticDB通过严苛的TPC-DS全流程测试, ...
- 自研云原生数据仓库AnalyticDB再破权威评测TPC-DS世界纪录
北京时间 2020/5/4 青年节,TPC(全球最知名非盈利的数据管理系统评测基准标准化组织)官网正式上线AnalyticDB TPC-DS成绩,AnalyticDB通过严苛的TPC-DS全流程测试, ...
- 技术解析:阿里云 AnalyticDB 如何实现全球性能第一
简介: 北京时间 2020 年 5 月 4 日,TPC 官网正式公布,阿里云自研云原生数据仓库 AnalyticDB 通过严苛的 TPC-DS 全流程测试,性能较前世界纪录提升 29%,单位成本仅为其 ...
- 使用spark-sql-perf评测spark 2.0
2019独角兽企业重金招聘Python工程师标准>>> 文章分为四个部分讲述怎样使用spark官方评测工具评测spark 2.0 tpc ds支持情况 基础环境的安装 davies/ ...
最新文章
- Java8中Stream流对集合操作
- linux mysql 数据目录迁移后不生效_Linux中更改转移mysql数据库目录的步骤
- c语言 求一个数的因数,【代码】求一个数的因数和、求优化、顺便也供新人参考算法...
- HDFS的副本存放策略(机架感知策略)
- VTK:可视化之TextSource
- CRM One Order事件注册的准确位置
- iar 堆栈设置_IAR MSP430设置合理堆栈大小(the stack pointer for stack is outside the stack range)...
- 公司里从员工到经理,不同层级应该关注的事情
- GoogLeNet结构
- java程序cpu突然飚高_Java 定位导致CPU飙升的代码过程
- map java 用法_java中map 9种常规用法
- 数据字典的一个简单案例
- CYQ.Data V5 分布式自动化缓存设计介绍
- word文档取消英文首字母大写
- QQ空间迁移_【深度解锁数据恢复】
- VUE使用JS-SDK实现微信分享好友功能(通过点击控件触发)
- 一篇文章带你深入理解漏洞之 XXE 漏洞
- 小红书种草笔记怎么写?种草笔记标题怎么写比较好
- 大数据征信进入洗牌期,区块链或成新一代征信系统底层架构
- E-NCAP增加黑暗场景下AEB测试,红外夜视或成主流配置