Amazon Relational Database Service
# Amazon Relational Database Service(RDS)
https://d1.awsstatic.com/webinars/jp/pdf/services/20180425_AWS-BlackBelt_RDS.pdf
## 概要
- メリット
AWS のフルマネージドなリレーショナルデータベース
スケーリング、高可用性、バックアップまでも管理してくれるようになりDBAはより付加価値の高い仕事に集中できる.
- 各データベースエンジンの特性を理解して、パフォーマンスチューニング
- ログ・メトリクスからボトルネックを特定・解消
- 新しい施策に向けた検証やベンチマーク
- データベースを中心とした全体的なシステムアーキテクト
- 制限事項
- バージョンが制限される
- キャパシティに上限がある
- OSにログインできない
- ALTER SYSTEM 文などが使えない
- IPアドレスが可変
- 一部の機能が使えない
- 個別パッチは適用できない
## 特徴
- シンプルな構築
- 選択するだけで高度な機能を利用できる
- 高い可用性
- マルチAZ デプロイメント
- 同期
- レプリケーション
- バックアップ
- 自動フェイルオーバー
- パフォーマンスの向上
- リードレプリカ
- 読み取り処理の自動スケールアウト
- マスタとレプリカで違うインスタンスタイプを選択も可能
- マスタが死んだ際に自動昇格
- 対応データベース
- MySQL
- MariaDB
- PostgreSQL
- Aurora
- Oracle(DMS利用時)
- SQL Server(DMS利用時)
- スケールアップ
- コンソールやAPIから変更可能
- ストレージタイプの変更
- Huge Pages のサポート
- 運用負荷の軽減
- 自動的なバックアップ
- S3に保存
- スナップショット
- リストア
- FQDNのリネーム
- よしなにやってくれるものとそうでないものがあるので注意
- DNS名前変更は即時変更ではない
- CloudWatch の設定は引き継がれない
- 設定変更
- パラメータグループ、オプショングループで項目は管理されている
- ソフトウエアメンテナンス
- メンテナンスウインドウで指定した曜日・時間帯に自動実施
- 監視
- 拡張モニタリング
- OSメトリクス
- Elasticsearch 連携
- イベント通知
- ログアクセス
- ストップスタートのサポート
- 7日後に再起動される
- セキュリティ
- その他
- RDS for MySQL をバックアップから起動可能に。
- リードレプリカがMultiAZをサポート
- CloudWatch による監視
- RDS for PostgreSQL からAurora PostgreSQL のリードレプリカを作成可能
- RDS for SQL Server がスナップショットからの復元時にストレージタイプを選択可能
- RDSおよびDMSがSQL Service からのレプリケーションをサポート
## 各DBエンジンの特徴
- MySQL
- ストレージエンジン
- Oracle
- ライセンス込みとBYOL のパターンがある
- Oracle の機能(Statspack, GoldenGate などを利用可能)
- SQL Server
- SQL Server Migration Assistant
- Database Engine Tuning Advisor
- SQL Server Agent を利用可能
- PostgreSQL
- 様々なPostgreSQL の拡張モジュールを利用可能
- PostGIS (地理情報システム)をRDSのオリジナルの拡張モジュールとして提供
- Amazon Aurora
- Amazon が設計したデータベース
- MySQL5.6&5.7と互換
- 3AZ、合計6本のディスクに書き込み
- シームレスなスケール
- キャッシュとログをAuroraプロセスから分離したことでプロセスを再起動してもキャッシュが残る
- PostgreSQL互換もリリース済み
- Amazon RDS Proxy を利用してServerless アプリケーションからも利用できる
- Aurora serverless
- 使用頻度の低いアプリケーション
- 必要なインスタンスサイズのわかっていない新規アプリケーション
- 可変ワークロード
- 予測不可能なワークロード
- 開発およびテスト用データベース
- マルチテナントアプリケーション
- MariaDB