SlideShare a Scribd company logo
1 of 48
Download to read offline
Amazon
SimpleDB
Since December 13, 2007
SimpleDB好きですか?
私は大好きです。
自己紹介
得上 竜一( @tottokug )
SimpleDB愛好家
以上
アジェンダ
SimpleDBって何?
SimlpeDBのいいところ
SimpleDBの注意点
SimpleDBの使いドコロ
ツールの紹介
1. SimpleDBって何?
言葉の説明
基本用語
1-1. Domain(どめいん)
1-2. Item(あいてむ)
1-3. Attribute(あとりびゅーと)
知ってるとちょっとかっこいいかも
1-4 ConsistentRead(こんしすてんとりーど)
1-5 ConditionalUpdate
(こんでぃしょなるあっぷでーと)
SimpleDBの機能
1-6. ドメインの作成(CreateDomain)
1-7. ドメイン情報の取得(DomainMetadata)
1-8. ドメインの削除(DeleteDomain)
1-9. ドメインの一覧(ListDomains)
1-10. アイテムの追加・変更(PutAttributes)
1-11. アイテムの取得(GetItem)
1-12. アイテムの削除(DeleteAttributes)
1-13. アイテムの一括追加・変更
(BatchPutAttributes)
1-14. アイテムの一括削除
(BatchDeleteAttributes)
1-15. アイテムの検索(Select)
言葉の説明
1-1. ドメイン(Domain)
トップレベルの論理単位
RDBMSで言うテーブル
アカウント毎に250個まで
(上限緩和申請可能)
ドメイン名は3∼255 文字
[-_.a-zA-Z0-9]
10GBまで格納可能
Domain
1-2. アイテム(Item)
RDBMSで言うレコード
一意なKeyはItemName
Domain
1-2. アイテム(Item)
RDBMSで言うレコード
一意なKeyはItemName
Domain
Item
Item
Item
Item
Item
Item
Item
1-3. アトリビュート(Attribute)
RDBMSで言うカラム
一つのアトリビュートに値
を複数持つことも可能
同じアトリビュートじゃな
くてよい(スキーマレス)
1-3. アトリビュート(Attribute)
RDBMSで言うカラム
一つのアトリビュートに値
を複数持つことも可能
同じアトリビュートじゃな
くてよい(スキーマレス)
Item1
Attr1 = Value1
Attr3 = Value3,4,5
Item2
Attr1 = Value6
Attr2 = Value2
1-4. Consistent Read
SimpleDBの一貫性オプション
SimpleDBは標準では Eventually Consistent
読み込み時にConsistentReadオプションを指定
することで、強い一貫性を保証できる。
EventuallyConsistent?
EventuallyConsistent?
EventuallyConsistent?
EventuallyConsistent?
EventuallyConsistent?
EventuallyConsistent?
EventuallyConsistent?
EventuallyConsistent?
1-5. Conditional Update
条件付きで更新するオプション
複数からの同時書き換えに対する措置
機能
1-6. ドメインの作成
CreateDomain
ドメイン名を指定
1-7. ドメイン情報の取得
DomainMetadata
Timestamp
ItemCount
AttributeValueCount
AttributeNameCount
ItemNamesSizeBytes
AttributeValuesSizeBytes
AttributeNamesSizeBytes
1-8. ドメインの削除
DeleteDomain
1-9. ドメインの一覧取得
ListDomains
1-10. アイテムの追加・変更
PutAttributes
1-11. アイテムの取得
GetAttributes
1-12. アイテムの削除 
DeleteAttributes
1-13. アイテムの一括追加・変更
BatchPutAttributes
1-14. アイテムの一括削除
BatchDeleteAttributes
1-15. アイテムの検索
SELECT * FROM domain
WHERE hoge = fuga
AND foo IN( bar , bir , bur )
OR EVERY(fiz) = baz
OR ha LIKE %fu
ORDER BY hoge
2. SimpleDBの良いところ
2-1. ドライバ不要
2-2. スキーマ定義不要(?)
2-3. メンテナンス不要
2-4. インデックス
3. SimpleDBの注意点
3-1. データ容量が10G たったの10G
3-2. updateの費用がちょっと高い
4. SimpleDBの使いドコロ
4-1. vs MySQL(RDS)
アクセスにムラがある
いつでもアクセスがあるわけじゃない。(時間課金は嫌)
カラムを固定したくない
20130622 = 329 のように日付をカラム名
データ量が10G以下
4-2. vs DynamoDB
アクセスにムラがある
定期的にアクセスがない(時間課金は嫌)
ピーク時のアクセスが大したことない
スループットはそんなに気にしない
インクリメントは必要ない
アクセスカウンターみたいなものには使わない
どのアトリビュートでもソートしたい
4-3. vs SQLite
複数サーバからアクセスしたい
5. ツールの紹介
5-1. Eclipse
http://aws.amazon.com/eclipse/
5-2. SDBTool(Firefox)
http://d.hatena.ne.jp/tottokug/20121115/1352944496
5-3. SDBNavigator(Chrome)
https://chrome.google.com/webstore/detail/sdbnavigator/
ddhigekdfabonefhiildaiccafacphgg
December 13, 2007
リリースから5年半、まだBeta

