Closed14

AWS データベース

bayamasabayamasa

データベース

アンマネージド型
スケーリング、対障害性、可用性をお客様が管理

マネージド型
スケーリング、対障害性、可用性は通常サービスに組み込み

bayamasabayamasa

RDS DBインスタンス

DBインスタンスクラス

  • CPU
  • メモリ
  • ネットワークパフォーマンス

DBインスタンスストレージ

  • マグネティック
  • SSD
  • プロビジョンド IOPS
bayamasabayamasa

マルチAZの高可用性

Amazon RDSによって、スタンバイコピーが別のAZの同VPCに構成される。
トランザクションはスタンバイコピーに同期でレプリケーションされる。

障害が発生するとスタンバイインスタンスに自動的に接続を変更する

bayamasabayamasa

RDSの使用が適切な場合

読み込み/書き込み速度が30000 IOPS(Input/Output per second)
(読み取り15000 書き込み 15000)

単一のワーカノード、シャード

不適切な場合
超高速の読み取り/書き込み
(150000回の書き込み/秒)

NoSQLで処理可能なシンプルなGET, PUTのリクエスト

bayamasabayamasa

シャーディングとは
Databaseの負荷分散方法の一種

同じテーブルを複数のデータベースに用意して、1つのテーブルに保存していたレコードを分散することで、Databaseに保持されるレコードの量を減らす負荷分散の方法です。
また各DBサーバーのCPUの負荷分散にも役に立ちます。

  • テーブルシャーディング
    一つのDatabase内でテーブルを水平分割する

  • データベースシャーディング
    複数のDatabaseで水平分割する

bayamasabayamasa

料金

リソースの料金は実行時間に基づく
また設定したコンピュータのサイズにもよる

購入タイプ
オンデマンド/リザーブドが存在する

DBインスタンスの数
ピーク時の負荷に対応するために複数のDBインスタンスをプロビジョニングして対応

ストレージ
無料枠
アクティブなデータベース かつ ストレージの100%を超えるまでのバックアップストレージ

有料枠
削除されたDBインスタンスのバックアップストレージ
追加ストレージ

bayamasabayamasa

リードレプリカ

データベースの規模が大きくなるとアクセスに時間がかかる様になる場合があります。
そのためMySQL, PostgresSQLなどにはデータをリアルタイムにコピーして、別のシステム上にDBを作成し、負荷分散を行う機能が搭載されています。

この機能をリードレプリカという

リードレプリカはRead Onlyでアクセスが多くなると自動でスケールアウトしてくれる

https://pfs.nifcloud.com/navi/tech/read_replicas.htm

bayamasabayamasa

RDSはリードレプリカの機能が存在する。
非同期レプリケーションで必要に応じてマスターに昇格する

読み取りクエリをオフロードしてくれる

bayamasabayamasa

DynamoDB

NoSQL
スケーラビリティが水平

bayamasabayamasa

DynamoDBの主要なコンポーネント
テーブル、項目、属性

またDynamoDBは2種類のプライマリキーをサポート

bayamasabayamasa

Amazon Redshift

データ分析用のデータベース、高速な実行結果を抽出する。
実装はリーダーノードとコンピューティングノードのクラスターで構成される。

リーダーノードでクライアントとの通信を制御する
リーダーノードで実行コードがコンパイルされる

コンピューティングノードが並列処理を実現する

bayamasabayamasa

ユースケース

エンタープライズデータウェアハウス
ビックデータ

bayamasabayamasa

Amazon Aurora

  • エンタープライズ規模のリレーショナル・データベース
  • MysqlとPostgresSQLとの互換性あり
  • 時間のかかるタスクを自動化(プロビジョニング、バックアップ、障害検知など)
bayamasabayamasa

データベースがクラッシュしたときにログファイルなどを作成します。

このスクラップは2021/08/28にクローズされました