使用TPC-H可以自动生成大量数据,下面介绍ubuntu中的使用方法。
1.下载TPC-H的生成工具
网盘链接:https://pan.baidu.com/s/1u3_bwZbyWKrFGqdVzV2_7g 密码:sgnw
2.解压原文件
3.修改makefile文件
进入dbgen目录1
cd dbgen
复制makefile.suite到makefile
1 | cp makefile.suite makefile |
修改makefile文件
1 | vim makefile |
修改为如下内容(gcc要是小写的,因为这个问题百度了一小时左右-_-||)
4.执行make,dbgen命令生成表结构和数据
如果你之前生成过数据表,可以执行make clean先清除一下再执行以下命令。1
make
执行dbgen,生成数据表,大小为2G。根据自己需要设定参数。1
./dbgen -s 2
我们会发现dbgen目录里增加了许多文件,正是我们后续需要的。
5. 建表
dss.ddl文件里为建表语句,如下:
1 | CREATE TABLE NATION ( N_NATIONKEY INTEGER NOT NULL, |
6. 插入数据
第4步生成了8个以tbl结尾的文件对应8张表中的数据,首先去除数据中每行末尾的‘|’,代码如下:
1 | #include <iostream> |
接着通过copy命令导入数据
1 | copy nation from '/usr/local/pgsql/sql/table/nation1.tbl' WITH DELIMITER AS '|'; |
7.建立主外键关系
建立主外键关系要在插入数据后,否则一些数据会因为外键不存在无法插入,相信我。
1 | -- For table REGION |
好啦,齐活儿!