More Related Content

More from Ryuichi Tokugami

Attention is all you need!!! を入門する前に
Attention is all you need!!! を入門する前にAttention is all you need!!! を入門する前に
Attention is all you need!!! を入門する前にRyuichi Tokugami
 
Azure Databricksで始めるSpark 構築から活用までの第一歩
Azure Databricksで始めるSpark 構築から活用までの第一歩Azure Databricksで始めるSpark 構築から活用までの第一歩
Azure Databricksで始めるSpark 構築から活用までの第一歩Ryuichi Tokugami
 
de:code 2019 AI04 あなたがコルタナさんに「ラーメン」と尋ねたとき、それはコルタナさんに何を求めていますか?
de:code 2019 AI04 あなたがコルタナさんに「ラーメン」と尋ねたとき、それはコルタナさんに何を求めていますか?de:code 2019 AI04 あなたがコルタナさんに「ラーメン」と尋ねたとき、それはコルタナさんに何を求めていますか?
de:code 2019 AI04 あなたがコルタナさんに「ラーメン」と尋ねたとき、それはコルタナさんに何を求めていますか?Ryuichi Tokugami
 
改めまして、Cognitive ToolKit です。
 改めまして、Cognitive ToolKit です。 改めまして、Cognitive ToolKit です。
改めまして、Cognitive ToolKit です。Ryuichi Tokugami
 
平成最後の1月ですし、Databricksでもやってみましょうか
平成最後の1月ですし、Databricksでもやってみましょうか平成最後の1月ですし、Databricksでもやってみましょうか
平成最後の1月ですし、DatabricksでもやってみましょうかRyuichi Tokugami
 
Azure MLで機械学習をやってみよう
Azure MLで機械学習をやってみようAzure MLで機械学習をやってみよう
Azure MLで機械学習をやってみようRyuichi Tokugami
 
UserDataでEC2をより便利に (2013-07-25 Jawsug中央線 第0回)
UserDataでEC2をより便利に (2013-07-25 Jawsug中央線 第0回)UserDataでEC2をより便利に (2013-07-25 Jawsug中央線 第0回)
UserDataでEC2をより便利に (2013-07-25 Jawsug中央線 第0回)Ryuichi Tokugami
 
Elastic beanstalk AWS 初心者から 次の一歩へ (2013-04-27 JAWS-UG つくば 第1回 勉強会)
Elastic beanstalk AWS 初心者から 次の一歩へ (2013-04-27 JAWS-UG つくば 第1回 勉強会)Elastic beanstalk AWS 初心者から 次の一歩へ (2013-04-27 JAWS-UG つくば 第1回 勉強会)
Elastic beanstalk AWS 初心者から 次の一歩へ (2013-04-27 JAWS-UG つくば 第1回 勉強会)Ryuichi Tokugami
 
JAWS-UG アップデート (2012-09-14 JAWS-UG 第13回 勉強会 )
JAWS-UG アップデート (2012-09-14 JAWS-UG 第13回 勉強会 )JAWS-UG アップデート (2012-09-14 JAWS-UG 第13回 勉強会 )
JAWS-UG アップデート (2012-09-14 JAWS-UG 第13回 勉強会 )Ryuichi Tokugami
 
"restaurant démonstration" (2012-09-01 クラウドごった煮 第6回 AWS枠)
"restaurant démonstration" (2012-09-01 クラウドごった煮 第6回 AWS枠)"restaurant démonstration" (2012-09-01 クラウドごった煮 第6回 AWS枠)
"restaurant démonstration" (2012-09-01 クラウドごった煮 第6回 AWS枠)Ryuichi Tokugami
 
AWSアップデート (2012-08-27 JAWS-UG 札幌 第7回 勉強会)
AWSアップデート (2012-08-27 JAWS-UG 札幌 第7回 勉強会)AWSアップデート (2012-08-27 JAWS-UG 札幌 第7回 勉強会)
AWSアップデート (2012-08-27 JAWS-UG 札幌 第7回 勉強会)Ryuichi Tokugami
 
