Greenplum常用導數據方法及性能測試

· COPY 導入數據方法

o 1、生成數據文件

o 2、替換分隔符

§ 2.1 使用gpadmin用戶COPY數據到Greenplum中

§ 2.2使用非gpadmin用戶COPY數據到Greenplum中

o 3、查看效果

o 4、查看官網說明

o 5、Shell腳本導入數據

o 6、性能總結

§ 6.1千兆網卡的性能總結

§ 6.1.1 數據量的大小

§ 6.1.2 查看數據的內容

§ 6.1.3 開始導數據

§ 6.1.4 查看錶的詳細信息

§ 6.2  萬兆網卡的性能總結

§ 6.2.1 數據量的大小

§ 6.2.2 查看數據的內容

§ 6.2.3 開始導數據

§ 6.2.4 查看錶的詳細信息

§ 6.2.5 查看錶的字段信息

§ 6.3 監控信息

§ 6.3.1 主節點網卡信息

§ 6.3.2 主節點的磁盤讀寫信息

§ 6.3.3 主節點的CPU使用率信息

§ 6.3.4 數據節點網卡信息

§ 6.3.5 數據節點的磁盤讀寫信息

§ 6.3.6 數據節點的CPU使用率信息

· COPY 導出數據方法

o 1 查看錶中的數據文件

o 2 導出CSV數據文件

o 3 查看導出的數據格式

COPY 導入數據方法

1、生成數據文件

$ cat source.txt

11111ddd22222

2、替換分隔符

2.1 使用gpadmin用戶COPY數據到Greenplum中

$ cat replaceScript.sh

#!/bin/sh

# 生成隱藏字符 soh=`echo 1 | awk '{printf("%c", $1)}'` replaceWord=$1

# 替換開始 sed -i 's/'$replaceWord'/'$soh'/g'  $2

# 插入到greenplum數據庫 cd /greenplum/soft/greenplum-db-5.8.0/bin ./psql -d chinadaas -h 192.168.209.11 -p 5432 -U gpadmin -c "COPY xiaoxu_test.xiaoxu_test  FROM '/home/xiaoxu/gpload_test/$2' WITH csv DELIMITER E'\001'  LOG ERRORS SEGMENT REJECT LIMIT 3000 ROWS";

標紅的部分最好不用,這樣可以確保數據的準確性。

E'\001' : 是ascii分隔符,詳情請查看:https://blog.csdn.net/xfg0218/article/details/80901752

2.2使用非gpadmin用戶COPY數據到Greenplum中

安裝psql命令

#yum install postgresql -y

psql -d chinadaas -h 192.168.209.11 -p 5432 -U gpadmin -c "\\COPY xiaoxu_test.xiaoxu_test  FROM '/home/xiaoxu/gpload_test/$2' WITH csv DELIMITER E'\001'  LOG ERRORS SEGMENT REJECT LIMIT 3000 ROWS";

注意\\的問題

3、查看效果

$ sh psqlInsert.sh  ddd   source.txt COPY 1

ddd: 是分隔符

source.txt:帶有分隔符的文件

4、查看官網說明

http://postgresql.ru.net/manual/sql-copy.html

5、Shell腳本導入數據

#  vi copyToGreenplum.sh

#!bin/sh

# 獲取爲文件所在的位置 basepath=$(cd `dirname $0`; pwd)

# scheam名字 scheamname='xiaoxu_test'

# 表名字 tablename='enterprisebaseinfocollect_out_20180812'

# 數據庫名字 gpdatabase='chinadaas'

# gp服務器ip gpip='192.168.209.11'

#gp port gpport='5432'

# gp user gpuser='gpadmin'

# 需要插入的文件的名字 dirfilename='mv_enterprisebaseinfo_20180812.csv'

# 替換雙引號與隱藏字符 # sh asciiReplaceScriptAll.sh

# gp copy 開始時間 gpinsert_time=`date +'%Y-%m-%d %H:%M:%S'`

echo -e "GP COPY 數據開始...."

