B21 DBエンジニアのための最新HW講座 (Deep Insight About Database and Hardware) by Masaya Ishikawa

3,236 views
3,101 views

Published on

Published in: Technology
0 Comments
13 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
3,236
On SlideShare
0
From Embeds
0
Number of Embeds
49
Actions
Shares
0
Downloads
63
Comments
0
Likes
13
Embeds 0
No embeds

No notes for slide

B21 DBエンジニアのための最新HW講座 (Deep Insight About Database and Hardware) by Masaya Ishikawa

  1. 1. DBエンジニアのための最新HW講座株式会社インサイトテクノロジーCTO 石川 雅也SSD, Infiniband and Memory
  2. 2. Disclaimer本資料の内容はすべて執筆者の個人的な見解であり、株式会社インサイトテクノロジーの公式な見解を示すものではありません。本資料内で使用されている社名、ロゴ、製品、サービス名およびブランド名は、該当する各社の登録商標または商標です。本資料内でベンチマークプログラムの一部を流用して性能測定していますが、データベースのベンチマーク目的ではありません。本資料の一部あるいは全体について許可無く複製および転載することを禁じます。Copyright © 2012 Insight Technology, Inc. All Rights Reserved. 2
  3. 3. 自己紹介• 石川 雅也 (いしかわ まさや)• 現職o 株式会社インサイトテクノロジー 取締役 CTOFB: MasayaIshikawa• 職歴o 外資系HWベンダーにて、ミニコンOS, UNIX OS担当SE. 社内SE向け技術情報発信、トラブルシュート。crash dump解析、UNIX SCSI DeviceDriverの改造なども。o 1993年 日本オラクルに入社。DBインフラ系テクニカルサポート、コンサルティング、トラブルシュート。o 1995年 インサイトテクノロジー設立Oracleパフォーマンス管理ツール Performance Insight開発 (1995~)Oracleアクセスログ取得管理ツール PISO開発 (2004~)SQL Server版、富士通Symfoware版 PISO開発 (2005~)DB コンサルティング、トラブルシュート2009年 SSDのR&D開始2011年1月 DB向けHW Insight Qube R&D本格的に開始。2012年3月 Insight Qube発売Copyright © 2012 Insight Technology, Inc. All Rights Reserved. 3
  4. 4. Copyright © 2013 Insight Technology, Inc. All Rights Reserved. 4
  5. 5. Insight Qube の目標コモディティなパーツを使用して、DB向けに ボトルネックを無くしたシステムを構成し、驚異的な性能、高い運用性、優れたコストパフォーマンスを実現すること!Copyright © 2012 Insight Technology, Inc. All Rights Reserved. 5
  6. 6. DB専用機器と同等の性能Copyright © 2013 Insight Technology, Inc. All Rights Reserved. 605001000150020002500300035004000Insight QUBE A B処理時間(秒)Copyright © 2013 Insight Technology, Inc. All Rights Reserved. 6テスト内容:約30GB相当のデータをRAC2ノードからinsert (シーケンシャル/ランダム ライト)のテストを実施競合A:DB専用アプライアンス 競合B:高性能汎用機器でのチューニングInsight QubeスペックOracle RAC 2 node構成DB:サーバ×2CPU: Xeon 5690 (12Mcache/3.46GHz/6cores/12threads) * 2Memory: 48GBStorageサーバ×3:Storage * 3 (240 * 8 * 3 = 5.8TB / 実効容量 = 2.9TB)
  7. 7. HWもわかるDBエンジニアにHWまで理解している DBエンジニアって、重宝されるゾ♪このセッションでは、DB専用ハードウェアInsight Qubeの開発を通じて得た知見を、SSD, Infiniband, 大容量Memory という 3つの最新技術と共にご紹介します。Copyright © 2013 Insight Technology, Inc. All Rights Reserved. 7
  8. 8. System BottlenecksCopyright © 2012 Insight Technology, Inc. All Rights Reserved. 8
  9. 9. Eliminate BottlenecksCopyright © 2012 Insight Technology, Inc. All Rights Reserved. 9
  10. 10. Agenda of SSD10• HDD, SSD, PCIe Flash の比較• SSDのパフォーマンスを考える• 書き込み速度劣化、Client/Enterpriseモデルの違い• IOサイズ別パフォーマンスとデータベース• アライメント、OSチューニング、IOスケジューラー など• SSDの寿命を考える• 寿命とは• Client/Enterpriseモデルの違い• カタログから寿命を読むCopyright © 2012 Insight Technology, Inc. All Rights Reserved.
  11. 11. Storageの性能比較110 500 1000 1500 2000HDDSSDPCIe SSDMB/sThroughput700~2GB/s~ 500MB/s~200MB/s0 100 200 300 400 500HDDSSDPCIe SSDIOPS(k)IOPS70K~500k20k~70k~300Copyright © 2012 Insight Technology, Inc. All Rights Reserved.* コンシューマー向け製品を含む。 HDDは 2.5”
  12. 12. Storageの仕様比較120 500 1000 1500 2000 2500HDDSSDPCIe SSDGBCapacity300MB~2.4TB1.6TB1TB0 2000 4000 6000 8000HDDSSDPCIe SSD円/GB価格2000 ~ 6000円100 ~ 1200円 [3000円]60 ~ 300円0 20 40 60 80HDDSSDPCIe SSDWatt消費電力Idle:20w RW:50wIdle:~1w RW:数wIdle:4w RW:8w* コンシューマー向け製品を含む。 HDDは 2.5”
  13. 13. Copyright © 2013 Insight Technology, Inc. All Rights Reserved. 13http://www.snia.org/sites/default/files/UnderstandingSSDPerformance.Jan12.web_.pdfSSDのパフォーマンスを考えるFOBSteady State
  14. 14. Copyright © 2013 Insight Technology, Inc. All Rights Reserved. 14http://www.snia.org/sites/default/files/UnderstandingSSDPerformance.Jan12.web_.pdfSSDのパフォーマンスを考える
  15. 15. SSDの書き込み速度低下15Write AmplificationNAND Flash Chipの特性で、データの上書きは出来ず、一度消去してから書き込むしかない。また消去の単位は書込みの単位より大きい。そのため余計な読み込み・書込みが発生。1. データが書き込まれていない場合は、2. そのまま書き込めるCopyright © 2013 Insight Technology, Inc. All Rights Reserved.
  16. 16. 16Write AmplificationNAND Flash Chipの特性で、データの上書きは出来ず、一度消去してから書き込むしかない。また消去の単位は書込みの単位より大きい。そのため余計な読み込み・書込みが発生。1. データが書き込まれている場合、2. 1箇所だけ変更しようとしても、3. 消去するサイズのデータをコピーし、4. データを消去し、5. 1箇所を変更して、SSDの書き込み速度低下Copyright © 2013 Insight Technology, Inc. All Rights Reserved.
  17. 17. 17Write AmplificationNAND Flash Chipの特性で、データの上書きは出来ず、一度消去してから書き込むしかない。また消去の単位は書込みの単位より大きい。そのため余計な読み込み・書込みが発生。1. データが書き込まれている場合、2. 1箇所だけ変更しようとしても、3. 消去するサイズのデータをコピーし、4. データを消去し、5. 1箇所を変更して、6. 全て書き戻す。SSDの書き込み速度低下Copyright © 2013 Insight Technology, Inc. All Rights Reserved.• read: 数10μs• write: 数10μs ~ 数100μs• erase: 数ms
  18. 18. 180%20%40%60%80%100%A B C DRnd. ReadSeq. ReadRnd. WriteSeq. Write最大速度を100として、速度劣化時の速度の割合。SSD製品別 速度劣化率 2011Copyright © 2012 Insight Technology, Inc. All Rights Reserved.
  19. 19. 190%20%40%60%80%100%A B E C DRnd. ReadSeq. ReadRnd. WriteSeq. Write最大速度を100として、速度劣化時の速度の割合。SSD製品別 速度劣化率 2012Copyright © 2012 Insight Technology, Inc. All Rights Reserved.この速度安定感!MLCを使用しているが、耐久性も抜群抜群のコストパフォーマンス
  20. 20. DBの典型的なIOサイズ• Oracleo Sequential Read – block size 4k, 8k,…o Scattered Read – block size x multiblock_read_count = 128k, 256k…o Direct Read – Scattered Readと同じ• SQL Servero Clustered Index Seek – block size 8ko Clustered Index Scan – extent size 64ko 起動オプション設定などの調整で 最大512k まで大きくすることが可能• Vectorwiseo スペック上は 1M、実測値は 512kか?• Filesystemo 512b ~Copyright © 2013 Insight Technology, Inc. All Rights Reserved. 21
  21. 21. カタログ・スペックに騙されるな• Th. R/W 500MB/500MB (大体は128k~ の値)• IOPS R/W 2万~7万 (大体は 4k の値)IOサイズ 4k で 5万IOPSなら Th. 200MB/s512bの値を載せている製品もあるので注意• これらの値は、(大体は) FOB(Fresh Out of Box)の性能と思え• 心ある Enterprise向け製品はSteady (Sustained)Performanceを載せている。Copyright © 2013 Insight Technology, Inc. All Rights Reserved. 22
  22. 22. SSD本体以外の考慮点アライメントCopyright © 2013 Insight Technology, Inc. All Rights Reserved. 23http://www.smartstoragesys.com/pdfs/AN001_Benchmarking_and_Performance.pdf• NAND Flush Memory Blocks• RAID Stripe Size, Chunk Size• Partition Alignment• FileSystem Blocksize• DB Blocksize
  23. 23. • IOスケジューラ (Linux)o HDDの場合は cfqo SSDの場合は noop (or deadline)• Kernel options, Filesystem Options, …Copyright © 2013 Insight Technology, Inc. All Rights Reserved. 24SSD本体以外の考慮点OS関連
  24. 24. SSDの寿命を考える25SSDの寿命とは?ビットエラーが多発したブロックを不良ブロックとして切り離し、予備領域を使う。予備領域がなくなった時が寿命で、SSDはリードオンリーまたはアクセス不能!! になる。MLCで3千回から5千回、eMLCで3万回、SLCで10万回がNAND Flash Chipとしての書込み寿命(P/E 回数)MLCは、このままではEnterpriseに使用できないので、いかに寿命を延ばすかが、各社の技術!!Copyright © 2013 Insight Technology, Inc. All Rights Reserved.
  25. 25. SSDの寿命を延ばすには26Ware Leveling書込みを並列化させ、書込み速度の向上を図るとともに、特定のチップに書込みが偏らないように調整する。すべてのチップが同時に書込み寿命を迎えるのが理想的予備領域 (Over Provisioning)一般的なコンシューマー向けSSDの場合 Binary GiB(ギビバイト) (1024 ^ 3)と Decimal GB (1000 ^ 3)の違いを利用している。例えば 256GBの製品の場合 274.88GiB(256 x 1024 ^ 3) なので、その差18.8GBが予備領域 (約 7%)エンタープライズ向けの場合、25%程度を予備領域として確保している製品が多い。製品によっては 40%~200%以上を予備領域としている製品もある。Copyright © 2013 Insight Technology, Inc. All Rights Reserved.
  26. 26. SSDの寿命を延ばすには27ECCエラー訂正512byte毎に数ビット(1年前は 4~8bit)のエラーが訂正出来る。Flashメモリのプロセスルールが微細になると、エラー発生率も上がるため、プロセスルールが進化すると ECCの bit数も大きくする必要がある。ECCで訂正できるビット数を増やすと、その分チップを長く使うことが出来るので、結果として寿命が延びる。Fusion-ioの ioDriveは 512byteあたり 39bitSandForce SF-2500は 512byteあたり 55bitCopyright © 2013 Insight Technology, Inc. All Rights Reserved.
  27. 27. 寿命に関するスペックの見方• WA – Write AmplificationWA =Flashに書き込まれたデータ量Hostから書き込んだデータ量通常1.1~10程度。圧縮機能付きコントローラの場合は 0.2 ~ 7.5アクセスメソッドやデータの種類などにより異なる。が、コントローラー(ファームウェア)の良し悪しが一番影響するところ。小さいほうが良い• Sequential Access: WA値が小さいRandom Access: WA値が大きい• 圧縮機能付きコントローラの場合、未圧縮データは WA値が小さい圧縮済みデータは WA値が大きいCopyright © 2013 Insight Technology, Inc. All Rights Reserved. 28
  28. 28. 寿命に関するスペックの見方• TBW – Total Byte Written 書き込み可能 総容量TBW =Capacity 容量 ∗ (1 + 𝑂𝑃) ∗ PE可能回数WA𝑂𝑃 = 𝑂𝑣𝑒𝑟𝑃𝑟𝑜𝑣𝑖𝑠𝑖𝑜𝑛𝑖𝑛𝑔 =𝑃ℎ𝑦𝑠𝑖𝑐𝑎𝑙 Capacity𝐿𝑜𝑔𝑖𝑐𝑎𝑙 𝐶𝑎𝑝𝑎𝑐𝑖𝑡𝑦− 1• DWPD – Data Write per Day1日に容量の何倍書き込みして、何年保証するかDWPD =TBW保証期間 日 ∗ Capacity(容量)=1 + 𝑂𝑃 ∗ PE可能回数WA ∗ 保証期間(日)Copyright © 2013 Insight Technology, Inc. All Rights Reserved. 29
  29. 29. SSD製品別 書き込み寿命3005101520253035A B E C DWrite EnduranceTB / GB容量1GBあたり、何TB書き込むと寿命になるか。TB10 DWPD/5y
  30. 30. 31• エンタープライズ市場で使えるMLC SSDが多数。• HDDと比較すると、台数削減が見込めるため、HWコスト、スペースコスト、運用コスト、消費電力コストの削減が実現可能。性能向上による業務へのプラスのインパクトも考えるべき。SSD まとめCopyright © 2013 Insight Technology, Inc. All Rights Reserved.
  31. 31. 32• 性能劣化はどのSSDでも存在する。• どれ位劣化するかはカタログには書いていない !!!!劣化の度合いは値段には比例しない !!!• Steadyなパフォーマンスを教えてもらおう!• 寿命もWA値の設定次第でどうにでも見せられる。• こちらも理論武装して、WA値がいくつで計算した寿命なのか教えてもらおう!• その他、性能を引き出すため、寿命を延ばすために、正しい使い方を。SSD まとめCopyright © 2013 Insight Technology, Inc. All Rights Reserved.
  32. 32. SSD Vendors33SSDベンダーは、全世界で 200社前後。Enterprise向けだけでも、数十社。HDDと同様再編が進んでいる。Flash Based StrageHP 3PAR (買収), NetApp, DELL, Hitachi Data SystemsEMC XtremeIO (買収), IBM Texas Memory Systems(買収),Kaminario, Nimbus Data, Pure Storage, Skyera,Tegile Systems, Violin Memory, WhiptailPCIe FlashFusion-io, LSI, Intel, STEC, Micron, OCZ, Virident, EMCSAS/SATA SSDSTEC, OCZ, SanDisk, Micron, Smart Storage Systems,Samsung, Intel, Toshiba, …Copyright © 2012 Insight Technology, Inc. All Rights Reserved.
  33. 33. Eliminate BottlenecksCopyright © 2012 Insight Technology, Inc. All Rights Reserved. 34
  34. 34. 35• 転送速度40Gbps (QDR x4)56Gbps (FDR x4)• コスト (ポート単価)10GbE, FCよりもかなり安い• Latency – 1μsec (port to port)10GbEは 20~μsec• 取り扱いや柔軟性、拡張性は 10GbEにかなわない。• しかし、コストと速度、およびCluster内のインターコネクトとしての用途を考えると Infinibandが最適の選択肢。• 但し、使用するプロトコルなど含めて、扱いは若干ハードルがあるだろう。Infiniband とはCopyright © 2012 Insight Technology, Inc. All Rights Reserved.
  35. 35. 36主なメーカー• Mellanox現在、市場の9割以上を占有40GbEの最大メーカーでもある6月に12port IB, Eth switchを低価格で販売• QLogic (Intelが買収)今はダメ来年以降に EDRで巻き返しを計画中Infiniband とはCopyright © 2012 Insight Technology, Inc. All Rights Reserved.
  36. 36. 37http://www.infinibandta.org/content/pages.php?pg=technology_overviewInfiniband ロードマップ
  37. 37. 38• Bit変換の仕様が異なるため実際の速度はQDR 4GB/s に対して FDR 6GB/s• PCI Express Gen3 x8 (80Gbps) を使用する• DDR3-1333 10GB/s• PCIe Gen3.0 x8 8GB/s• Infiniband FDR x4 6GB/s• PICe Gen2.0 x8 4GB/s• Infiniband QDR x4 4GB/s• 10GbE 1GB/s• Fibre Channel 0.8GbpsInfiniband FDR
  38. 38. 39•現時点ではCluster間あるいはStorageとのインターコネクトとしてはベストな選択。一番早くて、相対的なコストも10GbE, FCと比較して高くない。 (安くないけど)•使用するのに若干ハードルはある。DriverVersionとか…一度構成出来れば、運用性は良い。•Mellanox 1社になり、市場として広がるのかが心配。Infiniband まとめ
  39. 39. Eliminate BottlenecksCopyright © 2012 Insight Technology, Inc. All Rights Reserved. 40
  40. 40. Memory Bottleneck• 大量メモリーがパフォーマンス上有利なことは自明• しかし、従来メモリーボトルネックは容量の問題としてしか語られて来なかった。果たしてそれは正しいのか?• 課題は正しい構成の仕方使いどころの把握コストCopyright © 2012 Insight Technology, Inc. All Rights Reserved. 41
  41. 41. Latencyの比較Copyright © 2012 Insight Technology, Inc. All Rights Reserved. 42IBM Redbooks - http://www.redbooks.ibm.com/redpapers/pdfs/redp4814.pdf
  42. 42. Latencyの比較Copyright © 2012 Insight Technology, Inc. All Rights Reserved. 43CPU RegisterCPU CacheRAMSSDHDDSSDRAM, Cache, …
  43. 43. メモリの正しい構成の仕方Copyright © 2012 Insight Technology, Inc. All Rights Reserved. 44
  44. 44. Memory Bench with Multi CoreCopyright © 2012 Insight Technology, Inc. All Rights Reserved. 4510.020.324.927.2 27.90510152025301 core 2 core 4 core 8 core 16 coreThroughput(GB/s)Ramsmp3.5.0 (http://alasir.com/software/ramspeed/) で計測Xeon(4core) x 2, DDR3-1333 8GB R-DIMM DR 使用
  45. 45. Memory 規格Copyright © 2012 Insight Technology, Inc. All Rights Reserved. 46チップ規格 モジュール規格 転送速度DDR3-800 PC3-6400 6.4 GB/sDDR3-1066 PC3-8500 8.5 GB/sDDR3-1333 PC3-10600 10.7 GB/sDDR3-1600 PC3-12800 12.8 GB/sXeonArchitecture装着可能枚数/CPU対応DIMMサイズ最大メモリ搭載量 /CPU対応メモリチップWestmere-EP 6枚 16GB 96GB DDR3-1333Westmere-EX 8枚 16GB 128GB DDR3-1066Sandy Bridge 12枚 32GB 384GB DDR3-1600
  46. 46. Copyright © 2012 Insight Technology, Inc. All Rights Reserved. 47Sandy Bridge Support Memory32GB R-DIMMを使うと800MHz動作、かつ2枚/Ch = 8枚/CPUつまり 256GB/CPUまでしかサポートされない
  47. 47. Sandy Bridge Support MemoryCopyright © 2012 Insight Technology, Inc. All Rights Reserved. 4832GB LR-DIMMを使うと1066MHz動作で384GB/CPUまでサポートされる
  48. 48. Memoryの最適な枚数• 4メモリー・チャンネルあるSandy Bridge Dual CPUマシンに、192GBメモリーを載せるときはどう構成する?• 32GB x 6枚 = 192GB?16GB x 12枚 = 192GB?• 正解は 16GB x 8枚 + 8G x 8枚Dual CPUで 8メモリー・チャンネルあるので、DIMM枚数は 8の倍数にするべし。• 16GB DIMMはCPUに近い方に載せるCopyright © 2012 Insight Technology, Inc. All Rights Reserved. 49
  49. 49. メモリの使いどころの把握Copyright © 2012 Insight Technology, Inc. All Rights Reserved. 50
  50. 50. Infiniband Fabric(40Gbs/s)Storage Storage StorageRAC Node#1RAC Node#2Copyright © 2012 Insight Technology, Inc. All Rights Reserved. 51SATA SSD * 6* 3ノードRedhat EnterpriseLinux 5.7 64bitIntel Xeon E56452.40GHz * 2 * 2ノード120GB * 2ノードOracle 11.2.0.3 EE +RAC SGA 40GBSATA 1K rpm HDD * 6* 3ノードStorage Storage Storage6枚のSSDを使用して3.2GB/s readInfiniband利用で10GB/s readRACのインターコネクトにも
  51. 51. 実測 #1• 4億件の売上データから、4半期ごとの売上を集計Copyright © 2012 Insight Technology, Inc. All Rights Reserved. 52select /*+ parallel(s,48) use_hash(s,p) */to_char(s.TIME_ID, yyyy-Q) YMD,sum(s.AMOUNT_SOLD * p.PROD_LIST_PRICE) SOLDfrom SALES s,PRODUCT pwhere s.PROD_ID = p.PROD_IDgroup by to_char(s.TIME_ID, yyyy-Q)order by 1;
  52. 52. DWH Power Test84.412.4 11.6020406080100120ElapsedTime(sec)Copyright © 2012 Insight Technology, Inc. All Rights Reserved. 537倍メモリの効果なし?
  53. 53. 実測#2Copyright © 2012 Insight Technology, Inc. All Rights Reserved. 54• TPC-Hで使用しているSQLの一部を複数セッションから同時に実行• セッション数を 5 → 10 → 20 と増やしてみて、ボトルネックの傾向を探る
  54. 54. IQ DWH query performance0.8 0.6 0.48121627394901020304050605 session 10 session 20 sessionQpmHDD SSD In-MemoryCopyright © 2012 Insight Technology, Inc. All Rights Reserved. 55x40x3x123
  55. 55. メモリのコストCopyright © 2012 Insight Technology, Inc. All Rights Reserved. 56
  56. 56. コスト比較0 25 50 75 100 125 150DIMMPCI-e…SSDHDDCopyright © 2012 Insight Technology, Inc. All Rights Reserved. 57※ SAS HDD 7200rpm を 1とした場合HDD x1~5SSD x10~20PCI-e SSD x33~60Enterprise向けStorageと Memoryの 容量あたり単価比較~8GB x2516GB x4532GB x150
  57. 57. Memory Bottleneck• 課題は正しい構成の仕方使いどころの把握そしてコストCopyright © 2012 Insight Technology, Inc. All Rights Reserved. 58
  58. 58. Conclusion Memory• 正しい構成の仕方o CPUの数が多いほうがメモリ帯域を有効に使用出来る(Core数では無い)o 大容量メモリを使用するならR-DIMMではなく LR-DIMMを使用する必要がある。速度も LR-DIMMが有利。o Memory Channelを有効に使える枚数を意識する• 使いどころの把握o OLTP的な処理では効果が見込めるo DWH的な処理の場合、充分に早いスループットを実現しているストレージの場合、メモリの効果が出ないパターンがある• コストo 特に大容量メモリを実現する場合、コストは高い。IQなら安い!Copyright © 2012 Insight Technology, Inc. All Rights Reserved. 59

×