LoginSignup
0
0

More than 1 year has passed since last update.

AWS 勉強メモ ~データベース~

Last updated at Posted at 2022-01-12

~RDB~

●AWS RDS(Relation Database Service)
AWSのリレーショナル型のデータベースを提供するサービス。
通常データベースを利用する際のサーバ構築等が不要。
Amazon Aurora、MySQL、MariaDB、Oracle、Microsoft SQL Server、PostgreSQLから選択できる。
※RDSを利用せずにEC2上にRDBをセットアップするやり方もあるが、RDSの方が運用面・可用性でメリットが大きい

 -RDB(リレーショナルデータベース)
データを表形式で格納するデータベース
表の行(横)を「レコード」、(縦)を「フィールド」、表を「テーブル」と呼ぶ

●Amazon Aurora
MySQL および PostgreSQL と互換性のあるAWS独自のRDB
最大15個のリードレプリカを持ち、高速・高可用性を実現する

 -リードレプリカ:
 更新用データベース(マスター)からレプリケーションされた参照専用のデータベースのこと
 参照用アクセスを分散し性能を向上させることができる

-Aurora マルチマスタークラスター
 別AZにライトレプリカを作成する(マルチマスタ)機能(書き込み後の読み込み整合性もを持つ)
 どのノード・AZが落ちてもダウンタイムが0になる

~NoSQL~

●NoSQL (非リレーショナル) データベース
テーブル構造(スキーマ)を固定することなく、そのままの形で格納するデータベース
非定型な構造を持つデータを柔軟に管理することができ
key/value stores、wide column、DocumentDBなどのタイプがある

●key-value型データベース
非リレーショナルデータベースの一種で、キーと値によるシンプルな形でデータを保持する

●DynamoDB
AWSの提供するフルマネージドのKeyValue型データベースサービス

 -グローバルテーブル:
複数のリージョンでDynamoDBのテーブルを自動で同期する機能
アクセス元の国・地域によるネットワーク遅延をなくし、高速の読み取り/書き込み処理を行うことができる

●Amazon ElastiCache
AWSのマネージド型インメモリキャッシュサービスのこと
memcachedとRedis の2種類が利用可能
フルマネージド、高速アクセス、スケーラブルという特長がある。

(補足)キャッシュ
データを高速にアクセスする形で(ストレージとは別に)保持しておくこと。
 データを保管しているストレージにアクセスする回数を減らし、データ取得のパフォーマンスをアップさせることができる

(補足)インメモリデータベース
 データをディスクや SSDではなく、データストレージ用のメモリに保存するデータベース
 高速にアクセスすることが可能。
 電源を喪失した場合などいにデータが消失する場合があるため、永続性を保つにはデータをバックアップする必要がある

(補足)揮発性メモリ
 電源供給が途絶えるとデータが消失するメモリのこと

-memcached(memory cache daemon )
分散型キャッシュシステムを構築することができるソフトウェア。
・キーとバリューをシンプルな1対1で組み合わせて保存する。
・キーごとにマルチスレッドで動作する。
※AWSのElastic memcachedの場合、ノード間の複製は行わないため障害が発生するとデータは消える

-Redis
オープンソースの非リレーショナルデータベース
・単純なKey-Valueだけでなく複雑な種類のデータも扱える
・メモリ上のデータをストレージに格納し、永続的に保持する機能がある

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