CYDAS Developer's Blog

サイダス技術者ブログ

【AWS SAA合格への道】RDS

AWS ソリューションアーキテクト - アソシエイト合格に必要な知識をまとめていきたいと思います!
今回は「RDS」になります。

RDS(Relational Database Service )

フルマネージドなデータベースサービス

  • OSへログインして操作することはできない
  • IPアドレスを固定することはできない(DNS名による接続)

マルチAZ

ハードウェア障害などが発生した場合自動的にフェイルオーバーし、耐久性の向上や可用性の向上を実現できる。

f:id:aym413:20190313231558p:plain
マルチAZ配置のイメージ

  • マスターとスレーブ間は同期レプリケーション が行われている(マスターはスレーブにデータ更新が反映されるのを待つ)
  • 2台分の料金がかかるので、費用が高くなる
  • フェイルオーバー時、エンドポイントの切り替えは不要
  • スレーブ側のDBインスタンスにはアクセス不可
  • バックアップの取得はスレーブ側から行われるので読み書き操作は停止しない
フェイルオーバーが発生タイミングは以下の3つ
  • インスタンスやハードウェア障害
  • パッチ適用などのメンテナンス時間
  • 手動リブート時に強制フェールオーバーするよう設定していた場合

リードレプリカ

読み込み専用のデータベース

f:id:aym413:20190313233112p:plain
リードレプリカの作成イメージ

  • マスターとリードレプリカ間は非同期レプリケーションが行われている(マスターはスレーブにデータ更新が反映されるのを待たない)
  • 参照が多いアプリケーションの場合に使用することでパフォーマンスが向上する

バックアップ

RDSの標準機能により、自動で1日1回フルバックアップ+トランザクションログを取得できる

  • 自動バックアップにより、ポイントインタイムリカバリが利用できる
  • 任意のタイミングでバックアップを取得することも可能
  • マルチAZに比べ、安価にデータ復旧が可能

ポイントインタイムリカバリ

自動バックアップにより任意の時点までRDSを復元することができる

  • マネジメントコンソールの「最新の復元時間」として表示されている時刻まで復元可能

その他のDBサービス

DynamoDB

NoSQLのデータベースサービス

利用用途

  • メタデータの保存
  • JSON ドキュメントの保存
  • セッション情報

Redshift

データウェアハウスサービス

利用用途

  • 大量のデータの集計と分析

ElastiCache

インメモリキャッシュサービス

利用用途

  • セッション情報
  • キャッシュ