SlideShare a Scribd company logo
しみず @shimy_net
2013 / 6 / 22
Amazon DynamoDB
初心者向け 超速マスター編
自己紹介
しみず @shimy_net
Webアーキテクト
アマゾン芸人
無駄に技術を使って
面白いことをする
本を執筆しました
http://goo.gl/QtaK6
やること
□ 概説
□ Management Console から利用する
・Table の作成
・Throughput の変更
・Item の登録、取得、更新
□ Eclipse から利用する(Java)
・デモンストレーション
□ 手乗りDynamoDB
・デモンストレーション
Amazon DynamoDB とは
□ 完全マネージド型の NoSQL データベースサービス
・管理不要で高い拡張性を提供
・ハードウェア調達、インストール、設定、レプリケーション、
 ソフトウェア修正プログラムの適用、クラスタ化 が不要
・開発者はAPI経由で利用するだけ(SDK)
□ 高い拡張性
・データベース容量は自動的に拡張
・パフォーマンスを指定できる
  ・利用者がダイヤルを設定するようにパフォーマンスを設定
  ・秒間あたりの、読み込み/書き込みスループットを指定
Amazon DynamoDB とは
□ データへの高速なアクセス
・AWSクラウドの特性を活用
 ・十分な数のハードウェアに分散し、安定した高いパフォーマンスを提供
 ・SSDを利用して高速アクセス
・データベースが大規模になっても、数ミリ秒のアクセス速度を期待
□ 高い信頼性
・同期レプリケーションアーキテクチャ
  ・データを複数のAZ(データセンター)にコピー
  ・データセンターレベルの障害からもデータを守る
Amazon DynamoDB とは
□ 整合性モデル
 ・読み込みに対して結果的に整合性のある読み込みを設定するか
  強い整合性を設定するかを指定できる
□ Local Secondary Indexes
 ・テーブル毎に最大5つのローカルセカンダリインデックスをサポート
 ・テーブルの属性の一部もしくは全てを射影できる
□ Amazon EMR 連携
 ・S3 への Export / Import、Query、Join
Data Model
□ Tables Items Attributes
DynamoDB Table1
Table2
Table N
・・・
Item1
Item2
Item3
Item N
・・・
{
Id = 101
ProductName = "Book 101 Title"
ISBN = "111-1111111111"
Authors = [ "Author 1", "Author 2" ]
Price = -2
Dimensions = "8.5 x 11.0 x 0.5"
PageCount = 500
InPublication = 1
ProductCategory = "Book"
}
Attribute
{
Id = 201
ProductName = "18-Bicycle 201"
Description = "201 description"
BicycleType = "Road"
Brand = "Brand-Company A"
Price = 100
Gender = "M"
Color = [ "Red", "Black" ]
ProductCategory = "Bike"
}
Item1
Item2
利用可能な型
・Scalar data types
  Number, String, Binary
・Multi-valued types
  Number Set, String Set, Binary Set
64KBまで
スキーマレス
Primary Key
□ Hash Type Primary Key
 ・1つの Attribute が Primary Key
 ・DynamoDB は Primary Key に対して Hash Index を作成
 
□ Hash and Range Type Primary Key
 ・2つの Attribute が Primary Key
     1: Hash Primary Key
     2: Range Primary Key
 ・DynamoDB は Hash Primary Key に対して Hash Index を作成
 ・DynamoDB は Range Primary Key に対して整列した Range Index を作成
Attribute 1
(Hash Primary Key)
Attribute 2 Attribute 3
Attribute 1
(Hash Primary Key)
Attribute 2
(Range Primary Key)
Attribute 3
Map<HashKey,Object>
Map<HashKey, SortedMap<RangeKey,Object>>
Primary Key(具体例)
□ サンプルデータ
Table Name Primary Key Type Hash Attribute Name Range Attribute Name
Forum ( Name, ... ) Hash Attribute Name: Name -
Thread (ForumName, Subject, ... ) Hash and Range Attribute Name: ForumName Attribute Name: Subject
Reply ( Id, ReplyDateTime, ... ) Hash and Range Attribute Name: Id Attribute Name: ReplyDateTime
Amazon DynamoDB
Amazon DynamoDB#DynamoDB Thread 1
2011-12-11 00:40:57
Amazon DynamoDB
DynamoDB Thread1
Amazon S3
Amazon DynamoDB
DynamoDB Thread2
Amazon S3
S3 Thread2
Amazon DynamoDB#DynamoDB Thread 1
2011-12-18 00:40:57
Amazon DynamoDB#DynamoDB Thread 1
2011-12-25 00:40:57
Amazon DynamoDB#DynamoDB Thread 2
2011-12-25 00:40:57
Amazon DynamoDB#DynamoDB Thread 2
2012-01-03 00:40:57
Forum Thread Reply
Hash Primary key
Range Primary key
Hash Primary key
Range Primary key
Hash Primary key
Primary Key(具体例)
□ Forum
Name (Primary Key) Other Attributes
"Amazon DynamoDB" {
Category="Amazon Web Services"
Threads=3
Messages=4
Views=1000
LastPostBy="User A"
LastPostDateTime= "2012-01-03T00:40:57.165Z"
}
"Amazon S3" {
Category="Amazon Web Services"
Threads=1
}
Primary Key(具体例)
□ Thread
Name (Primary Key) Other Attributes
ForumName = "Amazon DynamoDB"
Subject = "DynamoDB Thread 1"
{
Message = "DynamoDB thread 1 message text"
LastPostedBy = "User A"
Views = 0
Replies = 0
Answered = 0
Tags = [ "index", "primarykey", "table" ]
LastPostDateTime = "2012-01-03T00:40:57.165Z"
}
ForumName = "Amazon DynamoDB"
Subject = "DynamoDB Thread 2
{
Message = "DynamoDB thread 2 message text"
LastPostedBy = "User A"
Views = 0
Replies = 0
Answered = 0
Tags = [ "index", "primarykey", "rangekey" ]
LastPostDateTime = "2012-01-03T00:40:57.165Z"
}
ForumName = "Amazon S3"
Subject = "S3 Thread 1"
{
Message = "S3 Thread 1 message text"
LastPostedBy = "User A"
Views = 0
Replies = 0
Answered = 0
Tags = [ "largeobject", "multipart upload" ]
LastPostDateTime = "2012-01-03T00:40:57.165Z"
}
Primary Key(具体例)
□ Reply
Name (Primary Key) Other Attributes
Id = "Amazon DynamoDB#DynamoDB Thread 1"
ReplyDateTime = "2011-12-11T00:40:57.165Z
{
Message = "DynamoDB Thread 1 Reply 1 text"
PostedBy = "User A"
}
Id = "Amazon DynamoDB#DynamoDB Thread 1"
ReplyDateTime = "2011-12-18T00:40:57.165Z
{
Message = "DynamoDB Thread 1 Reply 1 text"
PostedBy = "User A"
}
Id = "Amazon DynamoDB#DynamoDB Thread 1"
ReplyDateTime = "2011-12-25T00:40:57.165Z
{
Message = "DynamoDB Thread 1 Reply 3 text"
PostedBy = "User B"
}
Id = "Amazon DynamoDB#DynamoDB Thread 2"
ReplyDateTime = "2011-12-25T00:40:57.165Z
{
Message = "DynamoDB Thread 2 Reply 1 text"
PostedBy = "User A"
}
Id = "Amazon DynamoDB#DynamoDB Thread 2"
ReplyDateTime = "2012-01-03T00:40:57.165Z
{
Message = "DynamoDB Thread 2 Reply 2"
PostedBy = "User A"
}
Local Secondary Indexes
second=4
id=3
y=xx(Projected)
Primary key Secondary Index
□ Local Secondary Indexes とは
 ・テーブル毎に最大5つのローカルセカンダリインデックスをサポート
 ・テーブルの属性の一部もしくは全てを射影できる
