天天看點

Optane P4800X評測(2):Oracle 170萬TPM意味着什麼

SwingBench類壓測工具的性能極限是多少?決定這個數值的是CPU、記憶體,還是存儲?

上面第一個問題需要有一個前提,就是環境配置。在相同的伺服器平台,資料庫等軟體測試參數一緻的基礎上,對比不同的SSD或者陣列才有意義。

随着測試的不斷進展,我越來越體會到冬瓜哥這段話的意義:“Optane從根本上克服了NAND Flash的天生缺陷,利用更低和更穩定的時延,即便在很低的并發度下也能達到系統吞吐量的頂峰,天生适用于OLTP類業務。當然,根據目前的測試結果來看,冬瓜哥認為Optane後續有很大的優化空間,那就是适當增加一下内部的并發度,進而可以在高并發場景下,讓平均時延增加的更加緩慢,這樣其性能表現将會非常理想!”

下面就來給大家講講Oracle測試的情況:

怎麼看待單機Oracle 170萬TPM壓測結果?

這個170萬TPM的測試結果,需要考慮其測試平台:Dell PowerEdge R830伺服器,配置4顆Xeon E5-4610 v4 1.8G十核CPU和256GB記憶體。如果換更高的CPU,相信還能跑更快。

測試環境:PowerEdge R830伺服器,配置4顆Xeon E5-4610 v4 1.8G十核CPU

如上圖,由于單個本地PCIe SSD性能對于單節點資料庫來說已經相當快了,我們選擇将Oracle DB檔案和Redo Log都放在同一塊卡上。

首先,按照标準場景(讀/寫比例)、比較有代表性的測試模型。這時基于3D XPointMemory的Optane P4800X SSD領先P3700大約2%。我們并沒有刻意将測試資料集都在記憶體中命中,獲得80萬左右的TPM、1萬3千多TPS。如果不調整測試參數,想獲得更高結果可以換用更多核心數,或者更高主頻的CPU。

而在不改變硬體的情況下,我們也能跑出170萬TPM / 2萬7千多TPS的亮眼成績。上面圖表中也标注了原因——主要是将讀操作的比例進一步調大、并将測試資料集的容量調得比較小。這種情況下我們認為已經不适合對比存儲硬體的性能,下面會進一步列舉證據。

3D XPoint Memory最适合資料檔案還是日志?

我們摘取了AWR(Automatic Workload Repository)報告中的一些監測數值。這裡可以看到在未進行特别調優的情況下,Optane P4800X SSD的Oracle混合讀寫響應能力都要比P3700高14-15%。根據硬體規格和我們之前測試的結果,如果将寫的比例調大估計這個差距還會增加。

至于那份170萬TPM的報告,其落盤I/O寥寥無幾,幾乎是純靠CPU在記憶體裡跑了。

Oracle資料檔案 + RedoLog @ Intel P3700(NAND閃存),模拟一般環境

AWR報告中的log file parallel write直接反應Redo日志的寫延時,如上面截圖所示,Intel P3700 SSD的平均響應時間是2ms,按照傳統的眼光來看這已經很快了吧?

Oracle資料檔案 + RedoLog @ Optane P4800X(3D XPoint),模拟一般環境

一圖抵千言,Optane P4800X的表現明顯好很多,由于AWR報告中的日志平均響應時間隻精确到個位數,是以對應的資料為1ms。

小結:應用建議、ApachePass展望

1、170萬TPM可能還不是這套硬體能夠跑出的極限,但我們覺得再高的數值沒啥實際參考意義。

而在更多測試中,我們也嘗試過将Oracle資料檔案或者Redo Log單獨放在Optane P4800X上,相比之下後者的表現更好。

上面這張是我在網上看到的圖檔,據說是Intel示範下一代DIMM記憶體插槽形态的3D XPoint Memory(代号Apache Pass)。近期将出現更多支援NVDIMM非易失記憶體的伺服器用來加速資料庫日志存儲等,以DRAM為媒體的NVRAM還需要掉電保護設計,容量小且價格高昂。而“Apache Pass”的出現或将給這一市場帶來顯著改變,此外受益的還有以SAP HANA為代表的記憶體資料庫。

我也認同之前看到的一個觀點——對于那些針對磁盤和閃存系統設計傳統應用程式,需要為3D XPoint Memory進行優化才能充分發揮出其性能價值。