greenplum tpch测试记录

1、到tpc组织下载dbgen
http://www.tpc.org/tpc_documents_current_versions/current_specifications.asp
需要注册一下,tpc会发生一封邮件给出一个下载地址
2、编译tpch和生成测试数据
<pre>
[gpadmin@gp-node0 dbgen]$ unzip c1ac817c-d2f5-4a24-b7bd-c1f84e75949e-tpc-h-tool.zip
[gpadmin@gp-node0 tpch]$ cd tpch_2_17_0/
[gpadmin@gp-node0 tpch_2_17_0]$ ll
total 8
drwxrwxr-x. 8 gpadmin gpadmin 4096 May 5 2014 dbgen
drwxrwxr-x. 2 gpadmin gpadmin 33 May 5 2014 dev-tools
drwxrwxr-x. 10 gpadmin gpadmin 4096 May 5 2014 ref_data
[gpadmin@gp-node0 tpch_2_17_0]$ cd dbgen/
[gpadmin@gp-node0 dbgen]$ ll

[gpadmin@gp-node0 dbgen]$cp makefile.suite Makefile

[gpadmin@gp-node0 dbgen]$vi Makefile
第109行,设置
CC = gcc

DATABASE= ORACLE
MACHINE = LINUX
WORKLOAD = TPCH

[gpadmin@gp-node0 dbgen]$ make
生成sf=100的数据
[gpadmin@gp-node0 dbgen]$ ./dbgen -s 100 -f
TPC-H Population Generator (Version 2.17.0)
Copyright Transaction Processing Performance Council 1994 - 2010

</pre>
3、将测试数据转换为GP识别的格式,删除末尾的分隔符|。
<pre>
$for i in ls *.tbl; do sed 's/|$//' $i > ${i/tbl/csv}; done
</pre>
4、下载tpch,采用digoal修改过适应GP的脚本
<pre>
git clone https://github.com/digoal/pg_tpch.git
cd pg_tpch
</pre>
修改tpch-load.sql中指向的文件路径
采用vi查找替换命令
:%s+/tmp/dss-data+/data/tpch/csv100+
<pre>
[gpadmin@gp-node0 dss]$ more tpch-load.sql
BEGIN;

    CREATE TABLE PART (
            P_PARTKEY               SERIAL8,
            P_NAME                  VARCHAR(55),
            P_MFGR                  CHAR(25),
            P_BRAND                 CHAR(10),
            P_TYPE                  VARCHAR(25),
            P_SIZE                  INTEGER,
            P_CONTAINER             CHAR(10),
            P_RETAILPRICE   DECIMAL,
            P_COMMENT               VARCHAR(23)
    ) with (APPENDONLY=true,BLOCKSIZE=2097152,ORIENTATION=COLUMN,CHECKSUM=true,OIDS=false) DISTRIBUTED BY (p_partkey);

    COPY part FROM '/data/tpch/csv100/part.csv' WITH csv DELIMITER '|';

