DBのパフォーマンスを上げる特効薬として「半導体ストレージ」は割と有効だと思う件
みなさん、こんばんは。吉政創成の吉政でございます。
仕事柄、DBのパフォーマンスを上げた成功例の事例を取材することが割とあります。
DBのパフォーマンスボトルネックはいろいろなケースがあるので、100%の有効な特効薬はないと思います。通常、DBのパフォーマンスが上がらない場合は、まず以下の手を打つようです。
1.パフォーマンスネックの原因を探る
2.サーバ側のメモリを増設する
3.ソフトウェア面でのチューニングをやってみる
パフォーマンスのボトルネックは、一番パフォーマンスが悪い部分がネックにになるので、対象システムのどの部分が原因かを見出します。
「1」については、サーバ側の処理パフォーマンスに原因があれば効くと思います。
「2」については、ソフトウェア側の処理パフォーマンスに原因があれば効くと思います。
ここまで手を打って、それでもパフォーマンスが改善しない場合がたまにあります。
さらにソフトウェアの改修を行うと、相当赤字が拡大したりしますので、判断に悩んでしまう場合もあると思います。一方で、お客様はパフォーマンスが上がらないので、怒り始めていたりします。
そんな時に思い出していただきたいのが、ストレージのパフォーマンスアップです。
HDD系のディスクが回るタイプのものもいいのですが、お勧めはRAM型の半導体ストレージ(SSD)です。半導体ストレージにはRAM型タイプとFlashタイプがあります。
FlashタイプはUSBメモリに採用されている書き込み数制限があるタイプで、シーケンシャルの書き込み・読出しが得意なタイプです。RAM型はPCのメモリに採用されいる、容量が小さいですが、耐用年数100年でランダムI/Oが得意なタイプです。
※半導体ストレージの寿命については以下をご覧ください。
http://blogs.itmedia.co.jp/yoshimasa/2010/07/flashssd-3b34.html
※RAM型とFlash型の違いについては以下をご覧ください。
http://blogs.itmedia.co.jp/yoshimasa/2009/11/ssdram-ssdflash.html
では、どれくらい改善されるかというと、弊社のお客様であるコアマイクロシステムズ製品の場合は、RAM型SSDを採用したストレージの場合、フルランダムアクセスで30万IOPS~300万IOPSを実現できるため、通常のHDDと比べて数十倍から数百倍改善されます。
※IOPS=1秒当たりのI/O
最近は半導体ストレージも相当安くなってきましたので、ソフトウェア改修で数人月かけるのでしたら、半導体ストレージのほうが相当安いケース多いと思います。
ちなみに、コアマイクロシステムズでは半導体ストレージの無料の事前検証プログラムを行っています。無料で機材を持ち込み、実施してみてパフォーマンス効果があるかどうか実機でテストする方式です。興味がある方は以下をご覧ください。
http://www.cmsinc.co.jp/products/pri_test.html
なお、半導体ストレージの国内事例については以下をご覧ください。
http://www.cmsinc.co.jp/casestudy/index.html