0

アプリケーションの観点から単一の一貫した DB として機能しながら、DB のいくつかのテーブルが 1 つのノードに配置され、他のいくつかのテーブルが別のノードに配置されるクラスター化された MySQL 展開を作成するための最良の戦略は何ですか?

2 つのデータ ノード A と B があり、データベースに 5 つのテーブルがある場合、テーブル 1、2、3 をノード A に配置し、テーブル 4 と 5 をノード B に配置するとします。

この展開はクラスタ化された展開である必要がありますか? それとも、典型的な MySQL 展開でこれを処理できますか? はいの場合、どのように?

テーブル 4 を A と B の両方でレプリケートするのはどうですか?

4

1 に答える 1

2

MySQLは、フェデレーションエンジンを使用して、他のインスタンスに格納されているテーブルへの透過的なアクセスを可能にします(これは長い間利用可能でした)。

MySQLは、パーティショニングと呼ばれる機能を提供します。これは、テーブルに適用されて、さまざまなファイルシステムにデータを分散しますが、これは非常に異なります。

表4をAとBの両方に複製するのはどうですか?

特定のテーブルのみをコピーするようにmysqlレプリケーションを設定できます(replicate-wild-do-tableを参照)。ただし、フェデレーションとレプリケーションを混在させると、非常にすぐに混乱します。間違えると、データが破棄されます。どちらか一方を使用してください。両方ではありません。

于 2012-03-28T08:34:41.887 に答える