TPC-DS 生成数据

简介

其实,使用 TPC-DS 生成系统性能测试的数据,说简单也简单,说难,确实也不好做!

关键是在每一步的操作中,如果遇到了问题,该怎么样处理,这个是个问题的关键。

下面就将生成的步骤简单描述一下,好记性不如烂笔头呀!


生成步骤


1.在官网上(http://www.tpc.org/tpcds/ )去下载最新的:TPC-DS. 


2.解压: 下载的 zip 文件放在 Linux 上解压,并进入他的 tools 目录.


3.编译:make (忽略编译警告,只保证生成过程成功完成). 这里需要linux安装上了 gcc , gcc c++, expect 等.


4.生成数据:在tools目录下执行:./dsdgen -scale 5 -force (-force:会覆盖原来生成的data,否则不覆盖);生成的25个.dat 的数据文件.


5.创建相应的表,命令:MySQL -u -p < tpcds.sql 这是以mysql为例子. 输入密码,
等待执行完成,对应的就会在你的 your_db_name 中生成相应的 25 张表。


6.将每个.dat的数据文件放进对应的数据库中,使用如下命令:
LOAD DATA INFILE 'your_DAT_filename' INTO TABLE table_the_DAT_file_is_for FIELDS TERMINATED BY '|' LINES TERMINATED BY '\n'
your_DAT_filename:*.dat;
table_the_DAT_file_is_for:tableName;


通过以上六步骤,就可以将 TPC-DS 数据全部 load 到对应的表中去,也就生成了相应的测试数据了.


可能出现的错误


1.1292 (22007): Incorrect date value: '' for column 'wp_rec_end_date' at row 1


方式一:在my.ini里找到
sql-mode=”STRICT_TRANS_TABLES,NO_AUTO_Create_USER,NO_ENGINE_SUBSTITUTION”
把其中的 STRICT_TRANS_TABLES 去掉,然后重启mysql就ok了


方式二:
a. select @@sql_mode; 查看有哪些模式.


b.set @@sql_mode=NO_ENGINE_SUBSTITUTION,...;  不要STRICT_TRANS_TABLES模式就好.


错误可能还会出现,也会有很多,就看你是怎么处理了,后边的再补上... ... 

你可能感兴趣的:(SQL)