您的位置:首页 > 编程语言 > PHP开发

TPC-DS 生成数据

2015-07-07 00:03 696 查看

简介

其实,使用 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 <your_mysql_user> -p < tpcds.sql <your_db_name> 这是以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模式就好.

错误可能还会出现,也会有很多,就看你是怎么处理了,后边的再补上... ...
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: