AWS ソリューションアーキテクト - アソシエイト合格に必要な知識をまとめていきたいと思います! 今回は「RDS」になります。
RDS(Relational Database Service )
フルマネージドなデータベースサービス
- OSへログインして操作することはできない
- IPアドレスを固定することはできない(DNS名による接続)
マルチAZ
ハードウェア障害などが発生した場合自動的にフェイルオーバーし、耐久性の向上や可用性の向上を実現できる。
- マスターとスレーブ間は同期レプリケーション が行われている(マスターはスレーブにデータ更新が反映されるのを待つ)
- 2台分の料金がかかるので、費用が高くなる
- フェイルオーバー時、エンドポイントの切り替えは不要
- スレーブ側のDBインスタンスにはアクセス不可
- バックアップの取得はスレーブ側から行われるので読み書き操作は停止しない
フェイルオーバーが発生タイミングは以下の3つ
- インスタンスやハードウェア障害
- パッチ適用などのメンテナンス時間
- 手動リブート時に強制フェールオーバーするよう設定していた場合
リードレプリカ
読み込み専用のデータベース
- マスターとリードレプリカ間は非同期レプリケーションが行われている(マスターはスレーブにデータ更新が反映されるのを待たない)
- 参照が多いアプリケーションの場合に使用することでパフォーマンスが向上する
バックアップ
RDSの標準機能により、自動で1日1回フルバックアップ+トランザクションログを取得できる
- 自動バックアップにより、ポイントインタイムリカバリが利用できる
- 任意のタイミングでバックアップを取得することも可能
- マルチAZに比べ、安価にデータ復旧が可能
ポイントインタイムリカバリ
自動バックアップにより任意の時点までRDSを復元することができる
- マネジメントコンソールの「最新の復元時間」として表示されている時刻まで復元可能
その他のDBサービス
DynamoDB
NoSQLのデータベースサービス
利用用途
- メタデータの保存
- JSON ドキュメントの保存
- セッション情報
Redshift
データウェアハウスサービス
利用用途
- 大量のデータの集計と分析
ElastiCache
インメモリキャッシュサービス
利用用途
- セッション情報
- キャッシュ