LoginSignup
0
0

More than 1 year has passed since last update.

【AWS】データベースサービス群

Last updated at Posted at 2022-06-26

立ち位置

やろうと思えばEC2上に自前でMySQL等のDB環境を用意することはもちろん可能。
ただ「自前主義」は当然ながら細々とした設定を自分で行わなければいけない。そこはAWS、その辺りを請け負ってくれるサービスがちゃんとある。

EC2+MySQL(自前主義) vs  RDS(Amazon様のサービスに乗っかる)
お勉強目的とかではなく、サービスを運営したいと考えている人は基本的にRDSを使った方がいい。

RDS (Relational Database Service)

AWSが提供するマネージドRDB(Relational Database)サービスのこと。
MySQL, MariaDB, PostgreSQL, Oracle, Microsoft SQL Serverなどのオンプレ環境でもお馴染みデータベースエンジンから好きなものを選択できる。

2014年からAmazon AuroraというAWSが独自開発したRDSも提供されている。

  1. 自動バックアップ機能
    1日1回自動的にバックアップ(DBスナップショット)をとってくれる。最大35日間保存される。
  2. リードレプリカ
    マスターDBとは別に参照専用(Read-Only)のDBを用意すること。これがあることでちょっとしたことでマスターDBに負荷をかける必要が避けられる。カタカナで表記されると分かりづらいな。。。。英語でやってほしい。
    image.png
    画像引用:Amazon RDS リードレプリカ
  3. ハードウェアメンテナンス&障害時の復旧作業
    マスター/スタンバイ構成になっているのも特徴。
    自前でクラスタ構成を組むのは一苦労だが、この辺りも勝手にやってくれるのは有り難い。

ちなみにクラスタ構成とは。。。。

クラスタ構成とは、複数のサーバを連携して利用者側から見て、全体のサーバが1台で構成されているように振舞うシステムのことです。

image.png

障害時にはスタンドバイサーバが起動してくれる!
image.png
 
引用:クラスタとは?(クラスタ構成)【サーバ・ストレージの基礎】

といった面倒なデータベース運用もAWSがやってくれるため、運用の効率化の観点から超便利。

Aurora

RDSの中にあるサービスの1つと言う位置付け。ちょっと細かい違いはまだわかりません。。。

対障害性はAuroraのほうが高い
RDSのほうが安いが、要件によってはシングルAZのAuroraもあり
Mysql、PostgreSql以外を使いたい場合は、RDS

参照:RDSとAuroraを比較してみた

image.png
画像引用:【AWS解説】Amazon AuroraとRDSは何が違う?違いやAurora特有の機能を説明

DynamoDB

Amazonが提供するマネージドNoSQLデータベースサービス。
拡張性に優れたKey-Value型のデータベースを提供する。Firebaseと同じ。

DynamoDB Accelerator (DAX)

CloudFront的なやつ。DynamoDBの前段にキャッシュクラスタを構成するもの。
もともとミリ秒単位での読み取りレスポンスが実現できるが、DAXを前段に置いてあげるとマイクロ秒単位での応答が可能になる。応答速度UPはもちろん、DynamoDBに対して直接アクセスする回数も減らせるのRCUリソースを圧迫せずに済む。

image.png
画像引用:Amazon DynamoDB Accelerator (DAX)

TTL(Time to Live)

期限切れデータの自動メンテナンスができる。
DynamoDB内の各項目でデータの有効期限を設定できる。有効期限を過ぎたら即時削除されるわけではなく、最大48時間以内に削除される。

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