・・・
id=3
x=xx
y=xx
z=xx
id=3
x=xx
y=xx
z=xx
Local Secondary Indexes
□ LSI がないとき
□ LSI があるとき
Table Item1
Item2
Item N
プログラム
loop (items) {
  //処理
}
Item2
・・・
Item9
必要な Item を抽出
するフィルタが必要
Table Item2
Item9
Query
Query
Provisioned Throughput
□ Unit とは
書き込みの場合
1 ユニット = 1KB の Item に対して 1 秒あたり 1 回の書き込みできる
読み込みの場合
1 ユニット = 4KB のItemに対して強い整合性のある読み込みを 1 秒あたり 1 回
できる ※結果整合性のある読み込みは 1 秒あたり 2 回できる
整合性モデル
□ 結果的に整合性のある読み込み(デフォルト)
‒ 結果的に整合性のあるオプションを選択すると、読み込みスループットが最大限
に向上します。ただし、結果的に整合性のある読み込みには、最新の書き込み結
果が反映されない可能性があります。データの全コピーの整合は通常 1 秒以内に
行われます。短時間後に読み込みを繰り返すことによって、更新されたデータが返
されます。
□ 強い整合性の読み込み
‒ 結果的に整合性のある読み込みに加えて、Amazon DynamoDB は、お客様のア
プリケーションまたはお客様のアプリケーションの要素が必要とする場合に強い
整合性のある読み込みをリクエストするための、柔軟性とコントロールを提供し
ます。強い整合性のある読み込みが返す結果には、読み込みの前に適切な応答を
受け取ったすべての書き込みが反映されています。
API
CREATETABLE
‒ テーブルを作成し、データアクセスに使用するプライマリインデックスを指定します。
UPDATETABLE
‒ 指定されたテーブルについて、 プロビジョニングされたスループット値を更新します。
DELETETABLE
‒ テーブルを削除します。
DESCRIBETABLES
‒ テーブルサイズ、ステータス、およびインデックス情報を返します。
LISTTABLES
‒ 現在のアカウントおよびエンドポイントに関連付けられたすべてのテーブルのリストを返します。
PUTITEM
‒ 新しい項目を作成するか、古い項目を(すべての属性を含め)新しい項目で置き換えます。指定したテーブルに同じプライ
マリキーを持つ項目が存在する場合、既存の項目は新しい項目に完全に置き換えられます。条件付き演算子を使用して、所定
の条件に一致する属性値を持つ項目のみを置き換えたり、その項目が存在しない場合にのみ新しい項目を挿入したりすること
もできます。
BATCHWRITEITEM
‒ 1回のトランザクションとしてではなく、1回のリクエストで、複数のテーブル間で複数の項目を挿入、置換、削除します。
PUT または DELETE で最大25項目のバッチをサポートし、合計リクエストサイズは最大1 MB です。
UPDATEITEM ‒ 既存の項目の属性を編集します。条件付き演算子を使用して、項目の属性値が所定の条件に一致する場合に
のみ更新を実行することもできます。
DELETEITEM
‒ プライマリキーを使用してテーブルから1つの項目を削除します。条件付き演算子を使用して、項目の属性値が所定の条件
に一致する場合にのみ項目を削除することもできます。
API
GETITEM
‒ GETITEM 演算は、プライマリキーに一致する項目の属性セットを返します。GETITEM 演算は、デフォルトでは、結果的
に整合性のある読み込みを提供します。ご利用のアプリケーションで結果的に整合性のある読み込みを使用できない場合は、
CONSISTENTREAD を使用します。
BATCHGETITEMS
‒ BATCHGETITEMS 演算は、複数の項目の属性を複数のテーブルから、それぞれのプライマリキーを使用して返します。1
回の応答のサイズ制限は 1 MB で、最大 100 個の項目を返します。強い整合性と結果整合性の両方をサポートします。
QUERY
‒ テーブルのプライマリキーを使用して、または、セカンダリインデックスからセカンダリインデックスキーを使用して、1
つ以上の項目を取得します。範囲キー値またはセカンダリインデックスキーに対して比較演算子を使用することで、クエリの
範囲を絞り込むことができます。強い整合性と結果整合性の両方をサポートします。応答1つあたりのサイズ上限は1 MBです。
SCAN
‒ テーブルに対して完全スキャンを実行し、1つ以上の項目と属性を取得します。返される項目は、1つ以上の属性に対して指
定したフィルタで制限されている場合があります。したがって、この API は、テーブルのプライマリキーではない属性に対し
て一時的なクエリを有効にするときに使用できます。ただし、これはインデックスを使用しない完全テーブルスキャンなので、
予測可能なパフォーマンスが必要なアプリケーションクエリには使用しないでください。スキャン API リクエストの結果
セットは結果的に整合性があります。スキャン API をインジケータと考えることができます。あるスキャン API リクエスト
のスキャン項目の合計サイズが 1 MB の上限を超えると、そのリクエストは終了し、取得された結果は(以降のオペレーショ
ンでスキャンを続行できるように)LASTEVALUATEDKEY と共に返されます。
デフォルトでは、スキャンオペレーションはデータを順次処理します。テーブルのスキャンを並列で行うことも可能です。ス
キャンオペレーションでは、そのスキャンをいくつのセグメントに分割するかを指定し、複数のセグメントを同時にスキャン
することができます。並列処理を使用したテーブルのスキャンの詳細については、並列スキャンのドキュメントを参照してく
ださい。
料金表
開発・管理ツール
□ AWS Management Console(Webブラウザ)
□ AWS SDK for XXXX
やること
□ 概説
□ Management Console から利用する
・Table の作成
・Throughput の変更
・Item の登録、取得、更新
□ Eclipse から利用する(Java)
・デモンストレーション
□ 手乗りDynamoDB
・デモンストレーション
Management Console から利用
① ここからスタート
② DynamoDBを選択
Table の作成
③ Create Table
をクリック
Table の作成
④ テーブル名を指定
⑤ Primary Key を指定
Table の作成
⑥ Local Secondary Index
を指定
Table の作成
⑦ Throughput を指定
Table の作成
⑧ 通知先 を指定
Table の作成
⑨ 完了
Table の作成
Table が作成された
Throughput の変更
① Modify Throughput
をクリック
Throughput の変更
② Throughput を変更
スループットを減らす作業は1日に4回まで
※グリニッジ標準時基準
1回の作業で最大2倍までスケール可能
③ 完了
Item の登録
① Explore Table をクリック
Item の登録
② New Item をクリック
Item の登録
③ 属性データを入力
④完了
Item の取得(Scan)
① Scan を選択 ② Go をクリック
Item の取得(Scan)
③ Item Details
をクリック
Item 一覧が
表示される
④ Item 詳細が
表示される
Item の取得(Query)
① Query を選択
② Hash Key と Range Key
で検索
Item の更新
① Edit Item をクリック
② Attribute を更新
③ 完了
やること
□ 概説
□ Management Console から利用する
・Table の作成
・Throughput の変更
・Item の登録、取得、更新
□ Eclipse から利用する(Java)
・デモンストレーション
□ 手乗りDynamoDB
・デモンストレーション
手乗りDynamoDBの仕組み
LRMIC G
センサー
WebSocket
(SocketRocket)
- (void)remoteControlReceived
WithEvent:(UIEvent *)event {}
EC2
DynamoDB
websocket
aws-sdk
応答結果により
色が変わる
手乗りDynamoDB
!
    以上!
ありがとうございました!
Items(参考)
Hash Key Range Key

More Related Content

What's hot

DynamoDB設計のちょっとした技
DynamoDB設計のちょっとした技DynamoDB設計のちょっとした技
DynamoDB設計のちょっとした技
Yoichi Toyota
 
ヤフー社内でやってるMySQLチューニングセミナー大公開
ヤフー社内でやってるMySQLチューニングセミナー大公開ヤフー社内でやってるMySQLチューニングセミナー大公開
ヤフー社内でやってるMySQLチューニングセミナー大公開
Yahoo!デベロッパーネットワーク
 
DynamoDBによるソーシャルゲーム実装 How To
DynamoDBによるソーシャルゲーム実装 How ToDynamoDBによるソーシャルゲーム実装 How To
DynamoDBによるソーシャルゲーム実装 How To
伊藤 祐策
 
20210216 AWS Black Belt Online Seminar AWS Database Migration Service
20210216 AWS Black Belt Online Seminar AWS Database Migration Service20210216 AWS Black Belt Online Seminar AWS Database Migration Service
20210216 AWS Black Belt Online Seminar AWS Database Migration Service
Amazon Web Services Japan
 
日本のお客様におけるAmazon Auroraへの移行・検証事例と技術ポイント
日本のお客様におけるAmazon Auroraへの移行・検証事例と技術ポイント日本のお客様におけるAmazon Auroraへの移行・検証事例と技術ポイント
日本のお客様におけるAmazon Auroraへの移行・検証事例と技術ポイント
Amazon Web Services Japan
 
イミュータブルデータモデル(世代編)
イミュータブルデータモデル(世代編)イミュータブルデータモデル(世代編)
イミュータブルデータモデル(世代編)
Yoshitaka Kawashima
 
20210526 AWS Expert Online マルチアカウント管理の基本
20210526 AWS Expert Online マルチアカウント管理の基本20210526 AWS Expert Online マルチアカウント管理の基本
20210526 AWS Expert Online マルチアカウント管理の基本
Amazon Web Services Japan
 
PostgreSQLアンチパターン
PostgreSQLアンチパターンPostgreSQLアンチパターン
PostgreSQLアンチパターン
Soudai Sone
 
インフラエンジニアのためのcassandra入門
インフラエンジニアのためのcassandra入門インフラエンジニアのためのcassandra入門
インフラエンジニアのためのcassandra入門
Akihiro Kuwano
 
AWS Black Belt Online Seminar 2018 Amazon DynamoDB Advanced Design Pattern
AWS Black Belt Online Seminar 2018 Amazon DynamoDB Advanced Design PatternAWS Black Belt Online Seminar 2018 Amazon DynamoDB Advanced Design Pattern
AWS Black Belt Online Seminar 2018 Amazon DynamoDB Advanced Design Pattern
Amazon Web Services Japan
 
[社内勉強会]ELBとALBと数万スパイク負荷テスト
[社内勉強会]ELBとALBと数万スパイク負荷テスト[社内勉強会]ELBとALBと数万スパイク負荷テスト
[社内勉強会]ELBとALBと数万スパイク負荷テスト
Takahiro Moteki
 
