利用TPC-H为MYSQL生成数据

本文详细介绍了如何利用TPC-H为MySQL生成数据并进行导入,包括解压编译TPC-H,修改配置文件以适应MySQL,生成数据,调整数据库脚本,以及最后的数据导入步骤。
摘要由CSDN通过智能技术生成

利用TPC-H为MYSQL生成数据


导言

这篇文章是看了joyee写的TPC-H数据导入MySQL教程以及另一篇网上的MySQL TPCH测试工具简要手册 后写的,有些内容是完全转载自以上两篇文章的,这里我写这篇文章主要写下自己的归纳和更改。

TPC-H简介

TCP-H是一个决策支持的测试基准,由一系列面向商务应用的查询和并发数据修改组成,其选择的查询和组成数据库的数据在商业上都具有广泛的代表性并且易于实现。该基准描述了决策支持系统的三个方面:分析大量的数据,执行高复杂度的查询,回答关键的商业问题。

我主要是想用TPC-H生成数据库样本,用于进行数据库实验。但是TPC-H是不支持为MYSQL生成数据的,所以我们需要对它的配置文件进行一些“魔改”。

TPC-H的安装包可以从官网免费获取。

过程

1、解压和编译

解压tpch文件,进入dbgen目录。

首先,我们需要更改TPC-H编译文件,

cp makefile.suite makefile

接着修改makefile文件
将103~112行改成以下:

CC      = gcc
# Current values for DATABASE are: INFORMIX, DB2, TDAT (Teradata)
#                                  SQLSERVER, SYBASE, ORACLE, VECTORWISE
# Current values for MACHINE are:  ATT, DOS, HP, IBM, ICL, MVS, 
#                                  SGI, SUN, U2200, VMS, LINUX, WIN32 
# Current values for WORKLOAD are:  TPCH
DATABASE = MYSQL
MACHINE = LINUX
WORKLOAD = TPCH

第一行的意思是设定C语言编译器为gcc。

我们从这里也看到,DATABASE其实是没有MYSQL选项的,所以,我们后面需要为MYSQL添加依赖。

修改tpcd.h
在文件末尾加上

#ifdef MYSQL
#define GEN_QUERY_PLAN  ""
#define START_TRAN      "START TRANSACTION"
#define END_TRAN        "COMMIT"
#define SET_OUTPUT      ""
#define SET_ROWCOUNT    "limit %d;\n"
#define SET_DBASE       "use %s;\n"
#endif

修改完编译配置文件,我们可以编译出程序。
命令行执行make
这个过程中会有一些关于数据类型的警告,无视它。

make完dbgen目录下之后就会多出很多.o 文件,dbgen、qgen可执行程序,dss.ri,dss.dll文件。

2.生成数据

dbgen:数据生成工具。可以用该工具生成tpch相关表数据。

我们使用

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值