それを理解するには、MySQL がクラスタリングを処理する方法を理解する必要があります。それには主に2つの方法があります。マスター マスター レプリケーション、または NDB (ネットワーク データベース) クラスタリングのいずれかを実行できます。
両方のマスターが発行されたすべての書き込みを再生する必要があるため、マスター間のレプリケーションは書き込み負荷には役立ちません (そのため、何も得られません)。
NDB クラスタリングは、主にプライマリ キー ルックアップを実行している場合にのみ、非常にうまく機能します (PK ルックアップを使用する場合のみ、NDB は通常のマスター マスター セットアップよりも効率的に動作するため)。すべてのデータは、多数のサーバー間で自動的に分割されます。私が言ったように、クエリの大部分が PK ルックアップにすぎない場合にのみ、これを検討します。
つまり、あと 2 つのオプションが残ります。シャーディングと MySQL からの移行。
シャーディングは、このような状況を処理するための適切なオプションです。ただし、シャーディングを最大限に活用するには、アプリケーションがシャーディングを完全に認識している必要があります。そのため、データベースにアクセスするコードをすべて書き直して、クエリごとに通信する適切なサーバーを選択する必要があります。また、システムの現在のセットアップ方法によっては、効果的にシャーディングできない場合があります...
しかし、あなたのニーズに最も適していると思われる別のオプションは、MySQL から切り替えることです。とにかく DB アクセス コードを書き直す必要があるため、NoSQL データベースに切り替えるのはそれほど難しくありません (これも、現在の設定によって異なります)。世の中にはたくさんの NoSQL サーバーがありますが、私はMongoDBが好きです。書き込み負荷に心配なく耐えられるはずです。それを適切に使用するには(データ量で)64ビットサーバーが本当に必要であることに注意してください。