0
0

Amazon RDS とは?

概要

Amazon RDS (Relational Database Service) は、AWS が提供するフルマネージドなリレーショナルデータベースサービスです。RDS を使用することで、データベースのセットアップ、運用、スケーリングを簡単に行うことができます。これにより、ユーザーはインフラストラクチャの管理から解放され、アプリケーションの開発に集中することができます。

主な機能

  • マネージドなデータベース
    • データベースのプロビジョニング、パッチ適用、バックアップ、リカバリ、スケーリングなどの管理タスクを自動化します。
  • 高可用性と耐障害性
    • マルチAZ (Availability Zone) 配置により、高可用性と自動フェイルオーバーを提供します。
  • スケーラビリティ
    • 読み取り専用レプリカを使用して、読み取りスループットを向上させることができます。また、ストレージとコンピューティングリソースを独立してスケールできます。
  • セキュリティ
    • データの暗号化、ネットワークの隔離、IAM を使用したアクセス管理など、強力なセキュリティ機能を提供します。
  • 自動バックアップ
    • 自動バックアップ機能により、データの保護とリカバリが容易になります。

サポートされているデータベースエンジン

Amazon RDS は、以下の主要なリレーショナルデータベースエンジンをサポートしています。

  • Amazon Aurora
    • 高性能で高可用性のリレーショナルデータベース。MySQL と PostgreSQL 互換。
  • MySQL
    • オープンソースのリレーショナルデータベース。
  • PostgreSQL
    • 高機能なオープンソースのリレーショナルデータベース。
  • MariaDB
    • MySQL 互換のオープンソースデータベース。
  • Oracle
    • 商用のリレーショナルデータベース。
  • Microsoft SQL Server
    • 商用のリレーショナルデータベース。

利用例

  • ウェブアプリケーション
    • 高可用性とスケーラビリティが求められるウェブアプリケーションのバックエンドデータベースとして利用。
  • データウェアハウス
    • 大量のデータを効率的に処理するためのデータウェアハウスとして利用。
  • モバイルアプリケーション
    • モバイルアプリケーションのデータストレージとして利用。

実際の例

以下は、Amazon RDS で MySQL データベースインスタンスを作成する CloudFormation テンプレートの例です。
EC2セキュリティグループを使用してRDSDBSecurityGroupを定義

CloudFormationファイル
AWSTemplateFormatVersion: '2010-09-09'
Resources:
    DBInstance:
      Type: AWS::RDS::DBInstance
      Properties:
        DBName:
          Ref: DBName
        Engine: MySQL
        MasterUsername:
          Ref: DBUsername
        DBInstanceClass:
          Ref: DBClass
        DBSecurityGroups:
        - Ref: DBSecurityGroup
        AllocatedStorage:
          Ref: DBAllocatedStorage
        MasterUserPassword:
          Ref: DBPassword
    DBSecurityGroup:
      Type: AWS::RDS::DBSecurityGroup
      Properties:
        DBSecurityGroupIngress:
          EC2SecurityGroupName:
            Ref: WebServerSecurityGroup
        GroupDescription: Frontend Access
    WebServerSecurityGroup:
      Type: AWS::EC2::SecurityGroup
      Properties:
        GroupDescription: Enable HTTP access via port 80 and SSH access
        SecurityGroupIngress:
        - IpProtocol: tcp
          FromPort: 80
          ToPort: 80
          CidrIp: 0.0.0.0/0
        - IpProtocol: tcp
          FromPort: 22
          ToPort: 22
          CidrIp: 0.0.0.0/0

このテンプレートは、db.t2.micro タイプの MySQL データベースインスタンスを作成します。MasterUsernameMasterUserPassword にはデータベースの管理者ユーザー名とパスワードを指定し、AllocatedStorage にはストレージ容量を指定します。

まとめ

Amazon RDS を使用することで、リレーショナルデータベースの管理が大幅に簡素化され、スケーラブルで高可用性のデータベースを簡単に構築できます。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0