なかったらINSERTしたいし、あるならロック取りたいやん?
なかったらINSERTしたいし、あるならロック取りたいやん?なかったらINSERTしたいし、あるならロック取りたいやん?
なかったらINSERTしたいし、あるならロック取りたいやん?
ichirin2501
 
20190424 AWS Black Belt Online Seminar Amazon Aurora MySQL
20190424 AWS Black Belt Online Seminar Amazon Aurora MySQL20190424 AWS Black Belt Online Seminar Amazon Aurora MySQL
20190424 AWS Black Belt Online Seminar Amazon Aurora MySQL
Amazon Web Services Japan
 
Kinesis Firehoseを使ってみた
Kinesis Firehoseを使ってみたKinesis Firehoseを使ってみた
Kinesis Firehoseを使ってみた
dcubeio
 
20190522 AWS Black Belt Online Seminar AWS Step Functions
20190522 AWS Black Belt Online Seminar AWS Step Functions20190522 AWS Black Belt Online Seminar AWS Step Functions
20190522 AWS Black Belt Online Seminar AWS Step Functions
Amazon Web Services Japan
 
モノリスからマイクロサービスへの移行 ~ストラングラーパターンの検証~(Spring Fest 2020講演資料)
モノリスからマイクロサービスへの移行 ~ストラングラーパターンの検証~(Spring Fest 2020講演資料)モノリスからマイクロサービスへの移行 ~ストラングラーパターンの検証~(Spring Fest 2020講演資料)
モノリスからマイクロサービスへの移行 ~ストラングラーパターンの検証~(Spring Fest 2020講演資料)
NTT DATA Technology & Innovation
 
トランザクションをSerializableにする4つの方法
トランザクションをSerializableにする4つの方法トランザクションをSerializableにする4つの方法
トランザクションをSerializableにする4つの方法
Kumazaki Hiroki
 
初心者向けMongoDBのキホン!
初心者向けMongoDBのキホン!初心者向けMongoDBのキホン!
初心者向けMongoDBのキホン!
Tetsutaro Watanabe
 
Oracleからamazon auroraへの移行にむけて
Oracleからamazon auroraへの移行にむけてOracleからamazon auroraへの移行にむけて
Oracleからamazon auroraへの移行にむけて
Yoichi Sai
 
RDB技術者のためのNoSQLガイド NoSQLの必要性と位置づけ
RDB技術者のためのNoSQLガイド NoSQLの必要性と位置づけRDB技術者のためのNoSQLガイド NoSQLの必要性と位置づけ
RDB技術者のためのNoSQLガイド NoSQLの必要性と位置づけ
Recruit Technologies
 

What's hot (20)

DynamoDB設計のちょっとした技
DynamoDB設計のちょっとした技DynamoDB設計のちょっとした技
DynamoDB設計のちょっとした技
 
ヤフー社内でやってるMySQLチューニングセミナー大公開
ヤフー社内でやってるMySQLチューニングセミナー大公開ヤフー社内でやってるMySQLチューニングセミナー大公開
ヤフー社内でやってるMySQLチューニングセミナー大公開
 
DynamoDBによるソーシャルゲーム実装 How To
DynamoDBによるソーシャルゲーム実装 How ToDynamoDBによるソーシャルゲーム実装 How To
DynamoDBによるソーシャルゲーム実装 How To
 
20210216 AWS Black Belt Online Seminar AWS Database Migration Service
20210216 AWS Black Belt Online Seminar AWS Database Migration Service20210216 AWS Black Belt Online Seminar AWS Database Migration Service
20210216 AWS Black Belt Online Seminar AWS Database Migration Service
 
日本のお客様におけるAmazon Auroraへの移行・検証事例と技術ポイント
日本のお客様におけるAmazon Auroraへの移行・検証事例と技術ポイント日本のお客様におけるAmazon Auroraへの移行・検証事例と技術ポイント
日本のお客様におけるAmazon Auroraへの移行・検証事例と技術ポイント
 
イミュータブルデータモデル(世代編)
イミュータブルデータモデル(世代編)イミュータブルデータモデル(世代編)
イミュータブルデータモデル(世代編)
 
20210526 AWS Expert Online マルチアカウント管理の基本
20210526 AWS Expert Online マルチアカウント管理の基本20210526 AWS Expert Online マルチアカウント管理の基本
20210526 AWS Expert Online マルチアカウント管理の基本
 
PostgreSQLアンチパターン
PostgreSQLアンチパターンPostgreSQLアンチパターン
PostgreSQLアンチパターン
 
インフラエンジニアのためのcassandra入門
インフラエンジニアのためのcassandra入門インフラエンジニアのためのcassandra入門
インフラエンジニアのためのcassandra入門
 
AWS Black Belt Online Seminar 2018 Amazon DynamoDB Advanced Design Pattern
AWS Black Belt Online Seminar 2018 Amazon DynamoDB Advanced Design PatternAWS Black Belt Online Seminar 2018 Amazon DynamoDB Advanced Design Pattern
AWS Black Belt Online Seminar 2018 Amazon DynamoDB Advanced Design Pattern
 
[社内勉強会]ELBとALBと数万スパイク負荷テスト
[社内勉強会]ELBとALBと数万スパイク負荷テスト[社内勉強会]ELBとALBと数万スパイク負荷テスト
[社内勉強会]ELBとALBと数万スパイク負荷テスト
 
なかったらINSERTしたいし、あるならロック取りたいやん?
なかったらINSERTしたいし、あるならロック取りたいやん?なかったらINSERTしたいし、あるならロック取りたいやん?
なかったらINSERTしたいし、あるならロック取りたいやん?
 
20190424 AWS Black Belt Online Seminar Amazon Aurora MySQL
20190424 AWS Black Belt Online Seminar Amazon Aurora MySQL20190424 AWS Black Belt Online Seminar Amazon Aurora MySQL
20190424 AWS Black Belt Online Seminar Amazon Aurora MySQL
 
Kinesis Firehoseを使ってみた
Kinesis Firehoseを使ってみたKinesis Firehoseを使ってみた
Kinesis Firehoseを使ってみた
 
20190522 AWS Black Belt Online Seminar AWS Step Functions
20190522 AWS Black Belt Online Seminar AWS Step Functions20190522 AWS Black Belt Online Seminar AWS Step Functions
20190522 AWS Black Belt Online Seminar AWS Step Functions
 
モノリスからマイクロサービスへの移行 ~ストラングラーパターンの検証~(Spring Fest 2020講演資料)
モノリスからマイクロサービスへの移行 ~ストラングラーパターンの検証~(Spring Fest 2020講演資料)モノリスからマイクロサービスへの移行 ~ストラングラーパターンの検証~(Spring Fest 2020講演資料)
モノリスからマイクロサービスへの移行 ~ストラングラーパターンの検証~(Spring Fest 2020講演資料)
 
トランザクションをSerializableにする4つの方法
トランザクションをSerializableにする4つの方法トランザクションをSerializableにする4つの方法
トランザクションをSerializableにする4つの方法
 
初心者向けMongoDBのキホン!
初心者向けMongoDBのキホン!初心者向けMongoDBのキホン!
初心者向けMongoDBのキホン!
 
Oracleからamazon auroraへの移行にむけて
Oracleからamazon auroraへの移行にむけてOracleからamazon auroraへの移行にむけて
Oracleからamazon auroraへの移行にむけて
 
RDB技術者のためのNoSQLガイド NoSQLの必要性と位置づけ
RDB技術者のためのNoSQLガイド NoSQLの必要性と位置づけRDB技術者のためのNoSQLガイド NoSQLの必要性と位置づけ
RDB技術者のためのNoSQLガイド NoSQLの必要性と位置づけ
 

Similar to Amazon DynamoDB(初心者向け 超速マスター編)JAWSUG大阪

DynamoDB Streamを使ったリアルタイム分析
DynamoDB Streamを使ったリアルタイム分析DynamoDB Streamを使ったリアルタイム分析
DynamoDB Streamを使ったリアルタイム分析
ShinsukeYokota
 
LINEのMySQL運用について
LINEのMySQL運用についてLINEのMySQL運用について
LINEのMySQL運用について
LINE Corporation
 
[db tech showcase Tokyo 2015] A33:Amazon DynamoDB Deep Dive by アマゾン データ サービス ...
[db tech showcase Tokyo 2015] A33:Amazon DynamoDB Deep Dive by アマゾン データ サービス ...[db tech showcase Tokyo 2015] A33:Amazon DynamoDB Deep Dive by アマゾン データ サービス ...
[db tech showcase Tokyo 2015] A33:Amazon DynamoDB Deep Dive by アマゾン データ サービス ...
Insight Technology, Inc.
 
Web Operations and Perl kansai.pm#14
Web Operations and Perl kansai.pm#14Web Operations and Perl kansai.pm#14
Web Operations and Perl kansai.pm#14
Masahiro Nagano
 
XPages 開発 Tips 百連発
XPages 開発 Tips 百連発XPages 開発 Tips 百連発
XPages 開発 Tips 百連発
Mitsuru Katoh
 
