技術解説
SQL Server 2005のエンタープライズ機能を徹底検証

コラム:データベース・ミラーリングとフェイルオーバー・クラスタリングの違い

Chris Alliegro
2006/04/07
Copyright (C) 2005, Redmond Communications Inc. and Mediaselect Inc

 SQL Server 2005 Enterprise Editionは高可用性を実現するために、データベースの冗長性とフェイルオーバー戦略を実装するに当たって2つの基本的なメカニズムをサポートする。まず、データベース・ミラーリングと呼ばれる新しい機能(2006年上半期に提供予定)は、データベースのコピーを個別のサーバ(プライマリとミラー)で管理する仕組みだ。この機能を利用すれば、アプリケーションはプライマリのサーバあるいはデータベースに障害が発生したとき、ミラーSQL Serverに直ちにスイッチできる。

インタビュー:SIerから見たSQL Server 2005の注目機能

 SQL Server 2005はまた、従来のバージョンで利用されてきたフェイルオーバーおよび冗長性技術であるMicrosoft Cluster Services(MSCS)のサポートも継続する。MSCSはクラスタ向けのフェイルオーバー・ソリューションだ。クラスタ内の1台のマシンに障害が発生したとき、クライアント・アプリケーションはクラスタ内のほかのマシンにリダイレクトする。この場合、リダイレクトはアプリケーション側からはトランスペアレントな方法で行われる。

同一の目的に異なる実装

 データベース・ミラーリングとクラスタリングは、いずれも冗長性によってデータベースの可用性を高めることが目的だが、実装化の技術はまったく異なり、得意とするシナリオも異なる。

■フェイルオーバー
 MSCSベースのフェイルオーバー戦略は、コストのかかる特殊なクラスタリング・ハードウェアを必要とする。また、MSCSトポロジは共有ストレージがベースとなり、実際のデータベースはクラスタ内のノードが共有するストレージ・システム上に置かれる。クラスタリングをベースとするフェイルオーバー戦略は高いレベルの冗長性を実現し、データベース・ミラーリング戦略より高度な可用性を提供する。SQL Server 2005 Enterprise Editionはクラスタ内で最大8ノードの冗長性をサポートするが、データベース・ミラーリングは2つのデータベースによる冗長性にとどまる。

■データベース・ミラーリング
 一方、データベース・ミラーリングは標準的なサーバ・ハードウェアで実行し、共有ストレージを必要としない。プライマリとミラーは、ともに完全に独立した相互コピーだ。こうした特性から、データベース・ミラーリングはMSCSクラスタリングより、地理的に分散したフェイルオーバー戦略に向いている。プライマリとミラー・サーバの設置されたロケーションが異なれば、サイト全体に影響が及ぶ停電やネットワークの障害などにも対応できる。ただし、データベース・ミラーリングはSQL Serverリレーショナル・データベースでのみ機能するため、Analysis Servicesなど、ほかのサービスの冗長性とフェイルオーバーにはクラスタリングが必要だ。

 これら2つの技術は、クライアント・アプリケーションへの影響や要求においても異なる。例えば、クライアント・アプリケーションに対してトランスペアレントなMSCSクラスタリングと異なり、データベース・ミラーリングはアプリケーションに2台目のサーバを指定するように要求する(Microsoftの新しいデータ・アクセスAPIのADO.NET 2.0はフェイルオーバーのメカニズムを処理できるが、それでも開発者はデータベース接続を確立するとき、予備サーバを指定しなければならない)。さらにデータベース・ミラーリングの場合、プライマリとミラー・データベースが確実に同期していなければ、有効なフェイルオーバー・ツールとして機能しない。対照的に、MSCSの場合、ストレージは共有されているため、同期化の必要はない。同期化はデータベース・サーバとネットワークのリソースを少なからず消費するので、データベースのパフォーマンスに影響を及ぼし、そこにアクセスするアプリケーションも結果的に影響を受ける。

 もっともクライアント・アプリケーション側から見れば、データベース・ミラーリングはトランスペアレントではなく、MSCSベースのソリューションよりパフォーマンスが落ちるとはいえ、シンプルでコストがかからない。また、データベースを集中的に利用するような特殊なアプリケーションでもなければ、パフォーマンスの低下が問題になることも少ない。従って、一般的なシナリオにおいてフェイルオーバー戦略を実装する場合、多くの企業はクラスタリング・ソリューションより、データベース・ミラーリングの方が好ましいと考えるだろう。しかし、クラスタリングが適切な選択肢であるケース(リレーショナル・データ以外や、超高速システムなどの場合)もないわけではない。End of Article

 
Directions on Microsoft日本語版
本記事は、(株)メディアセレクト発行のマイクロソフト技術戦略情報誌「Directions on Microsoft日本語版」から、同社の許可を得て内容を転載したものです。メディアセレクト社は2006年2月1日付けでアイティメディア株式会社と合併しました。
 
 

 INDEX
  [技術解説] SQL Server 2005のエンタープライズ機能
    1.一新された管理ツール
    2.安全なバックアップと優れた制御
      コラム:データベース・ミラーリングとフェイルオーバー・クラスタリングの違い
 
 技術解説


Windows Server Insider フォーラム 新着記事
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

注目のテーマ

Windows Server Insider 記事ランキング

本日 月間