データベース クラスタ構成

クラスタとは?

Clusters
連携構成
複数のコンピュータを連携させる事で可用性を高めた構成
ユーザへは1台のコンピュータである様に振る舞う
1台に障害が発生しても処理は他コンピュータに引き継がれシステムは停止しない。
複数のデータベースにおいて常にデータが一致している

レプリケーションとの違い

レプリケーションがハードウェアの多重化であるのに対し、
クラスタリングはインスタンスの多重化
通常、通常レプリケーションとクラスタリングを併用する
データベース 重要用語 レプリケーション参照

クラスタの機能

キャッシュフュージョン

インスタンスの変更内容を高速に同期する為に
各インスタンスはデータをディスクに対して読み書きせず、
メモリ上に保持する

可用性

あるインスタンスに障害が発生した場合に
他インスタンスへフェイルオーバーさせて処理を継続できる

負荷分散

どのインスタンスに接続するか?はロードバランシングされた上で
同じ結果が返される。

スケーラビリティ

インスタンスの追加や削除が可能

RAC

RACとは?

cluster1
Real Application Clusters
Oracleにおいて複数のノード(コンピュータ)上のインスタンス
1つのデータベースを構成する仕組み
あるインスタンスへの変更内容は即他インスタンスへ同期される
=マルチインスタンス/シングルデータベース

RACにおけるシーケンス制御

シーケンスジェネレータ(採番機能)はインスタンス毎にあり、
シーケンスのキャッシュもインスタンス事に保持される。
インスタンスAのキャッシュ 1 ~ 20
インスタンスBのキャッシュ 21 ~ 40
ディクショナリの値 41
1,21,2,22…の様に採番される可能性がある

マルチインスタンス/マルチデータベース
cluster3
RAC × マルチテナントアーキテクチャ構成時

マルチテナントアーキテクチャ

cluster2
シングルインスタンス/マルチデータベース
1つのインスタンスで複数のデータベースを管理する構成
複数インスタンスを稼働させる事も可能

用語

SPOF

Single Point Of Failure
システム上のある部分(コンポーネント)に障害が発生した場合に、
システム全体が障害に陥る様なコンポーネント
多くの場合電気的なハードウェアがこれに該当する
ハードディスク、ケーブル、電源等
システムをクラスタリングし、コンポーネントも多重化する事で、
SPOFを原因とする障害を抑えられる

可用性

Availability
システムの壊れにくさ
・障害の発生のしにくさ
・障害発生時の復旧のしやすさ
高可用性:障害が発生しにくく、発生してもすぐ復旧する。
高可用性:障害が発生しやすく、発生するとなかなか復旧しない。

フェイルオーバー

処理を稼動系サーバーから待機系サーバーへと引き継がせる機能

フェイルバック

フェイルオーバー後、障害から復旧したサーバーへと再び切り替え、
元の稼動系・待機系の構成へと戻す処理

インスタンス(データベース)

データベースの起動~終了の単位
インスタンスは単一のコンピュータ内に複数保持可能