20170329 D3 DBAが夜間メンテをしなくなった日 発表資料
20170329 D3 DBAが夜間メンテをしなくなった日 発表資料20170329 D3 DBAが夜間メンテをしなくなった日 発表資料
20170329 D3 DBAが夜間メンテをしなくなった日 発表資料
dcubeio
 
States of Dolphin - MySQL最新技術情報2013秋 -
States of Dolphin - MySQL最新技術情報2013秋 -States of Dolphin - MySQL最新技術情報2013秋 -
States of Dolphin - MySQL最新技術情報2013秋 -
yoyamasaki
 
DynamoDB MyNA・JPUG合同DB勉強会 in 東京
DynamoDB   MyNA・JPUG合同DB勉強会 in 東京DynamoDB   MyNA・JPUG合同DB勉強会 in 東京
DynamoDB MyNA・JPUG合同DB勉強会 in 東京
Yuko Mori
 
Deep Dive: Amazon DynamoDB (db tech showcase 2016)
Deep Dive: Amazon DynamoDB (db tech showcase 2016) Deep Dive: Amazon DynamoDB (db tech showcase 2016)
Deep Dive: Amazon DynamoDB (db tech showcase 2016)
Amazon Web Services Japan
 
DynamoDBのテーブル設計手法.pptx
DynamoDBのテーブル設計手法.pptxDynamoDBのテーブル設計手法.pptx
DynamoDBのテーブル設計手法.pptx
Tetsuya Wada
 
AIやマイクロサービスを活用したDynamoDB節約術
AIやマイクロサービスを活用したDynamoDB節約術AIやマイクロサービスを活用したDynamoDB節約術
AIやマイクロサービスを活用したDynamoDB節約術
gree_tech
 
Amazon dynamo db、cloudant、blockchainの紹介 20160706
Amazon dynamo db、cloudant、blockchainの紹介 20160706Amazon dynamo db、cloudant、blockchainの紹介 20160706
Amazon dynamo db、cloudant、blockchainの紹介 20160706
Tsuyoshi Hirayama
 
AWS Dev Day Tokyo 2018 | Amazon DynamoDB Backed な テレコムコアシステムを構築・運用してる話
AWS Dev Day Tokyo 2018 | Amazon DynamoDB Backed なテレコムコアシステムを構築・運用してる話AWS Dev Day Tokyo 2018 | Amazon DynamoDB Backed なテレコムコアシステムを構築・運用してる話
AWS Dev Day Tokyo 2018 | Amazon DynamoDB Backed な テレコムコアシステムを構築・運用してる話
SORACOM,INC
 
Handlersocket 20110517
Handlersocket 20110517Handlersocket 20110517
Handlersocket 20110517
akirahiguchi
 
MongoDBを用いたソーシャルアプリのログ解析 〜解析基盤構築からフロントUIまで、MongoDBを最大限に活用する〜
MongoDBを用いたソーシャルアプリのログ解析 〜解析基盤構築からフロントUIまで、MongoDBを最大限に活用する〜MongoDBを用いたソーシャルアプリのログ解析 〜解析基盤構築からフロントUIまで、MongoDBを最大限に活用する〜
MongoDBを用いたソーシャルアプリのログ解析 〜解析基盤構築からフロントUIまで、MongoDBを最大限に活用する〜
Takahiro Inoue
 
SQL Azure のシームレスな管理
SQL Azure のシームレスな管理SQL Azure のシームレスな管理
SQL Azure のシームレスな管理
junichi anno
 
Developers.IO 2019 Effective Datalake
Developers.IO 2019 Effective DatalakeDevelopers.IO 2019 Effective Datalake
Developers.IO 2019 Effective Datalake
Satoru Ishikawa
 
AWS Black Belt Techシリーズ AWS re:Invent 2014 最新情報のアップデート
AWS Black Belt Techシリーズ  AWS re:Invent 2014 最新情報のアップデートAWS Black Belt Techシリーズ  AWS re:Invent 2014 最新情報のアップデート
AWS Black Belt Techシリーズ AWS re:Invent 2014 最新情報のアップデート
Amazon Web Services Japan
 
WindowsでMySQL入門
WindowsでMySQL入門WindowsでMySQL入門
WindowsでMySQL入門
Hidenori Ishii
 
.NET最先端技術によるハイパフォーマンスウェブアプリケーション
.NET最先端技術によるハイパフォーマンスウェブアプリケーション.NET最先端技術によるハイパフォーマンスウェブアプリケーション
.NET最先端技術によるハイパフォーマンスウェブアプリケーション
Yoshifumi Kawai
 

Similar to Amazon DynamoDB(初心者向け 超速マスター編)JAWSUG大阪 (20)

DynamoDB Streamを使ったリアルタイム分析
DynamoDB Streamを使ったリアルタイム分析DynamoDB Streamを使ったリアルタイム分析
DynamoDB Streamを使ったリアルタイム分析
 
LINEのMySQL運用について
LINEのMySQL運用についてLINEのMySQL運用について
LINEのMySQL運用について
 
[db tech showcase Tokyo 2015] A33:Amazon DynamoDB Deep Dive by アマゾン データ サービス ...
[db tech showcase Tokyo 2015] A33:Amazon DynamoDB Deep Dive by アマゾン データ サービス ...[db tech showcase Tokyo 2015] A33:Amazon DynamoDB Deep Dive by アマゾン データ サービス ...
[db tech showcase Tokyo 2015] A33:Amazon DynamoDB Deep Dive by アマゾン データ サービス ...
 
Web Operations and Perl kansai.pm#14
Web Operations and Perl kansai.pm#14Web Operations and Perl kansai.pm#14
Web Operations and Perl kansai.pm#14
 
XPages 開発 Tips 百連発
XPages 開発 Tips 百連発XPages 開発 Tips 百連発
XPages 開発 Tips 百連発
 
20170329 D3 DBAが夜間メンテをしなくなった日 発表資料
20170329 D3 DBAが夜間メンテをしなくなった日 発表資料20170329 D3 DBAが夜間メンテをしなくなった日 発表資料
20170329 D3 DBAが夜間メンテをしなくなった日 発表資料
 
States of Dolphin - MySQL最新技術情報2013秋 -
States of Dolphin - MySQL最新技術情報2013秋 -States of Dolphin - MySQL最新技術情報2013秋 -
States of Dolphin - MySQL最新技術情報2013秋 -
 
DynamoDB MyNA・JPUG合同DB勉強会 in 東京
DynamoDB   MyNA・JPUG合同DB勉強会 in 東京DynamoDB   MyNA・JPUG合同DB勉強会 in 東京
DynamoDB MyNA・JPUG合同DB勉強会 in 東京
 
Deep Dive: Amazon DynamoDB (db tech showcase 2016)
Deep Dive: Amazon DynamoDB (db tech showcase 2016) Deep Dive: Amazon DynamoDB (db tech showcase 2016)
Deep Dive: Amazon DynamoDB (db tech showcase 2016)
 
DynamoDBのテーブル設計手法.pptx
DynamoDBのテーブル設計手法.pptxDynamoDBのテーブル設計手法.pptx
DynamoDBのテーブル設計手法.pptx
 
AIやマイクロサービスを活用したDynamoDB節約術
AIやマイクロサービスを活用したDynamoDB節約術AIやマイクロサービスを活用したDynamoDB節約術
AIやマイクロサービスを活用したDynamoDB節約術
 
Amazon dynamo db、cloudant、blockchainの紹介 20160706
Amazon dynamo db、cloudant、blockchainの紹介 20160706Amazon dynamo db、cloudant、blockchainの紹介 20160706
Amazon dynamo db、cloudant、blockchainの紹介 20160706
 
AWS Dev Day Tokyo 2018 | Amazon DynamoDB Backed な テレコムコアシステムを構築・運用してる話
AWS Dev Day Tokyo 2018 | Amazon DynamoDB Backed なテレコムコアシステムを構築・運用してる話AWS Dev Day Tokyo 2018 | Amazon DynamoDB Backed なテレコムコアシステムを構築・運用してる話
AWS Dev Day Tokyo 2018 | Amazon DynamoDB Backed な テレコムコアシステムを構築・運用してる話
 
Handlersocket 20110517
Handlersocket 20110517Handlersocket 20110517
Handlersocket 20110517
 
MongoDBを用いたソーシャルアプリのログ解析 〜解析基盤構築からフロントUIまで、MongoDBを最大限に活用する〜
MongoDBを用いたソーシャルアプリのログ解析 〜解析基盤構築からフロントUIまで、MongoDBを最大限に活用する〜MongoDBを用いたソーシャルアプリのログ解析 〜解析基盤構築からフロントUIまで、MongoDBを最大限に活用する〜
MongoDBを用いたソーシャルアプリのログ解析 〜解析基盤構築からフロントUIまで、MongoDBを最大限に活用する〜
 
SQL Azure のシームレスな管理
SQL Azure のシームレスな管理SQL Azure のシームレスな管理
SQL Azure のシームレスな管理
 
Developers.IO 2019 Effective Datalake
Developers.IO 2019 Effective DatalakeDevelopers.IO 2019 Effective Datalake
Developers.IO 2019 Effective Datalake
 
