天天看點

Green Plum測試報告

最近在emc公司就green plum做了下測試,總體而言,測試效果還是很不錯的,在這裡非常感謝emc測試人員的協助,希望有機會能夠合作。

本文先後從資料加載、資料查詢、資料範圍查詢、資料更新、修改方面對green plum做了相關測試,并給出了評測結論。

第 1 章    測試環境

測試項目

oracle11g

greenplum

master 節點

segment 4節點

segment 8節點

主機節點數

2

4

8

cpu

2*4 intel 2.83ghz

2*6 intel 3.0ghz

2*6  intel 2.93ghz

記憶體

16g

磁盤

146g*2(raid1)

sas 10k

6*300gb sas(raid5)

12*600gb sas(raid5)

存儲

dell md3200

6gbps sas

36*2t(2hotspace)

2t*8+10t( raid5)

n/a

網絡

2*1gb千兆網口

4*1 gb千兆網口

2*1 10gb 萬兆網口

2*1 gb 千兆網口

交換機

3560千兆交換機

萬兆交換機2台,千兆交換機1台

oracle

green plum

作業系統&版本

oracle linux5.6

linux5.5

資料庫&版本

oracle 11g 11.2.0.2.0

greenplum-db-4.1.1.3

第 2 章    測試内容及結果

具體項目

11g

4節點

8節點

copy <b>vs</b> sql loader

6400萬

900秒

外部表 <b>vs</b> 外部表

63秒

50秒

6400萬*3

130秒

76秒

insert方式<b>vs</b> insert方式

1800~9000秒

6400萬*4

74秒

39秒

6400萬*8

360秒

90秒

6400萬*16

356秒

209秒

從4節點與8節點的加載性能來看,性能和節點數量基本呈線性關系。

green plum與oracle相比,資料加載的性能提高20倍~100倍不等。

标準查詢語句性能測試

單分區分組

(參見相關語句)

select

120秒

——

40

ctas

33秒

17.5秒

12秒

insert

11.9秒

5.3秒

八分區分組

500秒

77.6秒

232秒

40.5秒

三十個分區分組

207.3秒

單分區與八個分區分組統計

437秒

67.1秒

56.1秒

35.8秒

27.7秒

32.4秒

21.9秒

單分區與三十個分區分組統計

230.0秒

ip查詢語句性能測試

ip範圍查詢—by 轉換後

約1800秒

約2537秒

ip範圍查詢—by函數

約18000秒

約36000秒

ip查詢

21秒

32~98秒

從以上的測試資料來看,大批量的資料處理,都能夠在所期望的時間内以很短的時間完成執行。通過4個節點與8個節點響應的sql測試時間的比較來看,性能與節點數量基本上呈線性關系。

greenplum與oracle相比,資料查詢的性能提高3倍~20倍不等。(oracle的測試結果已做過優化,gp則為無索引狀态)

      基于ip範圍查詢的結果見補充說明

對于ip範圍查詢(包括數字和函數比較),green plum和oracle的執行性能均一般,greenplum還要更差一些。

為 了解決這個性能問題,green plum對ip表做了特殊處理,即把10999行的ip表拆分成1億多條的ip明細表,采用等關聯處理,即避開nestloop方式的join而使用更為 快速的hash join。修正效果顯著,相同的資料關聯從之前的約2500秒的處理時間降低到約20秒,有了100倍左右的提升。

update(30個分區)

130.7秒

delete

對于大批量資料的更新和删除,green plum的優勢更加明顯,oracle還需要加以特殊處理(即分段處理)才能進行更新和删除。

green plum的update有個小問題,批量增加字段會導緻整個表的大小翻倍,可以通過表的線上分析進行壓縮。

繼續閱讀