Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SAP Sybase SQL Anywhere 16.0 » SQL Anywhere サーバ データベース管理 » 高可用性と読み込み専用のスケールアウトシステム » SQL Anywhere の読み込み専用スケールアウト

 

スケールアウトの動作

ルートノードは、読み込み要求と書き込み要求の両方を受け入れる唯一のデータベースサーバです。追加のコピーノードを起動すると、ルートデータベースサーバは、子として定義されたコピーノードにトランザクションログページを送信します (コピーノードが接続済みでトランザクションログページを受信できる場合)。通常、ページは応答を待たずに送信されますが、処理しきれない量の非同期要求がコピーノードで受信されないようにするため、データベースサーバから確認が要求されることもあります。

コピーノードは、ページを受信するとそれをディスクに書き込み、子ノード (存在する場合) に送信します。

子ノードが使用できなくなったことを親ノードが検出すると、子へのトランザクションログページの送信が停止します。子が再起動されると、受信されていないトランザクションログページが要求され、親から子へのトランザクションログページの送信が再開します。子はコピーノードのステータス変更を親に通知し、ステータス情報はツリーをたどって最終的にルートデータベースサーバに到達します。

ルートデータベースサーバが使用できなくなっても、スケールアウトシステム内のすべての子は引き続き動作しますが、プライマリデータベースサーバからは更新を受信しなくなります。コピーノード接続では、古くなったデータが取得される可能性があります。ルートデータベースサーバが再び使用可能になると、子は接続を再確立し、トランザクションログページの受信を再開します。

コピーノードで、互換性がない、トランザクションログが一致しないなどの問題が発生すると、データベースは停止します。問題が発生したデータベースを実行していたデータベースサーバも、他に実行中のデータベースがないかぎりシャットダウンします。

スケールアウトとデータベースミラーリングを一緒に使用すると、データベースの可用性を確保できます。

 参照