AWS Black Belt Techシリーズ AWS re:Invent 2014 最新情報のアップデート
AWS Black Belt Techシリーズ  AWS re:Invent 2014 最新情報のアップデートAWS Black Belt Techシリーズ  AWS re:Invent 2014 最新情報のアップデート
AWS Black Belt Techシリーズ AWS re:Invent 2014 最新情報のアップデート
 
WindowsでMySQL入門
WindowsでMySQL入門WindowsでMySQL入門
WindowsでMySQL入門
 
.NET最先端技術によるハイパフォーマンスウェブアプリケーション
.NET最先端技術によるハイパフォーマンスウェブアプリケーション.NET最先端技術によるハイパフォーマンスウェブアプリケーション
.NET最先端技術によるハイパフォーマンスウェブアプリケーション
 

More from 崇之 清水

WordPress RESTful API & Amazon API Gateway (English version)
WordPress RESTful API & Amazon API Gateway (English version)WordPress RESTful API & Amazon API Gateway (English version)
WordPress RESTful API & Amazon API Gateway (English version)
崇之 清水
 
知らなきゃ損なアップデートを振り返り(2020年分)- いにしえのサービスから勝手にチョイス
知らなきゃ損なアップデートを振り返り(2020年分)- いにしえのサービスから勝手にチョイス知らなきゃ損なアップデートを振り返り(2020年分)- いにしえのサービスから勝手にチョイス
知らなきゃ損なアップデートを振り返り(2020年分)- いにしえのサービスから勝手にチョイス
崇之 清水
 
マイクロサービスを AWS サーバレス&コンテナで実装する方法
マイクロサービスを AWS サーバレス&コンテナで実装する方法マイクロサービスを AWS サーバレス&コンテナで実装する方法
マイクロサービスを AWS サーバレス&コンテナで実装する方法
崇之 清水
 
RESTful API を Chalice で紐解く 〜 Python Serverless Microframework for AWS 〜
RESTful API を Chalice で紐解く 〜 Python Serverless Microframework for AWS 〜RESTful API を Chalice で紐解く 〜 Python Serverless Microframework for AWS 〜
RESTful API を Chalice で紐解く 〜 Python Serverless Microframework for AWS 〜
崇之 清水
 
クラウドを活用したセンシング/モニタリングなどデータ分析の実現
クラウドを活用したセンシング/モニタリングなどデータ分析の実現クラウドを活用したセンシング/モニタリングなどデータ分析の実現
クラウドを活用したセンシング/モニタリングなどデータ分析の実現
崇之 清水
 
AWS 主要なサービスアップデート 6/3-11/28
AWS 主要なサービスアップデート 6/3-11/28AWS 主要なサービスアップデート 6/3-11/28
AWS 主要なサービスアップデート 6/3-11/28
崇之 清水
 
5分でサーバーレスの環境構築から本番デプロイまでやったろやないか! - Serverless Meetup Osaka #4 LT
5分でサーバーレスの環境構築から本番デプロイまでやったろやないか! - Serverless Meetup Osaka #4 LT5分でサーバーレスの環境構築から本番デプロイまでやったろやないか! - Serverless Meetup Osaka #4 LT
5分でサーバーレスの環境構築から本番デプロイまでやったろやないか! - Serverless Meetup Osaka #4 LT
崇之 清水
 
サーバレスアプリケーションの入門と実践 - AWS Cloud Roadshow 2017 Osaka
サーバレスアプリケーションの入門と実践 - AWS Cloud Roadshow 2017 Osakaサーバレスアプリケーションの入門と実践 - AWS Cloud Roadshow 2017 Osaka
サーバレスアプリケーションの入門と実践 - AWS Cloud Roadshow 2017 Osaka
崇之 清水
 
AWS における サーバーレスの基礎からチューニングまで
AWS における サーバーレスの基礎からチューニングまでAWS における サーバーレスの基礎からチューニングまで
AWS における サーバーレスの基礎からチューニングまで
崇之 清水
 
データ分析 on AWS
データ分析 on AWSデータ分析 on AWS
データ分析 on AWS
崇之 清水
 
日本語でおk AI スピーカーを作ってみた
日本語でおk AI スピーカーを作ってみた日本語でおk AI スピーカーを作ってみた
日本語でおk AI スピーカーを作ってみた
崇之 清水
 
Amazon Web Services (AWS) のご紹介
Amazon Web Services (AWS) のご紹介Amazon Web Services (AWS) のご紹介
Amazon Web Services (AWS) のご紹介
崇之 清水
 
Amazon AI のスゴいデモ(仮) - Serverless Meetup Osaka
Amazon AI のスゴいデモ(仮) - Serverless Meetup OsakaAmazon AI のスゴいデモ(仮) - Serverless Meetup Osaka
Amazon AI のスゴいデモ(仮) - Serverless Meetup Osaka
崇之 清水
 
Amazon Pinpoint - re:Invent Serverless Follow Up - 20161207
Amazon Pinpoint - re:Invent Serverless Follow Up - 20161207Amazon Pinpoint - re:Invent Serverless Follow Up - 20161207
Amazon Pinpoint - re:Invent Serverless Follow Up - 20161207
崇之 清水
 
AWS SDK for PHP のインストールから 始めるクラウドマスターへの道 〜 Promise による非同期オペレーション 〜
AWS SDK for PHP のインストールから 始めるクラウドマスターへの道 〜 Promise による非同期オペレーション 〜 AWS SDK for PHP のインストールから 始めるクラウドマスターへの道 〜 Promise による非同期オペレーション 〜
AWS SDK for PHP のインストールから 始めるクラウドマスターへの道 〜 Promise による非同期オペレーション 〜
崇之 清水
 
WordPress RESTful API & Amazon API Gateway - WordCamp Kansai 2016
WordPress RESTful API & Amazon API Gateway - WordCamp Kansai 2016WordPress RESTful API & Amazon API Gateway - WordCamp Kansai 2016
WordPress RESTful API & Amazon API Gateway - WordCamp Kansai 2016
崇之 清水
 
Amazon API Gateway を活用したゲームサーバー構築
Amazon API Gateway を活用したゲームサーバー構築Amazon API Gateway を活用したゲームサーバー構築
Amazon API Gateway を活用したゲームサーバー構築
崇之 清水
 
関西スタートアップAWS勉強会 スタートアップ最新事例
関西スタートアップAWS勉強会 スタートアップ最新事例関西スタートアップAWS勉強会 スタートアップ最新事例
関西スタートアップAWS勉強会 スタートアップ最新事例
崇之 清水
 
スタートアップ向け構成例とAWS活用事例(福岡市スタートアップカフェ)
スタートアップ向け構成例とAWS活用事例(福岡市スタートアップカフェ)スタートアップ向け構成例とAWS活用事例(福岡市スタートアップカフェ)
スタートアップ向け構成例とAWS活用事例(福岡市スタートアップカフェ)
崇之 清水
 
Amazon Aurora の活用 - Developers.IO in OSAKA
Amazon Aurora の活用 - Developers.IO in OSAKAAmazon Aurora の活用 - Developers.IO in OSAKA
Amazon Aurora の活用 - Developers.IO in OSAKA
崇之 清水
 

More from 崇之 清水 (20)

WordPress RESTful API & Amazon API Gateway (English version)
WordPress RESTful API & Amazon API Gateway (English version)WordPress RESTful API & Amazon API Gateway (English version)
WordPress RESTful API & Amazon API Gateway (English version)
 
知らなきゃ損なアップデートを振り返り(2020年分)- いにしえのサービスから勝手にチョイス
知らなきゃ損なアップデートを振り返り(2020年分)- いにしえのサービスから勝手にチョイス知らなきゃ損なアップデートを振り返り(2020年分)- いにしえのサービスから勝手にチョイス
知らなきゃ損なアップデートを振り返り(2020年分)- いにしえのサービスから勝手にチョイス
 
マイクロサービスを AWS サーバレス&コンテナで実装する方法
マイクロサービスを AWS サーバレス&コンテナで実装する方法マイクロサービスを AWS サーバレス&コンテナで実装する方法
マイクロサービスを AWS サーバレス&コンテナで実装する方法
 
RESTful API を Chalice で紐解く 〜 Python Serverless Microframework for AWS 〜
RESTful API を Chalice で紐解く 〜 Python Serverless Microframework for AWS 〜RESTful API を Chalice で紐解く 〜 Python Serverless Microframework for AWS 〜
RESTful API を Chalice で紐解く 〜 Python Serverless Microframework for AWS 〜
 
クラウドを活用したセンシング/モニタリングなどデータ分析の実現
クラウドを活用したセンシング/モニタリングなどデータ分析の実現クラウドを活用したセンシング/モニタリングなどデータ分析の実現
クラウドを活用したセンシング/モニタリングなどデータ分析の実現
 
AWS 主要なサービスアップデート 6/3-11/28
AWS 主要なサービスアップデート 6/3-11/28AWS 主要なサービスアップデート 6/3-11/28
AWS 主要なサービスアップデート 6/3-11/28
 
