2016-01-16 25 views
7

postgresqlデータベースの上でビジネスを実行しているとしましょう。しばらくするとトラフィックが大きくなり、単一のpostgresqlインスタンスでは処理できなくなるため、成長を処理できるように、さらにインスタンスを追加(水平方向に拡大)する必要があります。Postgresを水平方向にスケーリングする

データはリレーショナルなので、おそらくキー/バリューソリューションに切り替えることはオプションではありません。

どのようにしてpostgresqlをやりますか?

PS。 Postgresqlのバージョン:9.5

+0

(例えばpgpoolの)ロードバランサと(複数のスレーブとの)マスタ/スレーブレプリケーションを使用しhttp://www.postgresql.org/docs/current/static/high-availability.html –

+0

シャーリングを使用するPostgres-XLを見てください。ただし、制限事項に注意してください。http://www.postgres-xl.org/ –

+0

@DmitrySavinkov Postgres-XLの制限に関する詳細はどこにありますか? – toasteez

答えて

3
  1. 読み込み量が多い作業負荷の場合は、レプリカを追加するだけです。ワークロード全体を処理するために必要な数のレプリカを追加します。ラウンドロビン方式でレプリカ間のすべてのクエリのバランスをとることができます。

  2. 書き込み量が多い作業負荷の場合は、データベースを多数のサーバーに分割する必要があります。異なるマシンに異なるテーブルを置くことができます。また、多くのマシンで1つのテーブルを分割することもできます。後者の場合は、プライマリキーの範囲で、またはプライマリキーのハッシュによって、または行ごとに垂直に分割することができます。上記の各ケースでは、トランザクション性が失われる可能性があるので、トランザクションによって変更および照会されたすべてのデータが同じサーバーに存在するように注意してください。あなたが取ることができ

関連する問題