サービス

AWS|AWSのRDSについてまとめました【解説】

RDSの概要

RDSはAmazon Relational Database Serviceの略。オンプレミスで使われているデータベースエンジンをそのまま簡単に使うことができる。使用できるデータベースエンジンは以下。

  • Amazon Aurora
  • MySQL
  • PostgreSQL
  • MariaDB
  • Oracle
  • Microsoft SQL Server

RDSとEC2の違い

  • オンプレミスでデータベースサーバーを構築する場合、電源、空調、ネットワーク回線、ラックスペースの確保、ラッキング、物理のサーバー管理、OSのインストール、そして、データベースの管理をすべて行う必要がある。
  • EC2でデータベースサーバーを構築する場合、物理要素やハードウェアとOSのインストールまでは、AWSに任せることができるが、OSのモジュールに脆弱性が見つかった場合はパッチの適用が必要。また、データベースのインストール、マイナーバージョンのバージョンアップ、バックアップ、複数のアベイラビリティゾーンをまたいだ高可用性の確保、スペック変更時のデータベースソフトウェアの調整・設定などは行う必要がある。
  • 一方、RDSでデータベースエンジンを使用すると、上記管理タスクは不要となる。主に「メンテナンス」「バックアップ」「高可用性」の管理タスクから開放される。RDSを使うことでインフラ管理から開放され、本来やるべき開発に注力できる。

メンテナンス

  • RDSを使用すると、OSがコントロール対象から外れ、OSを選択する必要も設定する必要もなくなる。
  • OS、データベースエンジンのメンテナンスをAWSに任せることができる。

バックアップ

  • RDSでは、デフォルトで7日間の自動バックアップが適用されている。
  • バックアップの期間は0〜35日間まで設定でき、指定した時間にバックアップデータが作成される。
  • 35日を越えてバックアップデータを保持しておく必要がある場合は、手動のスナップショットを作成できる。
  • 自動バックアップも手動スナップショットもRDSのスナップショットインターフェースからアクセスできるが、実体はS3の機能を利用して保存されているためRDSのバックアップデータの耐久性はイレブンナイン(99.999999999%)と言える。

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

自動バックアップを設定している期間内であれば、秒数までを指定して特定のインスタンスを復元できる。過去直近では5分前に戻せる。

高可用性

  • マルチAZ配置を使用することでデータベースの高可用性を実現できる。
  • レプリケーション、フェイルオーバーはRDSの機能によって自動的に行われる。

Amazon Auroraの概要

  • RDSではAmazon Aurora、MariaDB、MySQL、Oracle、PostgreSQL、Microsoft SQL Serverの6種類のデータベースから選択できる。
  • オンプレミス環境ですでに利用しているデータベースが上記に含まれてるのであれば、アプリケーションの改修をしないでAWSにシステムを移行することができる。
  • Amazon Auroraは、AWSがクラウドに最適化して再設計したリレーショナルデータベースエンジン。
  • Amazon Auroraは、MySQL、PostgreSQLのデータモデルをサポートしている。MySQLまたはPostgreSQLで動いているアプリケーションはAuroraでそのまま動かすことができる。

Amazon Auroraを利用する主なメリット

  • バックアップが非常に強固
  • スタンバイにアクセスできる(リードレプリカがマスター昇格する)
  • リードレプリカは15個作成できる
  • RDS MySQLに比べて5倍の性能
  • ディスク影響を見込みで確保しなくても自動で増加する

DMS

  • オンプレミスからAWS、またはAWSからAWSへデータベースの移行をする場合、従来のやり方ではリスクも時間も多くかかる。AWSでこの課題を解決するために用意されているサービスがDMS(AWS Database Migration Service)。
  • DMSによりオンプレミスからAWSへの継続的なデータ移行を行い、システムのダウンタイムを最小限にできる。

AWS関連の記事を以下にまとめました。ぜひご覧ください!