5分でサーバーレスの環境構築から本番デプロイまでやったろやないか! - Serverless Meetup Osaka #4 LT
5分でサーバーレスの環境構築から本番デプロイまでやったろやないか! - Serverless Meetup Osaka #4 LT5分でサーバーレスの環境構築から本番デプロイまでやったろやないか! - Serverless Meetup Osaka #4 LT
5分でサーバーレスの環境構築から本番デプロイまでやったろやないか! - Serverless Meetup Osaka #4 LT
 
サーバレスアプリケーションの入門と実践 - AWS Cloud Roadshow 2017 Osaka
サーバレスアプリケーションの入門と実践 - AWS Cloud Roadshow 2017 Osakaサーバレスアプリケーションの入門と実践 - AWS Cloud Roadshow 2017 Osaka
サーバレスアプリケーションの入門と実践 - AWS Cloud Roadshow 2017 Osaka
 
AWS における サーバーレスの基礎からチューニングまで
AWS における サーバーレスの基礎からチューニングまでAWS における サーバーレスの基礎からチューニングまで
AWS における サーバーレスの基礎からチューニングまで
 
データ分析 on AWS
データ分析 on AWSデータ分析 on AWS
データ分析 on AWS
 
日本語でおk AI スピーカーを作ってみた
日本語でおk AI スピーカーを作ってみた日本語でおk AI スピーカーを作ってみた
日本語でおk AI スピーカーを作ってみた
 
Amazon Web Services (AWS) のご紹介
Amazon Web Services (AWS) のご紹介Amazon Web Services (AWS) のご紹介
Amazon Web Services (AWS) のご紹介
 
Amazon AI のスゴいデモ(仮) - Serverless Meetup Osaka
Amazon AI のスゴいデモ(仮) - Serverless Meetup OsakaAmazon AI のスゴいデモ(仮) - Serverless Meetup Osaka
Amazon AI のスゴいデモ(仮) - Serverless Meetup Osaka
 
Amazon Pinpoint - re:Invent Serverless Follow Up - 20161207
Amazon Pinpoint - re:Invent Serverless Follow Up - 20161207Amazon Pinpoint - re:Invent Serverless Follow Up - 20161207
Amazon Pinpoint - re:Invent Serverless Follow Up - 20161207
 
AWS SDK for PHP のインストールから 始めるクラウドマスターへの道 〜 Promise による非同期オペレーション 〜
AWS SDK for PHP のインストールから 始めるクラウドマスターへの道 〜 Promise による非同期オペレーション 〜 AWS SDK for PHP のインストールから 始めるクラウドマスターへの道 〜 Promise による非同期オペレーション 〜
AWS SDK for PHP のインストールから 始めるクラウドマスターへの道 〜 Promise による非同期オペレーション 〜
 
WordPress RESTful API & Amazon API Gateway - WordCamp Kansai 2016
WordPress RESTful API & Amazon API Gateway - WordCamp Kansai 2016WordPress RESTful API & Amazon API Gateway - WordCamp Kansai 2016
WordPress RESTful API & Amazon API Gateway - WordCamp Kansai 2016
 
Amazon API Gateway を活用したゲームサーバー構築
Amazon API Gateway を活用したゲームサーバー構築Amazon API Gateway を活用したゲームサーバー構築
Amazon API Gateway を活用したゲームサーバー構築
 
関西スタートアップAWS勉強会 スタートアップ最新事例
関西スタートアップAWS勉強会 スタートアップ最新事例関西スタートアップAWS勉強会 スタートアップ最新事例
関西スタートアップAWS勉強会 スタートアップ最新事例
 
スタートアップ向け構成例とAWS活用事例(福岡市スタートアップカフェ)
スタートアップ向け構成例とAWS活用事例(福岡市スタートアップカフェ)スタートアップ向け構成例とAWS活用事例(福岡市スタートアップカフェ)
スタートアップ向け構成例とAWS活用事例(福岡市スタートアップカフェ)
 
Amazon Aurora の活用 - Developers.IO in OSAKA
Amazon Aurora の活用 - Developers.IO in OSAKAAmazon Aurora の活用 - Developers.IO in OSAKA
Amazon Aurora の活用 - Developers.IO in OSAKA
 

Recently uploaded

能動的サイバー防御の時代へ - GPTsから垣間見えた私達と未来のAIについて
能動的サイバー防御の時代へ - GPTsから垣間見えた私達と未来のAIについて能動的サイバー防御の時代へ - GPTsから垣間見えた私達と未来のAIについて
能動的サイバー防御の時代へ - GPTsから垣間見えた私達と未来のAIについて
Tetsuya Nihonmatsu
 
「福利厚生をコストから投資へ」AIで社員1人ひとりに最適な支援を届ける 全く新しいカフェテリアプラン
「福利厚生をコストから投資へ」AIで社員1人ひとりに最適な支援を届ける 全く新しいカフェテリアプラン「福利厚生をコストから投資へ」AIで社員1人ひとりに最適な支援を届ける 全く新しいカフェテリアプラン
「福利厚生をコストから投資へ」AIで社員1人ひとりに最適な支援を届ける 全く新しいカフェテリアプラン
shogotaguchi
 
第61回CV勉強会「CVPR2024読み会」(前編)発表資料:State Space Models for Event Cameras
第61回CV勉強会「CVPR2024読み会」(前編)発表資料:State Space Models for Event Cameras第61回CV勉強会「CVPR2024読み会」(前編)発表資料:State Space Models for Event Cameras
第61回CV勉強会「CVPR2024読み会」(前編)発表資料:State Space Models for Event Cameras
Takuya Minagawa
 
MOSHI: 革新的な音声AI QAIが開発した次世代のコミュニケーションツール
MOSHI: 革新的な音声AI QAIが開発した次世代のコミュニケーションツールMOSHI: 革新的な音声AI QAIが開発した次世代のコミュニケーションツール
MOSHI: 革新的な音声AI QAIが開発した次世代のコミュニケーションツール
TsuyoshiSaito7
 
Kyndryl Developer Services のご紹介 2024年7月
Kyndryl Developer Services のご紹介  2024年7月Kyndryl Developer Services のご紹介  2024年7月
Kyndryl Developer Services のご紹介 2024年7月
Takayuki Nakayama
 
【AI論文解説】LLMの事前学習をvisionに適用する手法Autoregressive Image Models
【AI論文解説】LLMの事前学習をvisionに適用する手法Autoregressive Image Models【AI論文解説】LLMの事前学習をvisionに適用する手法Autoregressive Image Models
【AI論文解説】LLMの事前学習をvisionに適用する手法Autoregressive Image Models
Sony - Neural Network Libraries
 
MySQLの文字コードと照合順序について 2024/07/05の勉強会で発表されたものです。
MySQLの文字コードと照合順序について 2024/07/05の勉強会で発表されたものです。MySQLの文字コードと照合順序について 2024/07/05の勉強会で発表されたものです。
MySQLの文字コードと照合順序について 2024/07/05の勉強会で発表されたものです。
iPride Co., Ltd.
 
「スマートエスイー」におけるスマートシステム&サービスおよびDX推進人材の産学連携育成ならびに参照モデルに基づく育成プログラム分析
「スマートエスイー」におけるスマートシステム&サービスおよびDX推進人材の産学連携育成ならびに参照モデルに基づく育成プログラム分析「スマートエスイー」におけるスマートシステム&サービスおよびDX推進人材の産学連携育成ならびに参照モデルに基づく育成プログラム分析
「スマートエスイー」におけるスマートシステム&サービスおよびDX推進人材の産学連携育成ならびに参照モデルに基づく育成プログラム分析
Hironori Washizaki
 
2024/07/04 Blazor+ローコードで実現する.NET資産のモダナイズ
2024/07/04 Blazor+ローコードで実現する.NET資産のモダナイズ2024/07/04 Blazor+ローコードで実現する.NET資産のモダナイズ
2024/07/04 Blazor+ローコードで実現する.NET資産のモダナイズ
Tatsuya Ishikawa
 
【GPT4-o越えのリアルタイム会話AI】kyutai labsのMoshiデモ動画を解説
【GPT4-o越えのリアルタイム会話AI】kyutai labsのMoshiデモ動画を解説【GPT4-o越えのリアルタイム会話AI】kyutai labsのMoshiデモ動画を解説
【GPT4-o越えのリアルタイム会話AI】kyutai labsのMoshiデモ動画を解説
TsuyoshiSaito7
 
Matsuo-Iwasawa lab. Research Unit Introduction
Matsuo-Iwasawa lab. Research Unit IntroductionMatsuo-Iwasawa lab. Research Unit Introduction
Matsuo-Iwasawa lab. Research Unit Introduction
Matsuo Lab
 

Recently uploaded (11)

能動的サイバー防御の時代へ - GPTsから垣間見えた私達と未来のAIについて
能動的サイバー防御の時代へ - GPTsから垣間見えた私達と未来のAIについて能動的サイバー防御の時代へ - GPTsから垣間見えた私達と未来のAIについて
能動的サイバー防御の時代へ - GPTsから垣間見えた私達と未来のAIについて
 
