DB専用サーバ仮想化の注意点
SQL Serverの仮想化が最良の選択とはならない3つのケース
仮想化のメリットは既に周知の事実だが、集計・分析用途のシステムを仮想化する際には十分注意が必要だ。Microsoft SQL Serverを例に、仮想化が必ずしも正解とはならない3つのケースを紹介する。
仮想化技術がより洗練されるとともに、Microsoft SQL Serverインスタンスを仮想サーバへ移す動きに、これまでにないほどのインセンティブが生まれている。物理サーバの数が減れば電力消費やライセンス料が削減でき、マシンが仮想化されるためシステム管理も容易になる。良いことずくめだが、一方でMicrosoft SQL Serverの仮想化が必ずしも利益をもたらさないケースがあることも事実だ。
VMのI/Oが貧弱な場合
CPUを別にすれば、データベースのパフォーマンスに影響を及ぼす唯一最大のリソースは、ディスクI/Oだ。1つのMicrosoft SQL Serverインスタンス──あるいは複数のインスタンスでも──に特化した物理サーバの場合、I/Oのボトルネックを改善することは比較的容易である。IOPS(1秒当たりの入出力オペレーション)の観点からコスト効率が良ければ、ディスクを高速なタイプにしたり、HDDをSSDに切り替えたり(関連記事:HDDのI/Oスループットを改善するSSD配置方法)、あるいはRAMを追加してバッファを増やすなりすればよい。ただし、トレードオフはコストだ。そうしたアップグレードは決して安くない。
Microsoft SQL Serverを仮想化する場合、ハードウェアは移植する元のハードウェアと同等かそれ以上に高性能であるか、データベースパフォーマンスが十分なものでなければならない。それはI/Oについても同様で、最も望ましくないことはヘビーユースのデータベースに必要なI/O帯域幅を他のものとシェアすることだろう。この問題を改善する方法は幾つかある。例えば、データベースのストレージを他の仮想マシン(VM)から分離した物理ディスクとI/Oチャネルに置くなどだ。しかし、それらはVMに移行する前に行っておかなければならない。
一般的な例を挙げてみよう。データベース専用サーバの多くは、ストレージアレイにRAID 1+0(RAID 10としても知られる)を利用する。それらは高価だが、最良の結果を生む。ところが、VMのセットアップはパフォーマンスと冗長性のトレードオフを考え、RAID 5を利用していることが多い。前者のハードウェアに最適化したワークロードは、後者では専用の物理ディスクを割り振り、オリジナルRAID 1+0セットアップにリプレースしないかぎり、うまく処理できないだろう。
この場合、ディスクはローカルにアタッチされたストレージでなければならないというわけではない。物理ボックスのローカルディスクと同等以上の速度を持つSANでも十分に機能する。問題はIOPSであり、目的達成に最適な技術なのではない。
VMホストを自前で構築すれば、ある程度コントロールすることが可能だ。しかし、自前ではないVMホスティングを利用するときは、多用途多目的型のセットアップに甘んじなければならない。
VM記憶容量が十分でない場合
データベースは大量の物理メモリがあれば大きな効果が得られる。それはオペレーションを実行する場所であり、I/Oのキャッシュする場所でもある。Microsoft SQL Serverはそうした理由から、スタンドアロンの専用マシンに置かれているときに最高の性能を発揮する。必要に応じてメモリを解放でき、同一マシン上の他のアプリケーションと直接対立することがないからだ。一般的な経験則として、可能であればデータベース全体――あるいは、少なくともそのうちの最もよく利用される部分――をメモリにキャッシュできるほどのRAMがあればよい。
データベースサーバのVMバージョンにも物理サーバと同量、あるいはそれ以上のメモリを割り当てる必要がある。多くのVMシステムは、複数のVMでメモリの同一ページをシェアするためのメモリ共有技術を備えている。しかし、そうしたシェアリングは各マシンで実行するOSのようなものには有効だ。VM間で共有可能なものの多くは、データベースのコンテンツそのものではない。
Microsoft SQL Serverインスタンス用のメモリ消費統計ツールは、ここでも役に立つ。プロダクションデータベースがどれほどのメモリを必要としているか確認でき、VMにどの程度メモリを割り当てればよいかも分かる。
仮想化へ向かう喫緊の理由がない場合
仮想化が最適だというケースは、もちろんある。それによって生じるメリットが予想以上にある場合だ。より良い結果を得るために仮想化する。
例えば、社内に古いスタンドアロンのレガシーMicrosoft SQL Serverセットアップがあり、それが今日のハードウェア標準から見てそれほど見劣りしないものであれば、仮想化の優れた候補となるだろう。マシンが古くて遅いほど仮想化のメリットは大きい。多くのマシンを統合すれば、電力消費、空調費、フロアスペースを節約できるはずだ。
一方で、Microsoft SQL Serverの大規模なクラスタを運用していても、仮想化によってコスト削減やパフォーマンスの改善が見込めないケースも考えられる。クラスタをVMに統合すれば、電気代や空調費である程度の節約ができても、全体的なパフォーマンスを犠牲にすることになるかもしれない。そのような場合は、現状のままにしておくのがベストだ。
Microsoft SQL Serverの仮想化は、それに最適なビジネスケースがあり、また全体的なIOPSが低下したり、プロセスのメモリアロケーションを失ったりしないときのみ実装すべきだ。仮想化のアドバンテージには目を見張るものがある。だが、それは1つのツールであり、必ず当たる魔法の弾丸ではないということを忘れてはならない。
Copyright © ITmedia, Inc. All Rights Reserved.
この記事の著者
新着ホワイトペーパー PR
-
製品資料
[NTTインテグレーション株式会社] 取引先のセキュリティをどう管理する? 「SCS評価制度」対応の勘所を解説 -
製品資料
[NTTインテグレーション株式会社] SCS評価制度「★4」取得のカギ 最大の壁を突破する方法とは? -
製品資料
[NTTインテグレーション株式会社] 2026年度末から運用開始 「SCS評価制度」に備えて製造業がやるべきことは? -
事例
[ネットワンパートナーズ株式会社, アイビーシー株式会社] ハイブリッド環境の一元管理と快適な無線LAN環境、三井ホームはどう実現した? -
市場調査・トレンド
[TD SYNNEX株式会社] 調査で学ぶセキュリティ運用の実態 人を増やさず品質を維持する方法とは?
こんなメディアも見られています
TechTargetジャパンに関連する情報をお探しであれば、こちらのメディアもお役に立てるかもしれません。
ベンダーコンテンツ PR
From Informa TechTarget
SpecialPR
アクセスランキング
-
1
なぜ「全社配布Copilot」は使われないのか? 失敗に学ぶAI定着
-
2
損保ジャパンはなぜ「COBOL」を捨てなかったのか? 脱メインフレームの真相
-
3
「ノートPC派」は損をしている? Dellと考える“自作PC”のメリット
-
4
「業務改善とツール活用」に関するアンケート
-
5
「GitHub Copilot」3000人に配布も基本機能しか使われない 保険大手が得た教訓
-
6
「データストレージの活用方法」に関するアンケート
-
7
年収700万超エンジニアに共通するスキルと「もっと勉強すべきだった分野」
-
8
業務用プリンターの老舗が挑むAI活用に向けた開発基盤変革を伴走支援
-
9
IT製品の導入に関するアンケート「PC&デバイス」編
-
10
“Intel CPU”搭載PCを危険にさらす「UEFIファームウェア」の脆弱性とは
ホワイトペーパーランキング PR
-
1
DX/AI投資の壁を突破、現代の最高財務責任者が直面する課題と克服のヒント
-
2
不審メールの経路や見せ方に変化? 2026年夏の3事例から見えた動向と対処方法
-
3
「オンプレミス回帰」せざるを得ない“合理的な理由”
-
4
バックアップは“取っているから大丈夫”なのか? ランサムウェア時代の備え方
-
5
システムの保守がモダン化を阻む? 「変えない判断」から脱却する方法とは
-
6
生成AIを開発に導入しても効果が見えない? 実証実験で分かった成果と課題
-
7
経産省DX指針から読み解く、受発注業務デジタル化ロードマップ
-
8
5分で分かる Microsoft 365のデータ損失に備えるためのバックアップの仕組み
-
9
ネットワーク遅延の原因、「パケットロス」の基礎知識と効果的な解決策
-
10
Microsoft 365を安全に運用 うっかりミスやサイバー攻撃に備えるデータ保護術
TechTargetジャパン SNS
インフォメーション
注目情報をチェック
TechTargetジャパンをフォロー