# 執行插入操作 psql -d $gpdatabase -h $gpip -p $gpport -U $gpuser -c "COPY $scheamname.$tablename FROM '$basepath/$dirfilename' WITH csv DELIMITER E'\001'";

# gp copy 結束時間

gpinsert_endtime=`date +'%Y-%m-%d %H:%M:%S'` gpinsert_start_seconds=$(date --date="$gpinsert_time" +%s) gpinsert_ent_seconds=$(date --date="$gpinsert_endtime" +%s) time_of_use=$((end_seconds-start_seconds))

echo -e "\t $((time_of_use/3600)) h $((time_of_use%3600/60)) m $((time_of_use%3600%60)) s"

6、性能總結

6.1千兆網卡的性能總結

6.1.1 數據量的大小

$ du -sh mv_enterprisebaseinfo_20180812.csv 130G mv_enterprisebaseinfo_20180812.csv

6.1.2 查看數據的內容

$ head -n 1 mv_enterprisebaseinfo_20180812.csv 310000645D0435BED45B39E0531ECDA8C0463F2018020413595200008546上海佐洽房地產經紀有限公司閔行第一分公司3101120018106392151K7032018-02-02 00:00:00200000150214137361900-01-01 00:00:002018-02-02 00:00:002018-02-02 00:00:0031011210房地產經紀,房地產信息諮詢,商務信息諮詢,設計、製作、代理、發佈各類廣告,市場信息諮詢與調查(不得從事社調查、社會調研、民意調查、民意測驗),物業管理,票務代理,會務服務,翻譯服務,企業管理諮詢,接受隸屬企業委託從事相關業務,從事計算機科技領域內的技術開發、技術轉讓、技術諮詢、技術務,辦公用品、日用百貨的銷售。。【依法須經批准的項目,經相關部門批准後方可開展經營活動000000000001900-01-01 00:00:0002018-08-08 09:54:29.000000,E20180204,E20180205,E20180206,E20180207,E20180212,E20180718,E2015030410e635326b318d6881ca0214c0831e6e65P01MA1GBWMN991310112MA1GBWMN9972E3B618BF6B3365E0531ECDA8C05E49E20150304D9FC431BDDA2CF143DDB0A89F76036F7閔行區市場監督管理局1存續(在營、開業、在冊)有限責任公司分公司自然人獨資

6.1.3 開始導數據

$ sh copyToGreenplum.sh GP COPY 數據開始.... COPY 90700000 GP COPY 總耗時: 2 小時 32 分鐘 8 秒

$ sh copyToGreenplum.sh GP COPY 數據開始.... o0COPY 90700000 GP COPY 總耗時: 2 小時 54 分鐘 35 秒

$ sh copyToGreenplum.sh GP COPY 數據開始.... o0COPY 90700000 GP COPY 總耗時: 2 小時 46 分鐘 35 秒

6.1.4 查看錶的詳細信息

select count(*) from enterprisebaseinfocollect_out_20180812; 2,7210,0000 select pg_size_pretty(pg_relation_size('enterprisebaseinfocollect_out_20180812')) 137 GB