「福利厚生をコストから投資へ」AIで社員1人ひとりに最適な支援を届ける 全く新しいカフェテリアプラン
「福利厚生をコストから投資へ」AIで社員1人ひとりに最適な支援を届ける 全く新しいカフェテリアプラン「福利厚生をコストから投資へ」AIで社員1人ひとりに最適な支援を届ける 全く新しいカフェテリアプラン
「福利厚生をコストから投資へ」AIで社員1人ひとりに最適な支援を届ける 全く新しいカフェテリアプラン
 
第61回CV勉強会「CVPR2024読み会」(前編)発表資料:State Space Models for Event Cameras
第61回CV勉強会「CVPR2024読み会」(前編)発表資料:State Space Models for Event Cameras第61回CV勉強会「CVPR2024読み会」(前編)発表資料:State Space Models for Event Cameras
第61回CV勉強会「CVPR2024読み会」(前編)発表資料:State Space Models for Event Cameras
 
MOSHI: 革新的な音声AI QAIが開発した次世代のコミュニケーションツール
MOSHI: 革新的な音声AI QAIが開発した次世代のコミュニケーションツールMOSHI: 革新的な音声AI QAIが開発した次世代のコミュニケーションツール
MOSHI: 革新的な音声AI QAIが開発した次世代のコミュニケーションツール
 
Kyndryl Developer Services のご紹介 2024年7月
Kyndryl Developer Services のご紹介  2024年7月Kyndryl Developer Services のご紹介  2024年7月
Kyndryl Developer Services のご紹介 2024年7月
 
【AI論文解説】LLMの事前学習をvisionに適用する手法Autoregressive Image Models
【AI論文解説】LLMの事前学習をvisionに適用する手法Autoregressive Image Models【AI論文解説】LLMの事前学習をvisionに適用する手法Autoregressive Image Models
【AI論文解説】LLMの事前学習をvisionに適用する手法Autoregressive Image Models
 
MySQLの文字コードと照合順序について 2024/07/05の勉強会で発表されたものです。
MySQLの文字コードと照合順序について 2024/07/05の勉強会で発表されたものです。MySQLの文字コードと照合順序について 2024/07/05の勉強会で発表されたものです。
MySQLの文字コードと照合順序について 2024/07/05の勉強会で発表されたものです。
 
「スマートエスイー」におけるスマートシステム&サービスおよびDX推進人材の産学連携育成ならびに参照モデルに基づく育成プログラム分析
「スマートエスイー」におけるスマートシステム&サービスおよびDX推進人材の産学連携育成ならびに参照モデルに基づく育成プログラム分析「スマートエスイー」におけるスマートシステム&サービスおよびDX推進人材の産学連携育成ならびに参照モデルに基づく育成プログラム分析
「スマートエスイー」におけるスマートシステム&サービスおよびDX推進人材の産学連携育成ならびに参照モデルに基づく育成プログラム分析
 
2024/07/04 Blazor+ローコードで実現する.NET資産のモダナイズ
2024/07/04 Blazor+ローコードで実現する.NET資産のモダナイズ2024/07/04 Blazor+ローコードで実現する.NET資産のモダナイズ
2024/07/04 Blazor+ローコードで実現する.NET資産のモダナイズ
 
【GPT4-o越えのリアルタイム会話AI】kyutai labsのMoshiデモ動画を解説
【GPT4-o越えのリアルタイム会話AI】kyutai labsのMoshiデモ動画を解説【GPT4-o越えのリアルタイム会話AI】kyutai labsのMoshiデモ動画を解説
【GPT4-o越えのリアルタイム会話AI】kyutai labsのMoshiデモ動画を解説
 
Matsuo-Iwasawa lab. Research Unit Introduction
Matsuo-Iwasawa lab. Research Unit IntroductionMatsuo-Iwasawa lab. Research Unit Introduction
Matsuo-Iwasawa lab. Research Unit Introduction
 