COMMIT;
......
</pre>
将pg_tpch的文件都拷贝到dbgen所在的目录:
<pre>
$cp -r pg_tpch/* tpch/tpch_2_17_0/dbgen/
$cd tpch/tpch_2_17_0/dbgen
</pre>
创建一个queries目录,用于存放转换后的tpc-h 测试SQL。
<pre>
[gpadmin@gp-node0 dbgen]$ SF=100
[gpadmin@gp-node0 dbgen]$ mkdir dss/queries
mkdir: cannot create directory ‘dss/queries’: File exists
[gpadmin@gp-node0 dbgen]$ for q in seq 1 22

do
DSS_QUERY=dss/templates ./qgen -s $SF $q > dss/queries/$q.sql
sed 's/^select/explain select/' dss/queries/$q.sql > dss/queries/$q.explain.sql
done
[gpadmin@gp-node0 dbgen]$
</pre>
5、创建数据库用户
<pre>
[gpadmin@gp-node0 pg_tpch]$ psql tpch
psql (8.2.15)
Type "help" for help.

tpch=# CREATE ROLE "tpchuser" login PASSWORD 'tpchuser' SUPERUSER NOINHERIT;
</pre>
设置几个参数:
<pre>
[gpadmin@gp-node0 pg_tpch]$ gpconfig -c enable_nestloop -v off
20160819:17:13:44:021871 gpconfig:gp-node0:gpadmin-[INFO]:-completed successfully
[gpadmin@gp-node0 pg_tpch]$ gpconfig -c work_mem -v 256MB
20160819:17:13:57:022043 gpconfig:gp-node0:gpadmin-[INFO]:-completed successfully
[gpadmin@gp-node0 pg_tpch]$ gpstop -u
20160819:17:14:00:022187 gpstop:gp-node0:gpadmin-[INFO]:-Starting gpstop with args: -u
20160819:17:14:00:022187 gpstop:gp-node0:gpadmin-[INFO]:-Gathering information and validating the environment...
20160819:17:14:00:022187 gpstop:gp-node0:gpadmin-[INFO]:-Obtaining Greenplum Master catalog information
20160819:17:14:00:022187 gpstop:gp-node0:gpadmin-[INFO]:-Obtaining Segment details from master...
20160819:17:14:02:022187 gpstop:gp-node0:gpadmin-[INFO]:-Greenplum Version: 'postgres (Greenplum Database) 4.3.9.0 build 1'
20160819:17:14:02:022187 gpstop:gp-node0:gpadmin-[INFO]:-Signalling all postmaster processes to reload
..
[gpadmin@gp-node0 pg_tpch]$
</pre>
6、执行测试
<pre>
[gpadmin@gp-node0 dbgen]$ ./tpch.sh ./results tpch tpchtest
vmstat: /usr/local/greenplum-db/./lib/libz.so.1: no version information available (required by /lib64/libdw.so.1)

./tpch.sh: line 166: kill: (30294) - No such process
./tpch.sh: line 189: 24564 Terminated vmstat $DELAY >> $RESULTS/vmstat.log
</pre>
7、使用以下方法生成CSV报告。
<pre>
[gpadmin@gp-node0 dbgen]$ php process.php ./results output.csv
input directory: ./results
output file: output.csv
[root@gp-node0 dbgen]# vi output.csv
tpch_load;tpch_pkeys;tpch_fkeys;tpch_indexes;tpch_analyze;tpch_total;query_1;query_2;query_3;query_4;query_5;query_6;query_7;query_8;query_9;query_10;query_11;query_12;query_13;query_14;query_15;query_16;query_17;query_18;query_19;query_20;query_21;query_2
2;query_1_hash;query_2_hash;query_3_hash;query_4_hash;query_5_hash;query_6_hash;query_7_hash;query_8_hash;query_9_hash;query_10_hash;query_11_hash;query_12_hash;query_13_hash;query_14_hash;query_15_hash;query_16_hash;query_17_hash;query_18_hash;query_19_ha
sh;query_20_hash;query_21_hash;query_22_hash;db_cache_hit_ratio
4.00;0.00;1.00;0.00;127.00;763.00;40.55;10.04;34.40;2.32;3.09;0.02;89.88;27.56;100.19;3.64;5.09;1.33;16.33;1.02;1.04;8.66;87.57;131.51;38.19;5.01;128.12;11.84;afc07662ad7b9f84497d46ec3e2982ca;58c9a2cadeac374f8d4f140f99edb6aa;2fc3f1557173580fea23723865a4b68
e;cd1b53d233e808cdcdedbcaaa1878596;65363ff4ff7557e250b34f7600b28c03;064cb1b93292905a03b1ae773255c930;9af0a7cf3c4836428ea37bc04f73f9a5;51c9d36bdece8ebf910c55547c07a6cf;fc1f609fda8b3c83013ebc33e7daeb68;1d90d4fdce96f68f67ef2ca88376f969;c2994eb3044e9ad1668608a
ef389f655;70eee67cbec1a9e64f3b55902c498dfb;509f9f92f0c59402422c8c6f82195134;fabf21ebb069cabf9d211643fe29bedf;734d0ea2c20114d51cc7b2f27c96b687;fe286ea7839d129719aff3afd4bb94b4;90dd1b04700d9154a2d741e090c4c709;146b5bc30d8f7ba184b7a81c360676b1;660bd16ff9a6f85
1d853e1d5530cd61f;12558d5227c3d83a0043255f46b351a2;6ec86cb3d0faa18fbae06cc8dcd5a245;7a6756e65d19c578f988901faa5ef3b4;0.00;
</pre>

8、php安装
<pre>
[root@gp-node0 dbgen]# yum -y install php
</prte>
如果“ImportError: No module named site”的错误,是因为greenplum修改了Python的PATH
设置一下环境变量:
export PYTHONPATH=/usr/lib64/python2.7:$PYTHONPATH

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 211,042评论 6 490
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 89,996评论 2 384
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 156,674评论 0 345
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,340评论 1 283
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,404评论 5 384
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,749评论 1 289
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,902评论 3 405
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,662评论 0 266
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,110评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,451评论 2 325
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,577评论 1 340
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,258评论 4 328
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,848评论 3 312
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,726评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,952评论 1 264
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,271评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,452评论 2 348

推荐阅读更多精彩内容