• 検索結果がありません。

©2014, Amazon Web Services, Inc. or its affiliates. All rights reserved.

DynamoDBとは

• 

NoSQL  as  a  Service

• 

データ量量が増えても性能が劣劣化しない

• 

⼤大規模なデータを⾼高速に扱いたいときに真の価値を発揮

DynamoDBの特⻑⾧長

• 

管理理不不要で信頼性が⾼高い

• 

プロビジョンドスループット

• 

ストレージの容量量制限がない

©2014, Amazon Web Services, Inc. or its affiliates. All rights reserved.

特⻑⾧長1:管理理不不要で信頼性が⾼高い

• 

SPOFの存在しない構成

• 

データは3箇所のAZに保存されるので信頼性が⾼高い

• 

ストレージは必要に応じて⾃自動的にパーティショニング される

クライアント

特⻑⾧長2:プロビジョンドスループット

•  テーブルごとにReadとWriteそれぞれに対し、必要 な分だけのスループットキャパシティを割り当てる

(=プロビジョンする)ことができる

•  例例えば下記のようにプロビジョンする

– 

Read  :  1,000

– 

Write  :  100

•  書き込みワークロードが上がってきたら

– 

Read  :  500

– 

Write  :  1,000

•  この値はDB運⽤用中にオンラインで変更更可能

©2014, Amazon Web Services, Inc. or its affiliates. All rights reserved.

特⻑⾧長3:ストレージの容量量制限がない

• 

使った分だけの従量量課⾦金金制のストレージ

• 

データ容量量の増加に応じたディスクやノードの増設作業 は⼀一切切不不要

DynamoDBの構成要素

API

SDK

• 

オペレーションはHTTPベースのAPIで提供されている

• 

ユーザーはコードを書くだけで利利⽤用できる

Database

Cl ient  S ide Ser vice  Sid e

Client application

©2014, Amazon Web Services, Inc. or its affiliates. All rights reserved.

DynamoDBのテーブルのプライマリキーの持ち⽅方は2種類

•  Hash  key

•  Hash  key  &  Range  key

プライマリキーがハッシュキーのサンプル1:

ユーザー情報データベース

©2014, Amazon Web Services, Inc. or its affiliates. All rights reserved.

ユーザー情報データベース

ユーザーIDをプライマリキーとしたKVS的なテーブル

–  UserIdで⼀一意のItemを特定し情報の参照や更更新、削除を⾏行行う

UserId (Hash)

Name Nicknames Mail Address Interests

aed9d Bob [ Rob, Bobby ] [email protected] some address [ Car, Motor Cycle]

edfg12 Alice [ Allie ] a8eesd Carol [ Caroline ] f42aed Dan [ Daniel, Danny ]

Users Table

※DynamoDBにはauto_increment等でユニークIDを払い出す機能はないので注意。

  UUIDなどを使ってください。

プライマリキーがハッシュ&レンジのテーブルサンプル:

ゲームの⾏行行動履履歴管理理データベース

©2014, Amazon Web Services, Inc. or its affiliates. All rights reserved.

ゲームの⾏行行動履履歴管理理データベース

User (Hash)

Timestamp (Range)

Opponent Result

Alice 2014-02-21 12:21:20 Bob Lost Alice 2014-02-21 12:42:01 Bob Won Alice 2014-02-24 09:48:00 Dan Won Alice 2014-02-25 16:21:11 Charlie Won

Battle History

⾃自分のバトル履履歴を確認するケースを想定

–  Userに⾃自分(Alice)を指定し、更更にTimestampが7⽇日以内のデータ をクエリしたりできる

Charlie

02-25 16:21 Won!

Your Battle History

Dan

02-24 09:48 Won!

Alice

02-21 12:42 Won!

テーブル設計のための基礎知識識+1

•  Local  Secondary  Index

–  Range  key以外に絞り込み検索索のためのキーを持つことができる –  Hash  keyが同⼀一のアイテム群の中からの検索索のために利利⽤用

–  インデックスもテーブルにプロビジョンしたスループットを利利⽤用する

•  Global  Secondary  Index

–  Hash  Keyをまたいで検索索を⾏行行うためのインデックス

–  インデックスにテーブルとは独⽴立立したスループットをプロビジョンし

て利利⽤用する

©2014, Amazon Web Services, Inc. or its affiliates. All rights reserved.

Amazon  DynamoDBとは・・・

• 

分散型のNoSQL

• 

⼤大量量のデータを投⼊入しても性能が劣劣化しない

•  Redshiftとは違い、こちらはOLTP⽤用データベース

•  SQLのようにJOINができるわけではない

• 

⼤大量量のデータを格納しておいて、必要な少数のデー タを⾼高速にやりとりするのに強みを持つ

関連したドキュメント