Amazon DynamoDB(初心者向け 超速マスター編)JAWSUG大阪

  • 1. しみず @shimy_net 2013 / 6 / 22 Amazon DynamoDB 初心者向け 超速マスター編
  • 4. やること □ 概説 □ Management Console から利用する ・Table の作成 ・Throughput の変更 ・Item の登録、取得、更新 □ Eclipse から利用する(Java) ・デモンストレーション □ 手乗りDynamoDB ・デモンストレーション
  • 5. Amazon DynamoDB とは □ 完全マネージド型の NoSQL データベースサービス ・管理不要で高い拡張性を提供 ・ハードウェア調達、インストール、設定、レプリケーション、  ソフトウェア修正プログラムの適用、クラスタ化 が不要 ・開発者はAPI経由で利用するだけ(SDK) □ 高い拡張性 ・データベース容量は自動的に拡張 ・パフォーマンスを指定できる   ・利用者がダイヤルを設定するようにパフォーマンスを設定   ・秒間あたりの、読み込み/書き込みスループットを指定
  • 6. Amazon DynamoDB とは □ データへの高速なアクセス ・AWSクラウドの特性を活用  ・十分な数のハードウェアに分散し、安定した高いパフォーマンスを提供  ・SSDを利用して高速アクセス ・データベースが大規模になっても、数ミリ秒のアクセス速度を期待 □ 高い信頼性 ・同期レプリケーションアーキテクチャ   ・データを複数のAZ(データセンター)にコピー   ・データセンターレベルの障害からもデータを守る
  • 7. Amazon DynamoDB とは □ 整合性モデル  ・読み込みに対して結果的に整合性のある読み込みを設定するか   強い整合性を設定するかを指定できる □ Local Secondary Indexes  ・テーブル毎に最大5つのローカルセカンダリインデックスをサポート  ・テーブルの属性の一部もしくは全てを射影できる □ Amazon EMR 連携  ・S3 への Export / Import、Query、Join
  • 8. Data Model □ Tables Items Attributes DynamoDB Table1 Table2 Table N ・・・ Item1 Item2 Item3 Item N ・・・ { Id = 101 ProductName = "Book 101 Title" ISBN = "111-1111111111" Authors = [ "Author 1", "Author 2" ] Price = -2 Dimensions = "8.5 x 11.0 x 0.5" PageCount = 500 InPublication = 1 ProductCategory = "Book" } Attribute { Id = 201 ProductName = "18-Bicycle 201" Description = "201 description" BicycleType = "Road" Brand = "Brand-Company A" Price = 100 Gender = "M" Color = [ "Red", "Black" ] ProductCategory = "Bike" } Item1 Item2 利用可能な型 ・Scalar data types   Number, String, Binary ・Multi-valued types   Number Set, String Set, Binary Set 64KBまで スキーマレス
  • 9. Primary Key □ Hash Type Primary Key  ・1つの Attribute が Primary Key  ・DynamoDB は Primary Key に対して Hash Index を作成   □ Hash and Range Type Primary Key  ・2つの Attribute が Primary Key      1: Hash Primary Key      2: Range Primary Key  ・DynamoDB は Hash Primary Key に対して Hash Index を作成  ・DynamoDB は Range Primary Key に対して整列した Range Index を作成 Attribute 1 (Hash Primary Key) Attribute 2 Attribute 3 Attribute 1 (Hash Primary Key) Attribute 2 (Range Primary Key) Attribute 3 Map<HashKey,Object> Map<HashKey, SortedMap<RangeKey,Object>>
  • 10. Primary Key(具体例) □ サンプルデータ Table Name Primary Key Type Hash Attribute Name Range Attribute Name Forum ( Name, ... ) Hash Attribute Name: Name - Thread (ForumName, Subject, ... ) Hash and Range Attribute Name: ForumName Attribute Name: Subject Reply ( Id, ReplyDateTime, ... ) Hash and Range Attribute Name: Id Attribute Name: ReplyDateTime Amazon DynamoDB Amazon DynamoDB#DynamoDB Thread 1 2011-12-11 00:40:57 Amazon DynamoDB DynamoDB Thread1 Amazon S3 Amazon DynamoDB DynamoDB Thread2 Amazon S3 S3 Thread2 Amazon DynamoDB#DynamoDB Thread 1 2011-12-18 00:40:57 Amazon DynamoDB#DynamoDB Thread 1 2011-12-25 00:40:57 Amazon DynamoDB#DynamoDB Thread 2 2011-12-25 00:40:57 Amazon DynamoDB#DynamoDB Thread 2 2012-01-03 00:40:57 Forum Thread Reply Hash Primary key Range Primary key Hash Primary key Range Primary key Hash Primary key
  • 11. Primary Key(具体例) □ Forum Name (Primary Key) Other Attributes "Amazon DynamoDB" { Category="Amazon Web Services" Threads=3 Messages=4 Views=1000 LastPostBy="User A" LastPostDateTime= "2012-01-03T00:40:57.165Z" } "Amazon S3" { Category="Amazon Web Services" Threads=1 }
  • 12. Primary Key(具体例) □ Thread Name (Primary Key) Other Attributes ForumName = "Amazon DynamoDB" Subject = "DynamoDB Thread 1" { Message = "DynamoDB thread 1 message text" LastPostedBy = "User A" Views = 0 Replies = 0 Answered = 0 Tags = [ "index", "primarykey", "table" ] LastPostDateTime = "2012-01-03T00:40:57.165Z" } ForumName = "Amazon DynamoDB" Subject = "DynamoDB Thread 2 { Message = "DynamoDB thread 2 message text" LastPostedBy = "User A" Views = 0 Replies = 0 Answered = 0 Tags = [ "index", "primarykey", "rangekey" ] LastPostDateTime = "2012-01-03T00:40:57.165Z" } ForumName = "Amazon S3" Subject = "S3 Thread 1" { Message = "S3 Thread 1 message text" LastPostedBy = "User A" Views = 0 Replies = 0 Answered = 0 Tags = [ "largeobject", "multipart upload" ] LastPostDateTime = "2012-01-03T00:40:57.165Z" }
  • 13. Primary Key(具体例) □ Reply Name (Primary Key) Other Attributes Id = "Amazon DynamoDB#DynamoDB Thread 1" ReplyDateTime = "2011-12-11T00:40:57.165Z { Message = "DynamoDB Thread 1 Reply 1 text" PostedBy = "User A" } Id = "Amazon DynamoDB#DynamoDB Thread 1" ReplyDateTime = "2011-12-18T00:40:57.165Z { Message = "DynamoDB Thread 1 Reply 1 text" PostedBy = "User A" } Id = "Amazon DynamoDB#DynamoDB Thread 1" ReplyDateTime = "2011-12-25T00:40:57.165Z { Message = "DynamoDB Thread 1 Reply 3 text" PostedBy = "User B" } Id = "Amazon DynamoDB#DynamoDB Thread 2" ReplyDateTime = "2011-12-25T00:40:57.165Z { Message = "DynamoDB Thread 2 Reply 1 text" PostedBy = "User A" } Id = "Amazon DynamoDB#DynamoDB Thread 2" ReplyDateTime = "2012-01-03T00:40:57.165Z { Message = "DynamoDB Thread 2 Reply 2" PostedBy = "User A" }
  • 14. Local Secondary Indexes second=4 id=3 y=xx(Projected) Primary key Secondary Index □ Local Secondary Indexes とは  ・テーブル毎に最大5つのローカルセカンダリインデックスをサポート  ・テーブルの属性の一部もしくは全てを射影できる ・・・ id=3 x=xx y=xx z=xx id=3 x=xx y=xx z=xx
  • 15. Local Secondary Indexes □ LSI がないとき □ LSI があるとき Table Item1 Item2 Item N プログラム loop (items) {   //処理 } Item2 ・・・ Item9 必要な Item を抽出 するフィルタが必要 Table Item2 Item9 Query Query
  • 16. Provisioned Throughput □ Unit とは 書き込みの場合 1 ユニット = 1KB の Item に対して 1 秒あたり 1 回の書き込みできる 読み込みの場合 1 ユニット = 4KB のItemに対して強い整合性のある読み込みを 1 秒あたり 1 回 できる ※結果整合性のある読み込みは 1 秒あたり 2 回できる
  • 17. 整合性モデル □ 結果的に整合性のある読み込み(デフォルト) ‒ 結果的に整合性のあるオプションを選択すると、読み込みスループットが最大限 に向上します。ただし、結果的に整合性のある読み込みには、最新の書き込み結 果が反映されない可能性があります。データの全コピーの整合は通常 1 秒以内に 行われます。短時間後に読み込みを繰り返すことによって、更新されたデータが返 されます。 □ 強い整合性の読み込み ‒ 結果的に整合性のある読み込みに加えて、Amazon DynamoDB は、お客様のア プリケーションまたはお客様のアプリケーションの要素が必要とする場合に強い 整合性のある読み込みをリクエストするための、柔軟性とコントロールを提供し ます。強い整合性のある読み込みが返す結果には、読み込みの前に適切な応答を 受け取ったすべての書き込みが反映されています。
  • 18. API CREATETABLE ‒ テーブルを作成し、データアクセスに使用するプライマリインデックスを指定します。 UPDATETABLE ‒ 指定されたテーブルについて、 プロビジョニングされたスループット値を更新します。 DELETETABLE ‒ テーブルを削除します。 DESCRIBETABLES ‒ テーブルサイズ、ステータス、およびインデックス情報を返します。 LISTTABLES ‒ 現在のアカウントおよびエンドポイントに関連付けられたすべてのテーブルのリストを返します。 PUTITEM ‒ 新しい項目を作成するか、古い項目を(すべての属性を含め)新しい項目で置き換えます。指定したテーブルに同じプライ マリキーを持つ項目が存在する場合、既存の項目は新しい項目に完全に置き換えられます。条件付き演算子を使用して、所定 の条件に一致する属性値を持つ項目のみを置き換えたり、その項目が存在しない場合にのみ新しい項目を挿入したりすること もできます。 BATCHWRITEITEM ‒ 1回のトランザクションとしてではなく、1回のリクエストで、複数のテーブル間で複数の項目を挿入、置換、削除します。 PUT または DELETE で最大25項目のバッチをサポートし、合計リクエストサイズは最大1 MB です。 UPDATEITEM ‒ 既存の項目の属性を編集します。条件付き演算子を使用して、項目の属性値が所定の条件に一致する場合に のみ更新を実行することもできます。 DELETEITEM ‒ プライマリキーを使用してテーブルから1つの項目を削除します。条件付き演算子を使用して、項目の属性値が所定の条件 に一致する場合にのみ項目を削除することもできます。
  • 19. API GETITEM ‒ GETITEM 演算は、プライマリキーに一致する項目の属性セットを返します。GETITEM 演算は、デフォルトでは、結果的 に整合性のある読み込みを提供します。ご利用のアプリケーションで結果的に整合性のある読み込みを使用できない場合は、 CONSISTENTREAD を使用します。 BATCHGETITEMS ‒ BATCHGETITEMS 演算は、複数の項目の属性を複数のテーブルから、それぞれのプライマリキーを使用して返します。1 回の応答のサイズ制限は 1 MB で、最大 100 個の項目を返します。強い整合性と結果整合性の両方をサポートします。 QUERY ‒ テーブルのプライマリキーを使用して、または、セカンダリインデックスからセカンダリインデックスキーを使用して、1 つ以上の項目を取得します。範囲キー値またはセカンダリインデックスキーに対して比較演算子を使用することで、クエリの 範囲を絞り込むことができます。強い整合性と結果整合性の両方をサポートします。応答1つあたりのサイズ上限は1 MBです。 SCAN ‒ テーブルに対して完全スキャンを実行し、1つ以上の項目と属性を取得します。返される項目は、1つ以上の属性に対して指 定したフィルタで制限されている場合があります。したがって、この API は、テーブルのプライマリキーではない属性に対し て一時的なクエリを有効にするときに使用できます。ただし、これはインデックスを使用しない完全テーブルスキャンなので、 予測可能なパフォーマンスが必要なアプリケーションクエリには使用しないでください。スキャン API リクエストの結果 セットは結果的に整合性があります。スキャン API をインジケータと考えることができます。あるスキャン API リクエスト のスキャン項目の合計サイズが 1 MB の上限を超えると、そのリクエストは終了し、取得された結果は(以降のオペレーショ ンでスキャンを続行できるように)LASTEVALUATEDKEY と共に返されます。 デフォルトでは、スキャンオペレーションはデータを順次処理します。テーブルのスキャンを並列で行うことも可能です。ス キャンオペレーションでは、そのスキャンをいくつのセグメントに分割するかを指定し、複数のセグメントを同時にスキャン することができます。並列処理を使用したテーブルのスキャンの詳細については、並列スキャンのドキュメントを参照してく ださい。
  • 21. 開発・管理ツール □ AWS Management Console(Webブラウザ) □ AWS SDK for XXXX
  • 22. やること □ 概説 □ Management Console から利用する ・Table の作成 ・Throughput の変更 ・Item の登録、取得、更新 □ Eclipse から利用する(Java) ・デモンストレーション □ 手乗りDynamoDB ・デモンストレーション
  • 23. Management Console から利用 ① ここからスタート ② DynamoDBを選択
  • 24. Table の作成 ③ Create Table をクリック
  • 26. Table の作成 ⑥ Local Secondary Index を指定
  • 31. Throughput の変更 ① Modify Throughput をクリック
  • 32. Throughput の変更 ② Throughput を変更 スループットを減らす作業は1日に4回まで ※グリニッジ標準時基準 1回の作業で最大2倍までスケール可能 ③ 完了
  • 33. Item の登録 ① Explore Table をクリック
  • 34. Item の登録 ② New Item をクリック
  • 36. Item の取得(Scan) ① Scan を選択 ② Go をクリック
  • 37. Item の取得(Scan) ③ Item Details をクリック Item 一覧が 表示される ④ Item 詳細が 表示される
  • 38. Item の取得(Query) ① Query を選択 ② Hash Key と Range Key で検索
  • 39. Item の更新 ① Edit Item をクリック ② Attribute を更新 ③ 完了
  • 40. やること □ 概説 □ Management Console から利用する ・Table の作成 ・Throughput の変更 ・Item の登録、取得、更新 □ Eclipse から利用する(Java) ・デモンストレーション □ 手乗りDynamoDB ・デモンストレーション