1 s_ext_nodenum varchar, 2 pripid varchar, 3 s_ext_sequence varchar, 4 entname varchar, 5 oriregno varchar, 6 regno varchar, 7 enttype varchar, 8 ppripid varchar, 9 pentname varchar, 10 pregno varchar, 11 hypotaxis varchar, 12 industryphy varchar, 13 industryco varchar, 14 abuitem varchar, 15 cbuitem varchar, 16 opfrom varchar, 17 opto varchar, 18 postalcode varchar, 19 tel varchar, 20 email varchar, 21 localadm varchar, 22 credlevel varchar, 23 assdate varchar, 24 esdate varchar, 25 apprdate varchar, 26 regorg varchar, 27 entcat varchar, 28 entstatus varchar, 29 regcap varchar, 30 opscope varchar, 31 opform varchar, 32 opscoandform varchar, 33 ptbusscope varchar, 34 domdistrict varchar, 35 dom varchar, 36 ecotecdevzone varchar, 37 domproright varchar, 38 oplocdistrict varchar, 39 oploc varchar, 40 reccap varchar, 41 insform varchar, 42 parnum varchar, 43 parform varchar, 44 exenum varchar, 45 empnum varchar, 46 sconform varchar, 47 forcapindcode varchar, 48 midpreindcode varchar, 49 protype varchar, 50 congro varchar, 51 congrocur varchar, 52 congrousd varchar, 53 regcapusd varchar, 54 regcapcur varchar, 55 regcaprmb varchar, 56 forregcapcur varchar, 57 forregcapusd varchar, 58 forreccapusd varchar, 59 worcap varchar, 60 chamecdate varchar, 61 opracttype varchar, 62 forentname varchar, 63 depincha varchar, 64 country varchar, 65 itemofoporcpro varchar, 66 conofcontrpro varchar, 67 fordom varchar, 68 forregecap varchar, 69 foropscope varchar, 70 s_ext_entproperty varchar, 71 s_ext_timestamp varchar, 72 s_ext_batch varchar, 73 s_ext_validflag varchar, 74 s_ext_induscat varchar, 75 s_ext_enttype varchar, 76 manacate varchar, 77 limparnum varchar, 78 foreignbodytype varchar, 79 entname_old varchar, 80 person_id varchar, 81 name varchar, 82 certype varchar, 83 ancheyear varchar, 84 candate varchar, 85 revdate varchar, 86 licid varchar, 87 credit_code varchar, 88 entid varchar, 89 jobid varchar, 90 tax_code varchar, 91 zspid varchar, 92 regorgdisplay varchar, 93 handle_type varchar , 94 is_new varchar , 95 countrydisplay varchar , 96 statusdisplay varchar , 97 typedisplay varchar, 98 regcapcurdisplay varchar

6.2  萬兆網卡的性能總結

6.2.1 數據量的大小

$ du -sh mv_enterprisebaseinfo_20180812.csv  130G mv_enterprisebaseinfo_20180812.csv

6.2.2 查看數據的內容

$ head -n 1 mv_enterprisebaseinfo_20180812.csv  310000645D0435BED45B39E0531ECDA8C0463F2018020413595200008546上海佐洽房地產經紀有限公司閔行第一分公司3101120018106392151K7032018-02-02 00:00:00200000150214137361900-01-01 00:00:002018-02-02 00:00:002018-02-02 00:00:0031011210房地產經紀,房地產信息諮詢,商務信息諮詢,設計、製作、代理、發佈各類廣告,市場信息諮詢與調查(不得從事社調查、社會調研、民意調查、民意測驗),物業管理,票務代理,會務服務,翻譯服務,企業管理諮詢,接受隸屬企業委託從事相關業務,從事計算機科技領域內的技術開發、技術轉讓、技術諮詢、技術務,辦公用品、日用百貨的銷售。。【依法須經批准的項目,經相關部門批准後方可開展經營活動000000000001900-01-01 00:00:0002018-08-08 09:54:29.000000,E20180204,E20180205,E20180206,E20180207,E20180212,E20180718,E2015030410e635326b318d6881ca0214c0831e6e65P01MA1GBWMN991310112MA1GBWMN9972E3B618BF6B3365E0531ECDA8C05E49E20150304D9FC431BDDA2CF143DDB0A89F76036F7閔行區市場監督管理局1存續(在營、開業、在冊)有限責任公司分公司自然人獨資

6.2.3 開始導數據

$ time psql -d stagging -h 192.168.209.11 -p 5432 -U gpadmin -c "COPY xiaoxu.enterprisebaseinfocollect_out_20180814 FROM '/home/xiaoxu/greenplum-load-data/oracle-export-greenplum/mv_enterprisebaseinfo_20180812.csv' WITH csv DELIMITER E'\001' LOG ERRORS SEGMENT REJECT LIMIT 3000 ROWS" COPY 90700000

real 22m13.116s user 0m0.003s sys 0m0.002s

6.2.4 查看錶的詳細信息

select pg_size_pretty(pg_relation_size('enterprisebaseinfocollect_out_20180812'))  137 GB

