0

私は、複製データベースのように本番データベースと同期しているPostgresデータベースを持っていたいと思いますが、そのデータベースにも書きたいと思います。 AWSは、MySQLおよびMariaDBでは書き込み可能にするための読み取り複製を提供しますが、Postgresでは提供しません。これを達成する他の方法はありますか?書き込み可能なRDS postgres dbと同期するAWS RDS postgres db

答えて

1

さて、定義上、読み取り複製は書き込み可能ではないので、私はあなたがそのアプローチで多くの運を持っているとは思わないと思います。レプリカを読ん

アマゾンthemselves stateは、読み取り専用のトラフィックのためのものである:

あなたが与えられたソースDBインスタンスの一つ以上のレプリカを作成し、 大量のアプリケーションを提供することができます あなたのデータの複数のコピーからのトラフィックを読みますこれにより、総計読み取りスループットを増加させる。今

、あなたが言うように、MySQLの読みレプリカががマスターにを推進(したがって、書き込み可能になる)ことが、以下「必要」に特別な注意を払うことができますため:

読むレプリカスタンドアロンのDB インスタンスにする必要がある場合にも昇格させることができます。

ただし、RDS自体は、MySQLのマルチマスター展開をサポートしていません。

PostgreSQLについては、状況はさらに悪化しています。 Postgres用のAWS RDSは、読み取り専用レプリカの自動プロモートをサポートしていません(この時点では、Multi-AZが唯一のオプションです)。

RDSの外では、PostgreSQLのマルチマスタ展開(探しているものと同じようなものです)では、さらに精巧な設定が必要です。詳細はclustering section of their wikiをご覧ください。

一般的な注意点として、リレーショナル/ SQLデータベースを水平にスケーリングすることは、多分楽しいことではないでしょうし、途中で問題にぶつかります。

これは、新しい「NoSQL」データベースと同じように、水平方向のスケーリング用に設計されていないからです(MongoDBまたはCassandraなどを参照してください)。あなたはそれを垂直にスケーリングするほうがはるかに優れています。私はそのことを知っている

唯一のリレーショナル・データベースは、スケールアウトするために構築された(された)だCockroachDBですが、非常に有望な解決策とはいえ、それはまだベータ版だ - それのない1.0リリースはまだありません。

+0

ありがとうございます!私も彼らの文書を見て、そのように考えました。 Postgresの外部データラッパーを使って特定のデータベースに書き込んだ後、rdでfdwを使って問題を解決しました。 – codeKashmir

関連する問題