検索
連載

簡単な操作で可用性を高める“AlwaysOn”次世代SQL Server“Denali”の姿に迫る(2)(1/4 ページ)

Microsoft SQL Serverとして第4世代目の製品となる“Denali”。前回はDenaliに入る新機能の概要をご覧頂いたが、今回は可用性を高める「SQL Server AlwaysOn」に焦点を当てて解説する。

Share
Tweet
LINE
Hatena

 マイクロソフトの次世代SQL Serverである“Denali”(開発コード名)は、SQL Serverの歴史においては第4世代目の最初の製品になる。SQL Server 2005からSQL Server 2008 R2までが第3世代の製品となる。ならば「世代が変わるほどの変化とはどんなものか?」という疑問がわく。その答えの1つとして「高い可用性」が挙げられる。今回は、高い可用性を実現するための技術の総称である「SQL Server AlwaysOn」について紹介する。

大規模システムへの導入をより簡単にするDenali

 SQL Serverが第3世代に達する前は、「SMB(中堅・中小企業)の小規模システム向き」というイメージがあった。だがSQL Server 2005からは本格的に大規模システムでの利用を可能とするような機能を次々に実装してきている。もう小規模システムだけに向くリレーショナルデータベース管理システム(RDBMS)とは言えない。

 実際、SQL Serverは大規模システム向けRDBMSとして着実に可能性を広げてきている。金融システムなど信頼性が絶対に必要な業務への導入実績もある。ただし、SQL Serverに限らず、大規模システムへのRDBMS導入には高いハードルがある。導入に当たるエンジニアが高度なスキルを備えていなければならないとか、高額の投資が必要であるとか、そのほかにも業務に関係する制限をクリアしなければならないなど、大規模システムにおけるRDBMSの導入は簡単ではない。

 大規模システムへRDBMSを導入する際に立ちはだかる大きなハードルをぐっと下げ、可用性を高めたのがDenaliの大きな特徴である。今回説明するSQL Server AlwaysOnはDenaliの新機能の中でも目玉となる機能だ。

柔軟なクラスタ構成

 SQL Server AlwaysOnは、その名の通り「いつでもオン」、つまり「常時稼働」を実現するための複数の機能の総称である。具体的には「可用性グループ(Availability Group)」「フェールオーバークラスターインスタンス」などからなる。加えて「Windows Server Coreでの運用」も可用性向上に貢献しているのでSQL Server AlwaysOnの一要素と見ていいだろう。

 可用性グループとはデータベースの可用性を高めるために複数のサーバで構成するグループだ。一方、フェイルオーバークラスターインスタンスはWindows Serverの機能であるWSFC(Windows Server Failover Clustering)を利用したものだ。Denaliのフェイルオーバークラスターインスタンスは、WSFCのリソースとしてのSQL Serverインスタンスを指す。

 従来、この構成で可用性を高めるには複数のSQL Serverインスタンスで共有ディスクを使う必要があった。Denaliでは、共有ディスクを使うことなく、クラスタを組むことができる。さらに、SMB(Server Message Block:Windows標準のファイル共有プロトコル)でつながったフォルダにデータベースを配置できるようになるなど、既存製品よりも柔軟な構成を採れるようになった。

 これらは仕組みとしてはそう斬新なものではない。現行の2008 R2で可用性を高めるための機能(主にフェールオーバークラスタリング、データベースミラーリング、ログ配布、レプリケーション)を改良したものと理解していいだろう。

 日本マイクロソフト サーバープラットフォームビジネス本部 クラウド&アプリケーション プラットフォーム製品部 エグゼクティブプロダクトマネージャーの北川剛氏は「Denaliではかゆいところに手が届くようになった」と話す。

 その例えとして北川氏は「今までは100%の処理能力を確保するためにために200%分のサーバを用意しなくてはならなかった」と指摘する。2008 R2のフェイルオーバークラスタリングやデータベースミラーリングのスタンバイサーバは基本的に「待機するだけ」だった。求める能力はサーバ1台分だったとしても、待機サーバとしてもう1台用意する必要があった。2台なので200%ということだ。

 だがDenaliでは待機しているサーバを読み取りのみ可能の「アクティブスタンバイ」に設定できる。待機サーバでありながら、参照専用として稼働させることができるのだ。サーバ導入時は、待機サーバの参照能力を考慮して台数を見積もれる。保有するリソースを有効活用できるというわけだ。

Copyright © ITmedia, Inc. All Rights Reserved.

       | 次のページへ
ページトップに戻る