select count(*) from enterprisebaseinfocollect_out_20180812; 2,7210,0000

分佈鍵詳細信息

select gp_segment_id,count(1) from enterprisebaseinfocollect_out_20180814 group by 1;

6.2.5 查看錶的字段信息

1 s_ext_nodenum varchar, 2 pripid varchar, 3 s_ext_sequence varchar, 4 entname varchar, 5 oriregno varchar, 6 regno varchar, 7 enttype varchar, 8 ppripid varchar, 9 pentname varchar, 10 pregno varchar, 11 hypotaxis varchar, 12 industryphy varchar, 13 industryco varchar, 14 abuitem varchar, 15 cbuitem varchar, 16 opfrom varchar, 17 opto varchar, 18 postalcode varchar, 19 tel varchar, 20 email varchar, 21 localadm varchar, 22 credlevel varchar, 23 assdate varchar, 24 esdate varchar, 25 apprdate varchar, 26 regorg varchar, 27 entcat varchar, 28 entstatus varchar, 29 regcap varchar, 30 opscope varchar, 31 opform varchar, 32 opscoandform varchar, 33 ptbusscope varchar, 34 domdistrict varchar, 35 dom varchar, 36 ecotecdevzone varchar, 37 domproright varchar, 38 oplocdistrict varchar, 39 oploc varchar, 40 reccap varchar, 41 insform varchar, 42 parnum varchar, 43 parform varchar, 44 exenum varchar, 45 empnum varchar, 46 sconform varchar, 47 forcapindcode varchar, 48 midpreindcode varchar, 49 protype varchar, 50 congro varchar, 51 congrocur varchar, 52 congrousd varchar, 53 regcapusd varchar, 54 regcapcur varchar, 55 regcaprmb varchar, 56 forregcapcur varchar, 57 forregcapusd varchar, 58 forreccapusd varchar, 59 worcap varchar, 60 chamecdate varchar, 61 opracttype varchar, 62 forentname varchar, 63 depincha varchar, 64 country varchar, 65 itemofoporcpro varchar, 66 conofcontrpro varchar, 67 fordom varchar, 68 forregecap varchar, 69 foropscope varchar, 70 s_ext_entproperty varchar, 71 s_ext_timestamp varchar, 72 s_ext_batch varchar, 73 s_ext_validflag varchar, 74 s_ext_induscat varchar, 75 s_ext_enttype varchar, 76 manacate varchar, 77 limparnum varchar, 78 foreignbodytype varchar, 79 entname_old varchar, 80 person_id varchar, 81 name varchar, 82 certype varchar, 83 ancheyear varchar, 84 candate varchar, 85 revdate varchar, 86 licid varchar, 87 credit_code varchar, 88 entid varchar, 89 jobid varchar, 90 tax_code varchar, 91 zspid varchar, 92 regorgdisplay varchar, 93 handle_type varchar , 94 is_new varchar , 95 countrydisplay varchar , 96 statusdisplay varchar , 97 typedisplay varchar, 98 regcapcurdisplay varchar

6.3 監控信息

6.3.1 主節點網卡信息

6.3.2 主節點的磁盤讀寫信息

6.3.3 主節點的CPU使用率信息

6.3.4 數據節點網卡信息

6.3.5 數據節點的磁盤讀寫信息

6.3.6 數據節點的CPU使用率信息

COPY 導出數據方法

1 查看錶中的數據文件

2 導出CSV數據文件

$ psql -d chinadaas -h 192.168.209.11 -p 5432 -U gpadmin -c "copy datafix.xiaoxu_df_entname to '/home/xiaoxu/shujudingzheng/data-dir/entname.csv' WITH DELIMITER AS E'\u0001' " COPY 11807

3 查看導出的數據格式

$ head -n 3 entname.csv 11000020e38b8c4353938c014370906a7e0004中贛核(北京)投資發展有限公司 440000440125125021998031700074許村龍渡電鍍廠 440000P-4da509af-be89-4ef8-b24a-4a4e97a96b57海寧市許巷鄉郭灣村房屋裝潢服務部

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章