本稿では、グローバルデータベース(Global Database、略称GD)の技術アーキテクチャについてご紹介します。
技術アーキテクチャ図
マスタークラスタとスレーブクラスタは異なるリージョンに配置することが可能です。
データの読み取りには近接読み取り原則を採用しており、優先的にローカルリージョンからデータを読み取ります。
マスタークラスタへのデータ書き込み時には、データはローカルストレージに直接書き込まれ、スレーブクラスタからの書き込みリクエストはデータベースプロキシを介してマスタークラスタに転送されます。
機能の難点解析および最適化
グローバルデータベースアーキテクチャでは、各地域のマスタークラスタとスレーブクラスタ間でRedo Logメカニズムを採用し、データの同期レプリケーションを実現することで、強整合性と高可用性を確保しています。スレーブクラスタのデータ遅延を厳密に2秒以内に制御するためには、この機能に2つのコア能力が必須となります:
超高ログ転送速度:高性能のクロスリージョンデータ転送チャネルを通じて、大量のRedo Logを異地のクラスタに迅速に同期できることを確保します。
高遅延ネットワーク下での帯域幅最適化:長距離・高遅延のクロスリージョンネットワーク環境において、有効スループットを向上させ、ネットワークの輻輳が同期効率に影響を与えることを回避できます。
技術ソリューション
並列順不同ログ転送。マスタークラスタはログを3つのワーカースレッドに分割し、並列かつ順不同で送信します。複数のネットワーク接続によりログ転送スループットを向上させ、ネットワーク転送の帯域幅ボトルネックを最適化します。スレーブクラスタはログを順番に受信して再生し、データを生成します。
最適化効果
遅延は1分から2秒以内に低下します。