Amazon RDS for PostgreSQLのリードレプリカの特徴

cloudpackエバンジェリストの吉田真吾@yoshidashingo)です。

RDS for PostgreSQLに大幅なアップデートがありました。
Amazon RDS for PostgreSQL Update – Read Replicas, 9.3.5 Support, Migration, Three New Extensions | AWS News Blog
[新機能] Amazon RDS for PostgreSQLのリードレプリカを作成する | DevelopersIO

アップデート内容

  • リードレプリカ対応
  • バージョン9.3.5対応
  • 3つの機能追加
    • トリガーベースレプリケーション
    • Londisteを使ったデータインポート
    • Bucardoを使ったデータエクスポート
  • 機能拡張
    • pg_stat_statements
    • postgres_fdw
    • PL/V8

RDS for MySQLとRDS for PostgreSQLの違い

1. PostgreSQLはフィジカルレプリケーション、MySQLはロジカルスタンバイ
  • PostgreSQLのフィジカルレプリケーヨンはプライマリーのDBと完全に同一な読み取り専用DBを形成します。そのため読み出しはできますが書き込みはできません。また、マスターへの昇格機能もありません。
  • MySQLはプライマリーのコピーに対して、変更分はログを適用していくロジカルスタンバイ構成です。読み出しも書き込みもできます。また、多段リードレプリカを形成したり、リードレプリカからマスターへの昇格機能もあります。
2. PostgreSQLのトランザクションログ量は変更可能、MySQLは変更不可
  • PostgreSQLのwal_keep_segmentsパラメータでリードレプリカに適用するWrite Ahead Log (WAL)ファイルのログ数を指定します。
  • MySQLではバイナリログの削除はしません。
3. PostgreSQLはレプリカからの自動バックアップは不可、MySQLは可能
  • PostgreSQLはリードレプリカからの手動スナップショットによるバックアップは可能だが、自動バックアップはできません。
  • MySQLではリードレプリカからの自動バックアップが指定可能です。

参照:Working with read replicas - Amazon Relational Database Service