データの効果的な使い方が、ビジネスの成否を左右する時代です。しかし、日々増えるデータを考えると、常に使いやすいように保管するのは難しく、都度データベース用のサーバーの増設などの対応に追われることになります。Amazon RDSは、利用中のデータベースサーバーと連携させつつ、自社で設備投資することなく、クラウド上でRDB(リレーショナルデータベース)が構築できます。さらに既存のオンプレミスのデータベースとも連携させ、より拡張性と安全性を確保したコストパフォーマンスの高いデータベースシステムにすることができるのです。
本記事では、Amazon RDSのサービスの特徴を主に料金やプランなども含めて解説していきます。
Amazon RDSとは?
Amazon RDS(Amazon Relational Database Service)は、クラウド上で運用されるマネージド型のRDBMS(リレーショナルデータベース管理システム)サービスです。
RDBMSとは?
RDBMS(Relational DataBase Management System)とは、SQLを使用して、リレーショナルデータベース(RDB)を管理するためのソフトウェアを指します。
RDBは、データを複数の表形式で管理し、それぞれの表間の関係を定義することにより、データ間の関連性を扱うことができるデータベースのことです。多くの企業では、その規模に関わらず、日常的にRDBが使用されています。
RDBMSサービスの代表的な製品には、オラクルの「Oracle Database」、IBMの「IBM Db2」、マイクロソフトの「Microsoft SQL Server」があります。オープンソースとして無料で公開されているものではMySQLやPostgreSQLがあります。
「マネージドサービス型」による運用管理の負担低減
Amazon RDSはマネージド型のサービスで、データベースの利用に必要な環境構築や運用管理をAWS側で行ってくれます。Amazon RDSの利用開始時は以下の作業が自動化されており、ユーザーは自社で設備投資することなく、クラウド上でデータベース構築ができます。
- ハードウェアなどインフラの準備
- OSインストール
- ミドルウェアインストール
- データベースの作成
利用開始後は以下のような運用作業が自動化されます。
- 日時バックアップ
- 障害時のスタンバイ機への切り替え(マルチアベイラビリティーゾーン利用の場合)
- OS、ミドルウェアのパッチ適用
データベース利用に伴うのハードウェアの設定と構築、運用管理をAWSに任せられる「マネージド型サービス」はユーザーの運用負荷やコスト低減が図れます。自社のシステムリソースだけでなく、人材リソースも少なくてすむような運用も可能となります。
Amazon RDSはOracle、MySQLなど人気のRDBMSを利用できる
Amazon RDSでは6種類のRDBMSを利用できます。利用できるRDBMSとそれぞれの特徴を簡単に紹介します。
オススメ!Amazon Aurora
AWSが提供しているリレーショナルデータベースです。MySQL および PostgreSQL と互換性があり、商用利用も可能なパフォーマンスを低コストで利用できます。
以下の特徴があります。
- MySQLと互換性のあるバージョンとPostgreSQLと互換性のあるバージョンを選ぶことができて、MySQLの最大5倍のスループット、PostgreSQLでは最大3倍のスループットを実現しています。
- リードレプリカに自動フェイルオーバーの機能が備わっており、最大15個のレプリカを配置できます。
※他のRDBMSはリードレプリカに自動フェイルオーバーの機能はなくレプリカの配置は最大5個までとなっています。 - ストレージの自動スケーリングは最大125TBまで拡張可能です。
※他のRDBMSは最大64TBです。
PostgreSQL
オープンソースのリレーショナルデータベースとして多くの企業に選ばれてきました。オブジェクトリレーショナルデータベースのため、大規模なデータベースで複雑なクエリを利用する場合にオススメで、多くの機能と高い拡張性を備えています。
MySQL
世界で最も人気が高く、広く利用されているオープンソースのリレーショナルデータベースであるMySQLはナレッジも多く、初心者が利用しやすいデータベースです。
MariaDB
MySQL のデベロッパーがMySQLをベースに作成した人気の高いオープンソースのリレーショナルデータベースです。
Oracle
Oracle社が開発・リリースしている商用のリレーショナルデータベースで、高機能、高性能で堅牢性が高く、世界的に高いシェアを持っています。Amazon RDSではライセンス込みのインスタンスを利用する。もしくは、ライセンスを持ち込むBring–Your–Own–License (BYOL)も選択できます。
Microsoft SQL Server
Microsoft が開発したリレーショナルデータベース管理システムで、Windowsとの親和性が高く、Windows Server で利用されることが多い。別名「SQL Server」や「MS SQL」とも呼ばれています。
Amazon RDSのメリットと特徴・機能
マネージドサービスだからメンテナンスが不要で構築も簡単
Amazon RDSはアプリケーションレイヤー以上はユーザー側が、それ以外はAWSが責任範囲となるマネージドサービスのため、電源、ネットワーク、サーバーメンテナンスなどの物理的な管理だけでなく、OSやミドルウェア、バックアップなどの領域もAWSが管理します。そのためオンプレミスと比較するとデータベースの導入・運用の負担が大幅に削減されます。
RDBの容量を変更できる「スケーラビリティ」
オンプレミスでは、データの増加に合わせてサーバーを追加する、また、ピークに合わせて設備を用意するとコスト高になるなど、キャパシティプランニングは重要なテーマであると同時に、難しく厄介なものでした。
Amazon RDSはストレージ容量の拡張と縮小が自在にできるのが大きな特長です。サーバーへのアクセス集中などによる負荷が事前に予測できる場合は、ストレージ容量を拡張する日時をあらかじめ設定できます。また、ストレージ容量の閾値が80%を超えたら拡張するなどの自動スケール設定もできます。
このようにAmazon RDSは高いスケーラビリティを有しているため、データストレージ容量のサイジングの問題から解放されます。
自動/手動バックアップ(スナップショット)と復元
自動バックアップは1日1回、最大35日間まで取得でき、バックアップの開始時刻も指定でできるので、ワークロードの少ない時間帯を設定することも可能です。初回はフルバックアップを行いますが、2回目以降は差分のみのバックアップとなります。
マルチアベイラビリティーゾーン(AZ)配置の場合、バックアップはスタンバイインスタンスから取得するので、バックアッププロセスにより負荷がかかった場合も、プライマリインスタンスへの影響はありません。
自動バックアップは日時で取得しますが、それとは別にトランザクションログがストレージサービスであるAmazon S3に5分単位で保存されるため、リストア(復元)時に最短で5分前のバックアップを指定して復元できます。
手動で任意のバックアップ(スナップショット)を作成することもできます。スナップショットは意図的に削除するまで保持されます。
リードレプリカ機能(データベース負荷分散)でパフォーマンスを向上
プライマリーのデータベースを複製して、リードレプリカを作成し、読み込みの要求はリードレプリカに誘導します。これにより、プライマリーデータベースの負荷を下げ、読み取り処理のパフォーマンスを向上させることができます。更新に比べて参照頻度の高いデータベースの運用に向いています。
マルチAZ配置による冗長化とフェイルオーバーによる高可用性
普段利用するプライマリのデータベースインスタンスと物理的にも論理的にも独立した異なる別の領域であるAZにスタンバイインスタンスを複製するマルチAZ配置では、障害発生時に自動でスタンバイインスタンスがアクティブに切り替わりるフェイルオーバーが行われます。これにより、短いダウンタイムでサービスを利用し続けることができます。
Amazon RDSのデメリット
自社のオンプレミスのOSやミドルウェアで制約がある場合は、RDSとの連携の範囲がある程度限定されることがあります。また、IPアドレスの固定機能はなく、データベースへの接続にはDNSエンドポイントを使用して接続する必要があります。
こうした利用者のさまざまなOSやミドルウェアの環境下でも、AWSの別のサービスで補完や代替ができることもRDSを使ううえでの安心材料のひとつです。また、「マネージドサービス型」であることから、日常的なメンテナンスは不要ではありますが、AWS側での基盤に関わるメンテナンスがある場合は、利用者側に一部の操作や設定などの協力を依頼することになります。
機能制限がある
PostgreSQLを利用する場合には以下の制限があるので注意が必要です。
- PostgreSQLの同期レプリケーション機能が使用できない
- 導入できるPostgreSQLの拡張機能に制限がある
RDSの運用や監視にお困りな方必見!
![マンガでわかるAWS運用代行サービス](https://cloudnavi.nhn-techorus.com/wp-content/uploads/2021/09/dl_image_mangaoperation-1.png)
AWS運用代行サービスをわかりやすく解説!
こんなことを感じていませんか?
・AWS運用のために社内のリソースが足りずに困っている
・障害発生時の対応に不安がある
・運用だけでなく構成のアドバイスもあると嬉しい
Amazon RDSのインスタンスタイプ
インスタンスを構成するCPU、メモリ、ストレージ、ネットワークキャパシティの組み合わせにより、さまざまなインスタンスタイプが用意されています。各種インスタンスタイプのスペック等の詳細につきましては、AWSサイトの「Amazon RDS インスタンスタイプ」をご確認ください。
ここでは、各インスタンスタイプの特徴やユースケースについて簡単に記します。
Amazon RDSのインスタンスを選択しようとすると例えば「db . t4g . micro」の文字列が出てきます。「db」はデータベースインスタンスであることを指し「t4」の「t」は用途別に命名された「インスタンスファミリー」、その数字「4」は「世代」を表していて、数が大きくなるほど新しく、「micro」はスペックの大きさを表してます。
Amazon RDSのインスタンスは大きく、汎用(一般用途向け)とメモリ最適化にわかれており、さらにその中でインスタンスタイプが細分化されています。
汎用(一般用途向け)
T2、T3ファミリー
CPU クレジットと安定したベースラインパフォーマンスによって制御される、バースト可能な CPUをそなえています。
T2 インスタンスは、マイクロサービス、テストおよびステージングデータベースなど。T3は使用中に一時的なスパイクが生じる中程度の CPU 使用率を持つデータベースワークロード向けに設計されています。
T2は無料利用枠の対象となっています。
M6g、M5、M5d、M4ファミリー
提供される各リソース(コンピューティング、メモリ、ネットワーク)のバランスがとれており、さまざまなデータベースワークロードに適しています。
メモリ最適化
R6g、R5、R5b、R5d、R4ファミリー
汎用と比較して、搭載メモリサイズが増えており、メモリ負荷の高いデータベースワークロードに適しています。
X1e、X1ファミリー
高性能データベース、大規模アプリケーション、エンタープライズクラスのアプリケーション、およびインメモリアプリケーション用に最適です。
Z1dファミリー
インスタンスの中で最も高速で、高いコンピューティング性能と大容量メモリの組み合わせにより、電子回路設計のオートメーション、金融業における大容量コンピューティングやRDBに適しています。
Amazon RDSのストレージタイプ
データベース運用の効率化に影響するデータの転送速度は、以下の3種類のストレージタイプが用意されており、利用環境に適したものを選択できます。
汎用 SSD
SSDタイプのストレージオプションで、プロビジョニング容量 1 GB あたり 3 IOPS の安定したベースラインを実現し、最大 16,000 IOPS まで拡大できます。
プロビジョンド IOPS SSD
SSD タイプのストレージの選択肢の 1 つ。I /O レイテンシーおよび継続する I/O スループットが必要となる I/O 重視のワークロードの要件を満たすように設計されています。データベースインスタンスごとに最大 256,000 IOPSを実現します。
マグネティック
ストレージの追加利用の場合は、汎用 SSD またはプロビジョンド IOPS を使うことが推奨されますが、下位互換性のためにマグネティックストレージもサポートしています。マグネティックストレージでの DB インスタンスのストレージ量の上限は、他のストレージタイプより少なくなります。HDDタイプのストレージで、データのアクセス頻度が低い場合や、高パフォーマンスの必要性がない場合など、比較的小さいワークロードに適しています。
Amazon RDSの料金体系
Amazon RDSは、基本的には利用しただけの料金の請求となります。料金体系についてはリーズナブルで、利用者を第一に考えている点を見てみましょう。
従量課金
Amazon RDSの課金は、インスタンスの起動時間、ストレージの使用料、データ転送量に対して行われます。マルチAZ配置の場合、スタンバイインスタンスの費用も発生するので、シングルAZに比べ料金はおおよそ倍になります。
また、バックアップはデータベースサイズを超えない部分については無料です。
インスタンス料金の詳細は AWSサイトの「Amazon RDS の料金」でご確認ください。
ライセンス費用
OracleやSQL Serverといった商用製品は、ライセンスを持ち込むことができて、その場合料金が安くなります。もちろん、ライセンスを持っていなくても、ライセンス込みでインスタンスを利用することも可能で、ライセンス費用も時間単位となるため、ユーザーはいつでも利用を停止することができます
インスタンスの停止
Amazon RDSでは、インスタンスを1回に最大7日間停止することができます。
停止中、割り当てたストレージ、バックアップデータは課金されますが、インスタンスの時間単位の請求はされません。
※7日間を過ぎると自動で起動します。
評価のための無償利用(お試し)
新規アカウント取得から12ヶ月間は、以下の無料利用枠が適用されます。
・db.t2.micro インスタンス
・シングル AZ
・750時間使用/月のデータベース使用
・20GB の汎用ストレージ (SSD)
・20GBのバックアップ、DBスナップショット用ストレージ
Amazon RDSのインスタンスタイプによる課金の特徴
AWSは、サービス全体で、2006年のサービス提供開始から129回以上の値下げをしており、Amazon RDSもそのような方針の下にあります。Amazon RDSにはオンデマンドインスタンスとリザーブドインスタンスの2つのインスタンスタイプがあり、長期で利用するシステムの場合は1年間や3年間の契約(予約)をすることで、大幅な割引が受けられる「リザーブドインスタンス」を利用することで費用を抑えることができます。リザーブドインスタンスを利用すると、使用状況が一定であれば、使用料金を最大69%削減できます。
オンデマンドインスタンスの特徴
通常の料金形態での提供で契約期間のしばりはありません。初めて利用する場合や短期や急な利用などリソースの変動が大きくある場合にはこちらのインスタンスタイプの利用をオススメします。
リザーブドインスタンスの特徴
1年もしくは3年の契約期間のしばりがあるかわりに、オンデマンドインスタンスと比較して安価に利用できるインスタンスタイプです。前払いなし、一部前払い、全前払いと支払い方法があり、前払いの割合が多いほどオンデマンドインスタンスからの割引率も高くなります。ただし途中でリソースを利用しなくなった場合にも利用期間中は料金を支払う必要があるため、長期利用が想定され、リソースに変動が少ない場合の利用がおすすめです。
例えば常時稼働する場合はベースのリソースにリザーブドインスタンスをあて、増減のある部分はオンデマンドインスタンスを利用するなどの使い分けが必要です。
Amazon RDSのストレージオプションの料金
汎用ストレージ(SSD)
プロビジョニングしたストレージ容量に対して課金されます。
プロビジョンド IOPS (SSD) ストレージ
ストレージの使用料とIOPSに対して課金されます。
Amazon RDSは拡張性とそのスピード対応が重要
オンプレミスでは機器の購入やソフトウェアの開発という工程を必ず経なければなりません。構築してみないと、最終的な確定機能や使いやすさを評価できないオンプレミスに比べると、Amazon RDSのようなクラウドシステムの利便性は大きいといえます。
IoTやAIが注目されるようになり、データはビジネス上の重要な要素となってきています。高まるデータの価値とその蓄積規模の拡大に、ストレージシステムが後手に回らないようにすることが大切です。
データを備蓄し活用するために、Amazon RDSで運用の負担を低減し、なおかつスケーラビリティと安全性を兼ね備えたデータベース開発環境を確保することが重要であるといえるでしょう。
RDS料金が安くなる!請求代行サービス
![マンガでわかるAWS運用代行サービス](https://cloudnavi.nhn-techorus.com/wp-content/uploads/2021/09/dl_image_mangapayment.png)
AWSリセール(請求代行)サービスを解説!
こんなお悩みや疑問はありませんか?
・AWSコストを削減しなければならない
・AWS請求代行を使いたいけれど複雑でわかりにくい
・どうしてAWSが割引になるのかわからないため不安