TPC-Hベンチマーク続き
前回のCompressを行う前は:
次にLINEITEMをl_shipdateでPartitioningしたら
そして、各パーティションをCompressしたら、2倍以上のqphをたたき出した
Partitioning前はLINITEMが全体の70%の負荷オブジェクトだったが、今では負荷はある程度分散された。
前回のテストではI/O buffer sizeを最適化することによりdb_file_multiblock_read_count = 64でも安定するようになった。そして、全体を通してみると、この64の結果が一番よい:
db_file_multiblock_read_count = 64, _db_file_direct_io_count = 524288
db_file_multiblock_read_count = 128, _db_file_direct_io_count = 1048576
画面右上に出ている数値は最後のサンプリングタイミングでの数値。平均ではない。
今回の試作機はKingstonのお買い得SSD4本でRAID-0を構築した。
そのときのStrip Sizeは128KBとした。
このサイズはIntel Matrix Storage ManagerでRAID0を設定するときの最大値だ。
そして、exFAT形式のファイルをフォーマットするときに、
Allocation Unit Sizeを512KBとした。128KB x 4本 = 512KB
その結果
前回db_file_multiblock_read_count=64のとき、安定しない結果に終わった。
そして「ディスク転送量+アルファ」の何かがあると書いた。
_db_file_direct_io_count : Sequential I/O buf size
今回のテストはBLOCK_SIZE=8K=8192Bでテストをしている。
このI/O buffer sizeを最適化してからテストを再度行う:
db_file_multiblock_read_count = 64, _db_file_direct_io_count = 524288
db_file_multiblock_read_count = 128, _db_file_direct_io_count = 1048576
db_file_multiblock_read_count = 256, _db_file_direct_io_count = 2907152
TPC-Hベンチマークの続き
前回のSQLを見てみると、やはりTPC-H。TPC-Cとはぜんぜん違う。
実行結果もたくさん返される:
TPC-Cのときは:
ネットワークバッファを広げてみる。
sqlnet.ora
DEFAULT_SDU_SIZE=32768
RECV_BUF_SIZE=524288
SEND_BUF_SIZE=524288
セッション・データ・ユニット(session data unit: SDU)
Oracle Netがネットワーク間でデータを転送する前にデータを配置するバッファ。Oracle Netがバッファ内のデータを送信するのは、データ送信が要求されたとき、またはバッファがデータでいっぱいになったときである。
hammeroraでTPC-Hベンチマークを再び行い、ディスク転送量をみる:
前回のほぼ最大が400MB/sから安定した420MB/s強に改善された。5%アップだ。
もう少し突っ込んでIPC接続でもテストをした(tnsnames.oraにORACLE2を追加):
前回の続きでKingstonのお買い得SSD4本で構築したRAID-0のTPC-Hベンチマークを行った。
初めは、1セッション、パラレル度=6でテスト:
そのときのディスク転送量は:
300-400MB/s程度しか出ていない。
CrystalDiskMarkで計った限界量は
1GBのReadで最高522MB/sを出しているのに、およそ120MB足りない。
そこで、4セッションにして、もう一度実行してみた:
TPC-Hの環境をKingstonのお買い得SSD4本で構築したRAID-0に構築した。
以前のCrystalDiskMarkの結果は以下のとおりだった(SATA直結のRAID-0、exFAT 512K):
比較対象としたのは、Western Digital社のWD6000HLHX。SATAIII 6Gb/秒で接続可能な10,000 RPMハードドライブ
CrystalDiskMarkの結果は以下のとおりだった:
150万件のORDERSを外部表として使う:
SQL> desc orders
名前 NULL? 型
----------------------------------------- -------- ----------------------------
O_ORDERDATE DATE
O_ORDERKEY NOT NULL NUMBER
O_CUSTKEY NOT NULL NUMBER
O_ORDERPRIORITY CHAR(15)
O_SHIPPRIORITY NUMBER
O_CLERK CHAR(15)
Recent comments
17 weeks 3 days ago
27 weeks 1 day ago
28 weeks 6 days ago
32 weeks 22 hours ago
34 weeks 2 days ago
43 weeks 6 days ago
45 weeks 3 days ago
46 weeks 3 days ago
46 weeks 4 days ago
49 weeks 2 days ago