AWS上にサービスを作る (2012-06-22 JAWS-UG 福岡)
AWS上にサービスを作る (2012-06-22 JAWS-UG 福岡)AWS上にサービスを作る (2012-06-22 JAWS-UG 福岡)
AWS上にサービスを作る (2012-06-22 JAWS-UG 福岡)Ryuichi Tokugami
 
Talking about love for DynamoDB & SimpleDB (2012-06-05 CloudDB Night)
Talking about love for DynamoDB & SimpleDB (2012-06-05 CloudDB Night)Talking about love for DynamoDB & SimpleDB (2012-06-05 CloudDB Night)
Talking about love for DynamoDB & SimpleDB (2012-06-05 CloudDB Night)Ryuichi Tokugami
 
CloudSearch初披露 (2012-05-18 JAWS-UG 札幌 第6回 勉強会)
CloudSearch初披露 (2012-05-18 JAWS-UG 札幌 第6回 勉強会)CloudSearch初披露 (2012-05-18 JAWS-UG 札幌 第6回 勉強会)
CloudSearch初披露 (2012-05-18 JAWS-UG 札幌 第6回 勉強会)Ryuichi Tokugami
 
Aws禅 (2012-05-13 JAWS-UG 子ども会)
Aws禅 (2012-05-13 JAWS-UG 子ども会)Aws禅 (2012-05-13 JAWS-UG 子ども会)
Aws禅 (2012-05-13 JAWS-UG 子ども会)Ryuichi Tokugami
 
Counter Table Pattern & Temporary Table Pattern (2012-04-13 CDP Night)
Counter Table Pattern & Temporary Table Pattern (2012-04-13 CDP Night)Counter Table Pattern & Temporary Table Pattern (2012-04-13 CDP Night)
Counter Table Pattern & Temporary Table Pattern (2012-04-13 CDP Night)Ryuichi Tokugami
 
サンタクラウド番外編 (2011-12-22 第11回 AWS User Group - Japan 東京勉強会)
サンタクラウド番外編 (2011-12-22 第11回 AWS User Group - Japan 東京勉強会)サンタクラウド番外編 (2011-12-22 第11回 AWS User Group - Japan 東京勉強会)
サンタクラウド番外編 (2011-12-22 第11回 AWS User Group - Japan 東京勉強会)Ryuichi Tokugami
 
S3解説 - 第1回 ビギナー編 AWS User Group - Japan 東京勉強会
S3解説 - 第1回 ビギナー編 AWS User Group - Japan 東京勉強会S3解説 - 第1回 ビギナー編 AWS User Group - Japan 東京勉強会
S3解説 - 第1回 ビギナー編 AWS User Group - Japan 東京勉強会Ryuichi Tokugami
 

More from Ryuichi Tokugami (20)

Attention is all you need!!! を入門する前に
Attention is all you need!!! を入門する前にAttention is all you need!!! を入門する前に
Attention is all you need!!! を入門する前に
 
Azure Databricksで始めるSpark 構築から活用までの第一歩
Azure Databricksで始めるSpark 構築から活用までの第一歩Azure Databricksで始めるSpark 構築から活用までの第一歩
Azure Databricksで始めるSpark 構築から活用までの第一歩
 
de:code 2019 AI04 あなたがコルタナさんに「ラーメン」と尋ねたとき、それはコルタナさんに何を求めていますか?
de:code 2019 AI04 あなたがコルタナさんに「ラーメン」と尋ねたとき、それはコルタナさんに何を求めていますか?de:code 2019 AI04 あなたがコルタナさんに「ラーメン」と尋ねたとき、それはコルタナさんに何を求めていますか?
de:code 2019 AI04 あなたがコルタナさんに「ラーメン」と尋ねたとき、それはコルタナさんに何を求めていますか?
 
改めまして、Cognitive ToolKit です。
 改めまして、Cognitive ToolKit です。 改めまして、Cognitive ToolKit です。
改めまして、Cognitive ToolKit です。
 
平成最後の1月ですし、Databricksでもやってみましょうか
平成最後の1月ですし、Databricksでもやってみましょうか平成最後の1月ですし、Databricksでもやってみましょうか
平成最後の1月ですし、Databricksでもやってみましょうか
 
Silk
SilkSilk
Silk
 
Azure MLで機械学習をやってみよう
Azure MLで機械学習をやってみようAzure MLで機械学習をやってみよう
Azure MLで機械学習をやってみよう
 
