Rainbow Planet (GT×IT×SP×SA)

IT技術を分かりやすく簡潔にまとめることによる学習の効率化、また日常の気付きを記録に残すことを目指します。

01_IT技術 (Technology)

OracleデータベースとSQL Serverを冗長性の機能面での比較検討

投稿日:2019年5月12日 更新日:

(0)目次

(1) 冗長性の機能(Oracle)
 (1-1) Oracle RAC
 (1-2) Oracle Fail Safe
(2) 冗長性の機能(SQL Server)
 (2-1) Always on FCI(Failover Cluster Instance)
 (2-2) Always on 可用性グループ

(1) 冗長性の機能(Oracle)

(1-1) Oracle RAC

(※Active-Active構成)
複数のインスタンスで1つのDBを共有する。一つのノードで障害が起きても、別サーバーに処理を引き継ぎ(フェイルオーバー)できる。Active-Active構成のため、常に全インスタンスが起動しており、待機系のサーバーは不要です。

目次にもどる

(1-2) Oracle Fail Safe

(※Active-Standby構成)
Windows Serverにおける冗長化機能。WSのMicrosoft Cluster Serviceと組み合わせて使い、障害が発生したら、別サーバーでDBを再起動する。

平常時は2台のディスクに2台のサーバーが接続されており、各ディスクは両方のノードにアクセス可能な状態になっています(Active-Standby構成)。ただし、MSCSによりある時点でディスクを所有・アクセスできるのは1つのノードのため、2つのノードが同時にディスクアクセスは不可。

(1)検知・起動
あるノードで障害が発生すると、リソース再起動ポリシーに従い再起動が行われます(例:100秒に1回)。再起動が出来ない場合はフェイルオーバーポリシーが適用され、自動的にもう一方のノードにフェイルオーバーします。接続には仮想アドレスを利用しているため、接続先情報の変更なく切り替えが可能です。ただし、RACと比較すると切替えには時間が掛かってしまうのと、待機系のサーバーが別途必要になる点があります。

目次にもどる

(2) 冗長性の機能(SQL Server)

(2-1) Always on FCI(Failover Cluster Instance)

(※Active-Standby構成)
複数のノードから一つのディスクにアクセスしており、ノード(サーバー)で障害が発生したら、他のノードに切り替えして処理を継続します。前のバージョンの機能では「フェイルオーバー」の機能に相当します。

(1)検知・起動
WSFCがサーバー間のネットワークやディスクI/Oを監視して、障害検知を行います。障害が検知されると、サービスの再起動やインスタンスの切替え(フェイルオーバー)がなされます。

(備考)
WSFC(Windows Server Failover Clustering)上で動作します。

目次にもどる

(2-2) Always on 可用性グループ

SQL Server2012からの機能で複数のSQL Serverグループ(可用性グループ)を仮想的に1台に見せることが出来ます。どれか1つのグループが正常に動作していれば、断絶なく業務継続が可能です。データレプリケーション機能を持ち、共有ディスクを必要としないクラスター構成が可能です。前のバージョンの機能では「ミラーリング」に相当し、以下に示すようなパラメーターを設定します。

・データ同期モード
「非同期コミットモード」は災対環境等に適しており、レプリカが遠隔地に分散する際などに有効です。一方で「同期モード」は可用性が高まる反面、処理遅延が発生する欠点があります。同期コミットのレプリカ数は、プライマリを含めて上限3つまでです。

・フェイルオーバーモード
フェイルオーバーを自動・手動・強制のいずれかで行うかの設定です。自動・手動はいずれもメンテナンスなど管理目的で実行されるもので、セカンダリレプリカが同期されている場合のみ行う事ができます。一方で強制は災害復旧等の目的で使用され、セカンダリレプリカが非同期でもフェイルオーバーが実行できます(データロスト有り)

・アクティブ/セカンダリ
プライマリサーバーかセカンダリサーバーかを設定します。

・セカンダリのバックアップ
セカンダリのレプリカを読み取り専用にするか、バックアップの取得を可能とするか?

目次にもどる

以上です。

Adsense審査用広告コード


Adsense審査用広告コード


-01_IT技術 (Technology)

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

APサーバ(Java)⇒DBサーバ(OracleDB 11g)へJDBC接続する方法まとめ

(0)目次 (1) 前提条件 (2) JDBCドライバーのインストール  (2-1) JDBCドライバーをダウンロード  (2-2) APサーバにアップロード・解凍 (3) プログラムの実装  (3- …

Linux – シェルスクリプト入門(Hello World/引数・変数/条件分岐/繰り返し処理)

シェルスクリプトの作成方法について ■目次 (1)シェルスクリプトでHello World (2)シェルスクリプトで変数/引数を使う (3)シェルスクリプトで条件分岐を記述 (4)シェルスクリプトで繰 …

システム開発におけるデータモデリングの方法とER図描画ツール紹介

(0)目次&概説 (1) 項目を洗い出す  (1-1) 現行システムが存在する場合  (1-2) 新規システムを開発する場合 (2) エンティティを定義する  (2-1) エンティティの作成  (2- …

Javaの動的Webプロジェクト作成での事前設定と雛形Webプロジェクト作成

「動的Webプロジェクト」とはHTMLのような静的ページのみならず、ServletやJSPを用いてWebアプリケーション開発をする際に作成します。本記事ではEclipseにて「動的Webプロジェクト」 …

Linuxの”No space left on device”エラーの対処方法

(0)目次&概説 >(1) 障害・不具合の概要 >(2) 障害・不具合の原因 >(3) 障害・不具合の対処 (1) 障害・不具合の概要 Linuxでファイルを作成した時などに”No spa …

Top