1
0

More than 1 year has passed since last update.

Amazon DynamoDBとは何者か

Posted at

目的

DynamoDBはデータベース的な役割をもつAWSのサービスの一つ、ということしか知らなかったため調査した。

DynamoDBの基本情報

  • 完全マネージド型のSQLサービス
    • 管理を24時間体制で自動でおこなってくれるサービスのこと
  • NoSQL型のデータベース
    • RDBMS以外である(よくわからないので後述)
  • 低レイテンシー(応答速度が速い)
    • パーティショニングを実施(テーブルを内部で分割している、外からは一つのテーブルに見える)
  • 容量制限がない
  • 高可用性
    • 複数のAZ(アベイラビリティゾーン)にデータを保存しているため、ある地域のDBで障害が発生しても稼働が継続できる

NoSQL型とリレーショナルデータベースの違いとは

リレーショナルデータベース

  • テーブルと呼ばれるExcelのような列と行で成り立つ二次元の表で表され、
    複数のテーブルを用いてデータを抽出することが可能。
  • あらかじめテーブル名や列名、型を定義しておく必要がある。
    • 仕様変更が柔軟にしにくい。
  • 複雑なデータを保存するには適している。

メインテーブル

ID 社員名 所属部署ID
1 山田太郎 01
2 佐藤花子 02

部署テーブル

ID  所属部署 
01 営業部
02 総務部

ちなみにRDBMSとはRelational DataBase Management Systemの略で
リレーショナルデータベース型データベースを管理するシステムのことを指す。

NoSQL

NoSQLには以下の3つのパターンが存在する

  • key-value型
  • カラム指向型
  • ドキュメント型

今回key-value型についてのみ言及する

NoSQLの一つであるkey-value型とは

  • 一つのkeyに対して複数のデータ(value)を保持する
  • 大量のデータの蓄積に向いている
  • 他のテーブルと拡張しやすい
  • 大量の読み書きは向いてない
  • データの検索や結合処理には向いてない
  • トランザクションができない?
key Value
1 山田太郎, 営業部
2 佐藤花子, 総務部
1
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
1
0