UserDataでEC2をより便利に (2013-07-25 Jawsug中央線 第0回)
UserDataでEC2をより便利に (2013-07-25 Jawsug中央線 第0回)UserDataでEC2をより便利に (2013-07-25 Jawsug中央線 第0回)
UserDataでEC2をより便利に (2013-07-25 Jawsug中央線 第0回)
 
Elastic beanstalk AWS 初心者から 次の一歩へ (2013-04-27 JAWS-UG つくば 第1回 勉強会)
Elastic beanstalk AWS 初心者から 次の一歩へ (2013-04-27 JAWS-UG つくば 第1回 勉強会)Elastic beanstalk AWS 初心者から 次の一歩へ (2013-04-27 JAWS-UG つくば 第1回 勉強会)
Elastic beanstalk AWS 初心者から 次の一歩へ (2013-04-27 JAWS-UG つくば 第1回 勉強会)
 
Autoscalingとか
AutoscalingとかAutoscalingとか
Autoscalingとか
 
JAWS-UG アップデート (2012-09-14 JAWS-UG 第13回 勉強会 )
JAWS-UG アップデート (2012-09-14 JAWS-UG 第13回 勉強会 )JAWS-UG アップデート (2012-09-14 JAWS-UG 第13回 勉強会 )
JAWS-UG アップデート (2012-09-14 JAWS-UG 第13回 勉強会 )
 
"restaurant démonstration" (2012-09-01 クラウドごった煮 第6回 AWS枠)
"restaurant démonstration" (2012-09-01 クラウドごった煮 第6回 AWS枠)"restaurant démonstration" (2012-09-01 クラウドごった煮 第6回 AWS枠)
"restaurant démonstration" (2012-09-01 クラウドごった煮 第6回 AWS枠)
 
AWSアップデート (2012-08-27 JAWS-UG 札幌 第7回 勉強会)
AWSアップデート (2012-08-27 JAWS-UG 札幌 第7回 勉強会)AWSアップデート (2012-08-27 JAWS-UG 札幌 第7回 勉強会)
AWSアップデート (2012-08-27 JAWS-UG 札幌 第7回 勉強会)
 
AWS上にサービスを作る (2012-06-22 JAWS-UG 福岡)
AWS上にサービスを作る (2012-06-22 JAWS-UG 福岡)AWS上にサービスを作る (2012-06-22 JAWS-UG 福岡)
AWS上にサービスを作る (2012-06-22 JAWS-UG 福岡)
 
Talking about love for DynamoDB & SimpleDB (2012-06-05 CloudDB Night)
Talking about love for DynamoDB & SimpleDB (2012-06-05 CloudDB Night)Talking about love for DynamoDB & SimpleDB (2012-06-05 CloudDB Night)
Talking about love for DynamoDB & SimpleDB (2012-06-05 CloudDB Night)
 
CloudSearch初披露 (2012-05-18 JAWS-UG 札幌 第6回 勉強会)
CloudSearch初披露 (2012-05-18 JAWS-UG 札幌 第6回 勉強会)CloudSearch初披露 (2012-05-18 JAWS-UG 札幌 第6回 勉強会)
CloudSearch初披露 (2012-05-18 JAWS-UG 札幌 第6回 勉強会)
 
Aws禅 (2012-05-13 JAWS-UG 子ども会)
Aws禅 (2012-05-13 JAWS-UG 子ども会)Aws禅 (2012-05-13 JAWS-UG 子ども会)
Aws禅 (2012-05-13 JAWS-UG 子ども会)
 
Counter Table Pattern & Temporary Table Pattern (2012-04-13 CDP Night)
Counter Table Pattern & Temporary Table Pattern (2012-04-13 CDP Night)Counter Table Pattern & Temporary Table Pattern (2012-04-13 CDP Night)
Counter Table Pattern & Temporary Table Pattern (2012-04-13 CDP Night)
 
サンタクラウド番外編 (2011-12-22 第11回 AWS User Group - Japan 東京勉強会)
サンタクラウド番外編 (2011-12-22 第11回 AWS User Group - Japan 東京勉強会)サンタクラウド番外編 (2011-12-22 第11回 AWS User Group - Japan 東京勉強会)
サンタクラウド番外編 (2011-12-22 第11回 AWS User Group - Japan 東京勉強会)
 
S3解説 - 第1回 ビギナー編 AWS User Group - Japan 東京勉強会
S3解説 - 第1回 ビギナー編 AWS User Group - Japan 東京勉強会S3解説 - 第1回 ビギナー編 AWS User Group - Japan 東京勉強会
S3解説 - 第1回 ビギナー編 AWS User Group - Japan 東京勉強会
 

初めてのSimpleDB (2013-06-22 JAWS-UG 大阪 第8回 )