マルチリーダー
複数の「リーダー」がそれぞれ書き込みを受け付け、互いにレプリケーションするモデル。地理的に分散したデータセンターやオフラインファーストのアプリに有用だが、同じデータが二箇所で同時に変更されたときの競合解決が必要になる。
用途は、リージョンごとにデータセンターを置いてローカルで書き込み(低遅延)、他へ非同期に複製する構成や、オフラインでも動くべきアプリ(カレンダー、メモ)がオンライン復帰後に同期する構成。利点は、ユーザーの近くで書き込めることと、リージョンや回線が落ちてもシステムが生き残ることだ。核心的な問題は書き込みの競合である。同じレコードが二つのデータセンターで変更されたら、決定的にマージしなければならない(タイムスタンプによる後勝ち、アプリのロジック、CRDTなど)。単一リーダー(単純だがボトルネックかつSPOF)やリーダーレス(クォーラム方式)とは別物だ。複雑だが、時には必要になる。