SlideShare a Scribd company logo
1 of 78
Download to read offline
re:G
ene

AWS  マイスターシリーズ  

rate

Amazon  DynamoDB
2013.10.02
アマゾン  データサービス  ジャパン株式会社
ソリューションアーキテクト  今井  雄太

© 2012 Amazon.com, Inc. and its affiliates. All rights reserved. May not be copied, modified or distributed in whole or in part without the express consent of Amazon.com, Inc.
アジェンダ
! NoSQLとRDB
! DynamoDBとは
! DynamoDBを使ってみる
!   ツールとエコシステム
!   When  to  use
!   まとめ

2
© 2012 Amazon.com, Inc. and its affiliates. All rights reserved. May not be copied, modified or distributed in whole or in part without the express consent of Amazon.com, Inc.
NoSQLとRDB

3
© 2012 Amazon.com, Inc. and its affiliates. All rights reserved. May not be copied, modified or distributed in whole or in part without the express consent of Amazon.com, Inc.
世の中はNoSQLブーム?

!
!
!
!

MongoDB
Riak
HBase
 Cassandra

!  Neo4j
! CounchDB
! DynamoDB

他にもたくさん

http://ja.wikipedia.org/wiki/NoSQL
4
© 2012 Amazon.com, Inc. and its affiliates. All rights reserved. May not be copied, modified or distributed in whole or in part without the express consent of Amazon.com, Inc.
NoSQL  vs  RDB

! NoSQL

•  BASE属性
•  ⼤大容量量データ
•  スケールしやすい
•  書き込みが速い
•  スキーマが柔軟

!  RDB

•  ACID属性
•  Atomicity
•  Consistency
•  Isolation
•  Durability
•  トランザクション
•  クエリがリッチ
•  ジョインも得意

5
© 2012 Amazon.com, Inc. and its affiliates. All rights reserved. May not be copied, modified or distributed in whole or in part without the express consent of Amazon.com, Inc.
BASE?

6
© 2012 Amazon.com, Inc. and its affiliates. All rights reserved. May not be copied, modified or distributed in whole or in part without the express consent of Amazon.com, Inc.
Basically  Availabl,  Soft  state,  
Eventually  consistent
!   RDBの提供するACID属性と対⽐比するためによく使われ
る
!   厳密な⼀一貫性やデータの即時反映などをあきらめる代わ
りに、スケーラビリティを取る。というような意味。
!   すべてのNoSQLが完全にBASEとは限らないが、⼀一貫性
やトランザクションなど、従来のACIDなRDBと⽐比べて、
諦めている要件がある。

7
© 2012 Amazon.com, Inc. and its affiliates. All rights reserved. May not be copied, modified or distributed in whole or in part without the express consent of Amazon.com, Inc.
NoSQL、裏裏を返すと・・

• ⼀一貫性を保持するのは苦⼿手
• トランザクション苦⼿手
• クエリはシンプル
• 運⽤用が⼤大変
8
© 2012 Amazon.com, Inc. and its affiliates. All rights reserved. May not be copied, modified or distributed in whole or in part without the express consent of Amazon.com, Inc.
NoSQL書き込み速いと⾔言っても・・・

MySQLでも1,000QPSくらい
普通に出ます。
NoSQLの真価は、データ量量が
巨⼤大になってきても性能が落落
ちないところ。
9
© 2012 Amazon.com, Inc. and its affiliates. All rights reserved. May not be copied, modified or distributed in whole or in part without the express consent of Amazon.com, Inc.
RDBでやってきたことをそ
のままできるわけではない
ことに注意してNoSQLを使
いましょう!

10
© 2012 Amazon.com, Inc. and its affiliates. All rights reserved. May not be copied, modified or distributed in whole or in part without the express consent of Amazon.com, Inc.
DynamoDBとは

11
© 2012 Amazon.com, Inc. and its affiliates. All rights reserved. May not be copied, modified or distributed in whole or in part without the express consent of Amazon.com, Inc.
DynamoDBとは
!   ・NoSQL  as  a  Service
!   ・超⾼高速・予測可能な⼀一貫したパフォーマンス
!   ・シームレスなスケーラビリティ、そして低コスト
運⽤用管理理必要なし
低レイテンシ、SSD
プロビジョンスループット

無限に使えるストレージ
12
© 2012 Amazon.com, Inc. and its affiliates. All rights reserved. May not be copied, modified or distributed in whole or in part without the express consent of Amazon.com, Inc.
DynamoDBの特徴

!  管理理不不要で信頼性が⾼高い
!  プロビジョンスループット
!  ストレージの容量量制限がない

13
© 2012 Amazon.com, Inc. and its affiliates. All rights reserved. May not be copied, modified or distributed in whole or in part without the express consent of Amazon.com, Inc.
特⻑⾧長1:管理理不不要で信頼性が⾼高い
!   SPOFの存在しない構成
!   データは3箇所のAZに保存されるので信頼性が⾼高い
!   ストレージは必要に応じて⾃自動的にパーティショニング
される

クライアント

14
© 2012 Amazon.com, Inc. and its affiliates. All rights reserved. May not be copied, modified or distributed in whole or in part without the express consent of Amazon.com, Inc.
特⻑⾧長2:プロビジョンスループット
!   ReadとWrite、それぞれに対して必要な分だけのスルー
プットキャパシティをプロビジョンする(割り当てる)
ことができる
!   例例えば⼀一般的なReadヘビーなDBなら
•  Read  :  1,000
•  Write  :  100

!   ライトヘビーなDBなら
•  Read  :  500
•  Write  :  500

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

•  ただし、スケールダウンに関しては⽇日に4回までしかできない
ので注意

15
© 2012 Amazon.com, Inc. and its affiliates. All rights reserved. May not be copied, modified or distributed in whole or in part without the express consent of Amazon.com, Inc.
特⻑⾧長3:ストレージの容量量制限がない
!   使った分だけの従量量課⾦金金制のストレージ
!   データ容量量が増えてきたのでディスクを⾜足したり、ノー
ドを⾜足したりという作業が不不要

16
© 2012 Amazon.com, Inc. and its affiliates. All rights reserved. May not be copied, modified or distributed in whole or in part without the express consent of Amazon.com, Inc.
DynamoDBの料料⾦金金体系

!  プロビジョンスループットで決
まる時間料料⾦金金

•  Read/Writeそれぞれプロビジョンしたスループットによって時
間あたりの料料⾦金金がきまる
•  ⼤大規模に利利⽤用するのであればリザーブ度度による割引もあり

!  ストレージ利利⽤用量量

•  保存したデータ容量量によって決まる⽉月額利利⽤用料料⾦金金
•  計算はGBあたりの単価が適⽤用される  

実際の料料⾦金金については下記を参照
http://aws.amazon.com/jp/dynamodb/pricing/  
17
© 2012 Amazon.com, Inc. and its affiliates. All rights reserved. May not be copied, modified or distributed in whole or in part without the express consent of Amazon.com, Inc.
DynamoDBを使い始めるには

1.  テーブルのKeyやIndexを決める
2.  Read/Writeそれぞれのスループッ
トを決める

Thatʼ’s  it,  write  your  code!
18
© 2012 Amazon.com, Inc. and its affiliates. All rights reserved. May not be copied, modified or distributed in whole or in part without the express consent of Amazon.com, Inc.
DynamoDBを使ってみる

19
© 2012 Amazon.com, Inc. and its affiliates. All rights reserved. May not be copied, modified or distributed in whole or in part without the express consent of Amazon.com, Inc.
DynamoDBの構成要素
オペレーションはHTTP  APIで提供されている
Client  Side

SDK

HTTP API

Distributed Storage

Service  Side

API Servers

20
© 2012 Amazon.com, Inc. and its affiliates. All rights reserved. May not be copied, modified or distributed in whole or in part without the express consent of Amazon.com, Inc.
提供されているAPI
!
!
!
!
!
!

PutItem
UpdateItem
GetItem
DeleteItem
 Query
 Scan

!
!
!
!
!
!

BatchWriteItem
BatchGetItem
CreateTable
DescribeTable
UpdateTable
DeleteTable

21
© 2012 Amazon.com, Inc. and its affiliates. All rights reserved. May not be copied, modified or distributed in whole or in part without the express consent of Amazon.com, Inc.
提供されているAPI
!
!
!
!
!
!

PutItem
! BatchWriteItem
UpdateItem
! BatchGetItem
SDK経由で利利⽤用するのが楽。
GetItem
! CreateTable
もちろん、⾃自前実装も可能です。
DeleteItem
! DescribeTable
 Query
! UpdateTable
 Scan
! DeleteTable

22
© 2012 Amazon.com, Inc. and its affiliates. All rights reserved. May not be copied, modified or distributed in whole or in part without the express consent of Amazon.com, Inc.
実際によく使う操作
•  Get/Put/Update/Delete/BatchGet
•  Scan
•  テーブル総ナメする
•  Query
•  ハッシュ+レンジキーのみ

23
© 2012 Amazon.com, Inc. and its affiliates. All rights reserved. May not be copied, modified or distributed in whole or in part without the express consent of Amazon.com, Inc.
AWS  SDKs

!  各種⾔言語むけのオフィシャルSDKを利利⽤用

Java

Python

PHP

.NET

iOS

Ruby

nodeJS

Android

24
© 2012 Amazon.com, Inc. and its affiliates. All rights reserved. May not be copied, modified or distributed in whole or in part without the express consent of Amazon.com, Inc.
オフィシャルSDK以外にも
!   Perl

•  Net::Amazon::DynamoDB

! Erlang

•  wagerlabs/ddb

•  https://github.com/wagerlabs/ddb

!   Go

•  go-‐‑‒dynamodb

•  https://github.com/fabiokung/go-‐‑‒dynamodb

25
© 2012 Amazon.com, Inc. and its affiliates. All rights reserved. May not be copied, modified or distributed in whole or in part without the express consent of Amazon.com, Inc.
テーブル設計のための要素(1)
!   Table

•  Primary  Keyとして”Hash  key”もしくは”Hash  key  &  Range  
key”を選択する

!   プライマリキー:Hash  key

•  Hash  key単体でデータを⼀一意に識識別できるケースに使う

!   プライマリキー:Hash  key  &  Range  key

•  Hash  keyに該当する複数のデータからRange  keyで絞り込み検
索索ができる

!   Local  Secondary  Indexes

•  Range  key以外に絞り込み検索索のためのキーを持つことができ
る

26
© 2012 Amazon.com, Inc. and its affiliates. All rights reserved. May not be copied, modified or distributed in whole or in part without the express consent of Amazon.com, Inc.
テーブル設計のための要素(2)
!   Attributes

•  データの中⾝身。Hash  key,  Range  keyに該当するAttributes以
外は事前に定義する必要はない。また、レコード間でAttributes
が不不揃いであっても問題ない。

!   Attributesの型
• 
• 
• 
• 
• 
• 

String
Number
Binary
String  Set
Number  Set
Binary  Set

27
© 2012 Amazon.com, Inc. and its affiliates. All rights reserved. May not be copied, modified or distributed in whole or in part without the express consent of Amazon.com, Inc.
DynamoDBのデータモデル
テーブル

Hash keyまたはHash key & Range key

アイテム
プライマリキー

アトリビュート

28
© 2012 Amazon.com, Inc. and its affiliates. All rights reserved. May not be copied, modified or distributed in whole or in part without the express consent of Amazon.com, Inc.
DynamoDBのプライマリキー
•  ハッシュキー
•  シンプルなキーバリュー
•  ハッシュ値なので、ソートなし
•  ハッシュキー+レンジキー
•  コンポジットプライマリーキー
•  レンジキーはソートあり

29
© 2012 Amazon.com, Inc. and its affiliates. All rights reserved. May not be copied, modified or distributed in whole or in part without the express consent of Amazon.com, Inc.
サンプル(1)  商品カタログ
!   スキーマのイメージ

•  テーブル名はProducts
•  商品ID(ProductId)をHash  keyとするテーブル

ProductId
(Hash key)

ProductName Price

・・・

・・・

1

Pen

100

・・・

・・・

2

Pencil

50

・・・

・・・

3

Eraser

100

・・・

・・・

30
© 2012 Amazon.com, Inc. and its affiliates. All rights reserved. May not be copied, modified or distributed in whole or in part without the express consent of Amazon.com, Inc.
DynamoDBデータモデル
ハッシュキーのみの場合
アイテム
プライマリキー

ハッシュキー

アトリビュート
A1-‐‑‒1

31
© 2012 Amazon.com, Inc. and its affiliates. All rights reserved. May not be copied, modified or distributed in whole or in part without the express consent of Amazon.com, Inc.
サンプル(1)  商品カタログ
!   テーブルの作成

•  商品IDをHash  keyとするテーブル

•  Primary  KeyにHashを選択して、Hash  keyの名前と型を決め
る
32
© 2012 Amazon.com, Inc. and its affiliates. All rights reserved. May not be copied, modified or distributed in whole or in part without the express consent of Amazon.com, Inc.
サンプル(1)  商品カタログ
!   node.jsのSDKで触ってみる
•  データを投⼊入

var aws = require(‘aws-sdk’);
aws.config.loadFromPath(‘PATH/TO/CREDENTIAL’);
var dynamoDb = new aws.DynamoDB.Client();

33

dynamoDb.putItem(
{
TableName:"Products",
Item: {
ProductId : {N:"1"},
ProductName: {S:"Pen"},
Price: {N:"100"}
}
},
function(err,data){
if(err){ console.log(err); }else{
console.log(data);
}
}
);
© 2012 Amazon.com, Inc. and its affiliates. All rights reserved. May not be copied, modified or distributed in whole or in part without the express consent of Amazon.com, Inc.
サンプル(1)  商品カタログ
!   node.jsのSDKで触ってみる
•  データを1件取得する

dynamoDb.getItem(
{
TableName:"Products",
Key: {
ProductId : {N:"1"},
},
function(err,data){
if(err){ console.log(err); }else{
console.log(data);
}
}
);

34
© 2012 Amazon.com, Inc. and its affiliates. All rights reserved. May not be copied, modified or distributed in whole or in part without the express consent of Amazon.com, Inc.
サンプル(2)  ⾏行行動ログ
!   スキーマのイメージ

•  テーブル名はAudience
•  ユーザーID(AudienceId)をHash  key、TimestampをRange  
keyとするテーブル

AudienceId
(Hash key)

Action

Url

・・・

1

2013-10-01
00:01:01

Login

・・・

・・・

2

2013-10-01
00:02:02

Login

・・・

・・・

1

2013-10-01
00:21:00

Login

・・・

・・・

1

35

Timestamp
(Range key)

2013-10-01
00:42:00

ViewHoge

1

2013-10-01
00:56:22

PostHoge

© 2012 Amazon.com, Inc. and its affiliates. All rights reserved. May not be copied, modified or distributed in whole or in part without the express consent of Amazon.com, Inc.
DynamoDBデータモデル
!   ハッシュキー+レンジキーの場合

アイテム
プライマリキー
レンジキー1
レンジキー2

アトリビュート
A2-‐‑‒1

レンジキー3

ハッシュ
キーA

アトリビュート
A1-‐‑‒1

アトリビュート
A3-‐‑‒1

36
© 2012 Amazon.com, Inc. and its affiliates. All rights reserved. May not be copied, modified or distributed in whole or in part without the express consent of Amazon.com, Inc.
サンプル(2)  ⾏行行動ログ
!   テーブルの作成

37
© 2012 Amazon.com, Inc. and its affiliates. All rights reserved. May not be copied, modified or distributed in whole or in part without the express consent of Amazon.com, Inc.
サンプル(2)  ⾏行行動ログ
!   node.jsのSDKで触ってみる
•  データを投⼊入

var  data  =  new  Array(
        {  AudienceId:  {  N:"1"  },  Timestamp:  {  S:"2013-‐‑‒10-‐‑‒01  00:01:01"  },  Action:  {  S:"Login"  }  },
        {  AudienceId:  {  N:"2"  },  Timestamp:  {  S:"2013-‐‑‒10-‐‑‒01  00:02:02"  },  Action:  {  S:"Login"  }  },
        {  AudienceId:  {  N:"1"  },  Timestamp:  {  S:"2013-‐‑‒10-‐‑‒01  00:21:00"  },  Action:  {  S:"Login"  }  },
        {  AudienceId:  {  N:"1"  },  Timestamp:  {  S:"2013-‐‑‒10-‐‑‒01  00:42:00"  },  Action:  {  S:"ViewHoge"  }  },
        {  AudienceId:  {  N:"1"  },  Timestamp:  {  S:"2013-‐‑‒10-‐‑‒01  00:56:22"  },  Action:  {  S:"PostHoge"  }  }
);

38

for  (var  i  =0;  i  <  data.length;  i++){
        dynamoDb.putItem(
                {
                        TableName:"Audience",
                        Item:  data[i]
                },
                function(err,data){
                        if(err){
                                console.log(err);
                        }else{
                                console.log(data);
                        }
                }
        );
© 2012 Amazon.com, Inc. and its affiliates. All rights reserved. May not be copied, modified or distributed in whole or in part without the express consent of Amazon.com, Inc.
}
サンプル(2)  ⾏行行動ログ
!   node.jsのSDKで触ってみる

•  あるユーザーの10⽉月1⽇日  0時10分以降降の⾏行行動ログを取得する

39

dynamoDb.query(
        {
                TableName:"Audience",
                KeyConditions:  {
                        "AudienceId":  {
                                ComparisonOperator:"EQ",
                                AttributeValueList:[  {N:"1"}  ]
                        },
                        "Timestamp":  {
                                ComparisonOperator:"GT",
                                AttributeValueList:[  {S:"2013-‐‑‒10-‐‑‒01  00:10:00"}  ]
                        }
                }
        },
        function(err,data){
                if(err){
                        console.log(err);
                }else{
                        console.log(data);
                }
        }
);

© 2012 Amazon.com, Inc. and its affiliates. All rights reserved. May not be copied, modified or distributed in whole or in part without the express consent of Amazon.com, Inc.
サンプル(3)  LSI付き⾏行行動ログ
!   ユーザーのアクティビティログにLocal  Secondary  
Indexes(LSI)をつけてみる
AudienceId
(Hash key)

Action
Url
(Action-Index)

・・・

1

2013-10-01
00:01:01

Login

・・・

・・・

2

2013-10-01
00:02:02

Login

・・・

・・・

1

2013-10-01
00:21:00

Login

・・・

・・・

1

40

Timestamp
(Range key)

2013-10-01
00:42:00

ViewHoge

1

2013-10-01
00:56:22

PostHoge

© 2012 Amazon.com, Inc. and its affiliates. All rights reserved. May not be copied, modified or distributed in whole or in part without the express consent of Amazon.com, Inc.
Local  Secondary  Indexes(LSI)
•  Get/Put/Update/Delete/BatchGet
•  Scan
•  テーブル総ナメする
•  Query
•  ハッシュ+レンジキーのみ
この制限を取り除くのがLocal Secondary Index!
41
© 2012 Amazon.com, Inc. and its affiliates. All rights reserved. May not be copied, modified or distributed in whole or in part without the express consent of Amazon.com, Inc.
Local  Secondary  Indexes  (LSI)
!   任意のアトリビュートに張れるQuery⽤用Index
•  各テーブルに5つまで

Forumの投稿を保持するテーブルの例:

LSIを定義すればKeyで
ないアトリビュートに関し
てもQuery可能に
例:
 - Repliesが10件以上
 - 最後の投稿がXX以降
LSIなしのテーブルでは
QueryはRange Keyのみ
42

RepliesIndex
LastPostIndex

LSI

© 2012 Amazon.com, Inc. and its affiliates. All rights reserved. May not be copied, modified or distributed in whole or in part without the express consent of Amazon.com, Inc.
なんで”Local”  Secondary  Indexesなの?
!   ハッシュキーが⼀一致する範囲の中のSecondary  Indexで
あるため
àハッシュキーが異異なるアイテムを横断的にQueryすることは出
来ない  
RepliesIndex

RepliesIndexを使って1
Queryで取得可能なのは?
•  ForumNameがS3で
Repliesが9以上
•  任意のForumNameで
Repliesが9以上
à 3つハッシュキーがある
ので3 Query必要
43
© 2012 Amazon.com, Inc. and its affiliates. All rights reserved. May not be copied, modified or distributed in whole or in part without the express consent of Amazon.com, Inc.
LSIを設定した場合の実際
Threadテーブルの
LastPostDateTimeに
LSIを設定すると

44

LastPostIndex

対応するIndexテーブルが裏で
作成/管理される
•  指定したアトリビュートがレンジキー
•  元のテーブルのレンジキーがアトリ
ビュートに

© 2012 Amazon.com, Inc. and its affiliates. All rights reserved. May not be copied, modified or distributed in whole or in part without the express consent of Amazon.com, Inc.
アトリビュートのプロジェクション
!   Index⽤用テーブルに指定したアトリビュートを複製保存
する機能
•  例例:ThreadテーブルのRepliesをLastPostIndexにプロジェク
ション

LastPostIndex
45

Query時にRepliesを取得する場合は読み込みコストが低減
à性能の向上、ReadThroughputの節約
© 2012 Amazon.com, Inc. and its affiliates. All rights reserved. May not be copied, modified or distributed in whole or in part without the express consent of Amazon.com, Inc.
サンプル(3)LSI付き⾏行行動ログ
!   ユーザーのアクティビティログにLocal  Secondary  
Indexes(LSI)をつけてみる

•  ⼀一度度作ったテーブルのLSIは変更更できないので、新たに
Audience2というテーブルを作って設定する
•  今回はAction-‐‑‒IndexというLSIを作って、”Action”というアトリ
ビュートに設定する

46
© 2012 Amazon.com, Inc. and its affiliates. All rights reserved. May not be copied, modified or distributed in whole or in part without the express consent of Amazon.com, Inc.
サンプル(3)LSI付き⾏行行動ログ
!   Action-‐‑‒Index(LSI)を使ってデータを取得する

47

dynamoDb.query(
        {
                TableName:"Audience2",
                IndexName:  “Action-‐‑‒Index”,
                KeyConditions:  {
                        "AudienceId":  {
                                ComparisonOperator:"EQ",
                                AttributeValueList:[  {N:"1"}  ]
                        },
                        “Action":  {
                                ComparisonOperator:“EQ",
                                AttributeValueList:[  {S:“Login"}  ]
                        }
                }
        },
        function(err,data){
                if(err){
                        console.log(err);
                }else{
                        console.log(data);
                }
        }
);
© 2012 Amazon.com, Inc. and its affiliates. All rights reserved. May not be copied, modified or distributed in whole or in part without the express consent of Amazon.com, Inc.
テーブル設計で気をつけること:  プライマリキー
!   Hash  keyとRange  keyの概念念
Parition1 Partition2 Parition3
1  2  3  4  5  6  7  8  9

Range  key
Partition内での
データの並びを
保証する

DynamoDBのスループッ
トは、各Partitionに負荷
が分散されたときに想定通
りの数字がでるように設計
されている。ひとつの
Paritionだけではプロビ
ジョンしたスループットの
数字はでないので注意。

Hash  key
Partition間での
データ分散に利利
48
⽤用される
© 2012 Amazon.com, Inc. and its affiliates. All rights reserved. May not be copied, modified or distributed in whole or in part without the express consent of Amazon.com, Inc.
A,D

B,E

C,F
テーブル設計で気をつけること:  プライマリキー
!   Hot  Key問題:特定のHash  keyに対してデータ
が集中すると性能が劣劣化する(想定通りに性能
がでない)ので注意。
!   前述のAudienceテーブルでのAudienceIdのよ
うに、データが特定のキーに集中しにくいもの
を選ぶ。
!   例例えば、「年年⽉月」みたいなデータが集中しやす
いキーをHash  keyにするのはアンチパターン。
49
© 2012 Amazon.com, Inc. and its affiliates. All rights reserved. May not be copied, modified or distributed in whole or in part without the express consent of Amazon.com, Inc.
テーブル設計で気をつけること:  LSI
!   Local  Secondary  IndexesはストレージとIOの
コストを押し上げる
•  LSIはいわゆる”射影”で実装されている
•  射影されるアトリビュートのストレージコストが膨らむ
•  Write時の書き込みコストも上がる

!   本当に必要なものだけに絞ってLSIを適⽤用する
!   射影(Projection)するAttributesも必要なものに絞る

50
© 2012 Amazon.com, Inc. and its affiliates. All rights reserved. May not be copied, modified or distributed in whole or in part without the express consent of Amazon.com, Inc.
ツールとエコシステム

51
© 2012 Amazon.com, Inc. and its affiliates. All rights reserved. May not be copied, modified or distributed in whole or in part without the express consent of Amazon.com, Inc.
データ操作は
マネージメントコンソールで
!   テーブルに対してSCANやQUERY、PutItemをマネージ
メントコンソールから実⾏行行することができる

52
© 2012 Amazon.com, Inc. and its affiliates. All rights reserved. May not be copied, modified or distributed in whole or in part without the express consent of Amazon.com, Inc.
DynamoDB  Local
!   開発/テスト⽤用のツール

•  今までは開発やテストをするために実際のDynamoDBのテーブ
ルを作る必要があった。これには”費⽤用が発⽣生する”、”静的なテ
スト環境を作れない”、”オフラインで開発できない”などの問題
があった。
•  このツールを利利⽤用することにより、開発やCIをより便便利利に⾏行行う
ことができる

!   JARファイルで提供され、ローカルにインストールして
動かすことができる(要Java7)
!   あくまでAPIの機能的を再現しているテストツールなの
で本番では利利⽤用しない
!   プロビジョンスループットは再現されていないので注意
!   詳細は  http://bit.ly/1d9fN5c  を参照
53
© 2012 Amazon.com, Inc. and its affiliates. All rights reserved. May not be copied, modified or distributed in whole or in part without the express consent of Amazon.com, Inc.
Transaction  Library  for  DynamoDB
!   AWS  SDK  for  Javaのひとつの機能としての実装

•  このSDKを使うことでDynamoDB上でTransactionを利利⽤用できる
•  ライブラリ側でTransaction管理理テーブルを作成することにより
Transactionを実現している

!   使い⽅方は次のページのサンプルコードを参照
!   詳細は  http://bit.ly/16KbppP

54
© 2012 Amazon.com, Inc. and its affiliates. All rights reserved. May not be copied, modified or distributed in whole or in part without the express consent of Amazon.com, Inc.
Transaction  Library  for  DynamoDB

55
© 2012 Amazon.com, Inc. and its affiliates. All rights reserved. May not be copied, modified or distributed in whole or in part without the express consent of Amazon.com, Inc.
Transaction  Library  for  DynamoDB

56
© 2012 Amazon.com, Inc. and its affiliates. All rights reserved. May not be copied, modified or distributed in whole or in part without the express consent of Amazon.com, Inc.
Amazon  EMRのHiveから利利⽤用する

!   hiveのExternal  Tableとして利利⽤用可能

•  DynamoDB上のデータを集計したいときなどに利利⽤用

CREATE  EXTERNAL  TABLE  Audience
  (  AudienceId  Int,  ActionTimestamp  string,  Action  string  )
STORED  BY  
'org.apache.hadoop.hive.dynamodb.DynamoDBStorageHa
ndler'  
TBLPROPERTIES  (
  "dynamodb.table.name"  =  ”Audience2",
  "dynamodb.column.mapping"  =  
      ”AudienceId:AudienceId,  
        ActionTimestamp:Timestamp,  
        Aciton:Action“    );
57

•  詳細は  http://amazn.to/19goT17
© 2012 Amazon.com, Inc. and its affiliates. All rights reserved. May not be copied, modified or distributed in whole or in part without the express consent of Amazon.com, Inc.
hiveを使ってS3へデータをバックアップする
EMR上のhiveはDynamoDBだけでなくS3も
External  Tableとして利利⽤用できるのを活かし、
DynamoDBバックのExternal  Tableから
SelectしたデータをS3バックのExternal  Table
にInsertする。
INSERT  OVERWRITE  TABLE
s3_̲as_̲external_̲table
SELECT  *  
FROM  dynamodb_̲as_̲external_̲table;

58
© 2012 Amazon.com, Inc. and its affiliates. All rights reserved. May not be copied, modified or distributed in whole or in part without the express consent of Amazon.com, Inc.
Amazon  Redshiftにデータをロードする
!  COPYコマンドでRedshiftにデータをロード
COPY  audience  
FROM  ʻ‘dynamodb://Audience2ʼ’    
CREDENTIALS
    'aws_̲access_̲key_̲id=<Your-‐‑‒Access-‐‑‒Key-‐‑‒
ID>;aws_̲secret_̲access_̲key=<Your-‐‑‒Secret-‐‑‒Access-‐‑‒
Key>'  
READRATIO  50;
•  詳細は  http://amazn.to/19goT17
59
© 2012 Amazon.com, Inc. and its affiliates. All rights reserved. May not be copied, modified or distributed in whole or in part without the express consent of Amazon.com, Inc.
When  to  use

60
© 2012 Amazon.com, Inc. and its affiliates. All rights reserved. May not be copied, modified or distributed in whole or in part without the express consent of Amazon.com, Inc.
いつDynamoDBを使うべきか
!  RDBをそのまま置き換えるのはあまりう
まい使い⽅方ではない
!  システムすべてをDynamoDBだけで構成
する必要はない
!  RDBとうまい棲み分けを
!  例例えばシャーディングしないと格納でき
ないような巨⼤大なデータだけを
DynamoDBに⼊入れるなど
61
© 2012 Amazon.com, Inc. and its affiliates. All rights reserved. May not be copied, modified or distributed in whole or in part without the express consent of Amazon.com, Inc.
RDBで、性能を保ちつつ巨⼤大なデータを格
納するには

62
© 2012 Amazon.com, Inc. and its affiliates. All rights reserved. May not be copied, modified or distributed in whole or in part without the express consent of Amazon.com, Inc.
MySQLのシャード構成で
データを運⽤用する⼿手順の例例(1)

シャードインデックス

データインデックス

マテリアライズド・ビュ
ー

シャードされた実データテーブル

63
© 2012 Amazon.com, Inc. and its affiliates. All rights reserved. May not be copied, modified or distributed in whole or in part without the express consent of Amazon.com, Inc.
MySQLのシャード構成で
データを運⽤用する⼿手順の例例(2)
取得したいデータ⼀一覧を取る

シャードインデックス

データインデックス

マテリアライズド・ビュ
ー

シャードされた実データテーブル

64
© 2012 Amazon.com, Inc. and its affiliates. All rights reserved. May not be copied, modified or distributed in whole or in part without the express consent of Amazon.com, Inc.
MySQLのシャード構成で
データを運⽤用する⼿手順の例例(3)
欲しいデータが⼊入っている
シャードノードを取得

シャードインデックス

データインデックス

マテリアライズド・ビュ
ー

シャードされた実データテーブル

65
© 2012 Amazon.com, Inc. and its affiliates. All rights reserved. May not be copied, modified or distributed in whole or in part without the express consent of Amazon.com, Inc.
MySQLのシャード構成で
データを運⽤用する⼿手順の例例(3)
実データを取得

シャードインデックス

データインデックス

マテリアライズド・ビュ
ー

シャードされた実データテーブル

66
© 2012 Amazon.com, Inc. and its affiliates. All rights reserved. May not be copied, modified or distributed in whole or in part without the express consent of Amazon.com, Inc.
MySQLのシャード構成で
データを運⽤用する⼿手順の例例(4)
ビューをキャッシュ

シャードインデックス

データインデックス

マテリアライズド・ビュ
ー

シャードされた実データテーブル

67
© 2012 Amazon.com, Inc. and its affiliates. All rights reserved. May not be copied, modified or distributed in whole or in part without the express consent of Amazon.com, Inc.
スケーラビリティ(性能  x  データ量量)を
RDBで確保しようとすると
とても⼤大変

68
© 2012 Amazon.com, Inc. and its affiliates. All rights reserved. May not be copied, modified or distributed in whole or in part without the express consent of Amazon.com, Inc.
そういうところにこそDynamoDB

69
© 2012 Amazon.com, Inc. and its affiliates. All rights reserved. May not be copied, modified or distributed in whole or in part without the express consent of Amazon.com, Inc.
シャードノードとシャードインデックスが
不不要になって運⽤用が楽に!

データインデックス

マテリアライズド・ビュ
ー

DynamoDB
70
© 2012 Amazon.com, Inc. and its affiliates. All rights reserved. May not be copied, modified or distributed in whole or in part without the express consent of Amazon.com, Inc.
DynamoDBにマッチするユースケースを
考えてみる
!   ユーザーの⾏行行動ログを格納

•  Hash  keyにユーザーID、Range  keyにタイムスタンプ
•  広告のターゲティングのための⾏行行動ログ
•  ゲーム内のユーザーの⾏行行動を記録するためのログ

!   ストレージのためのインデックス
•  Hash  keyにObject名

•  S3に格納したデータのインデックスとして

!   投票システムやフラッシュマーケティング
•  投票や応募対象のIDをHash  key

•  短期間でスパイクするトラフィックを捌くために

71
© 2012 Amazon.com, Inc. and its affiliates. All rights reserved. May not be copied, modified or distributed in whole or in part without the express consent of Amazon.com, Inc.
ユースケース

72
© 2012 Amazon.com, Inc. and its affiliates. All rights reserved. May not be copied, modified or distributed in whole or in part without the express consent of Amazon.com, Inc.
逆に、マッチしないユースケースは?
!   集計

•  データを全件SCANするようなユースケースはあまり向かない
•  やるのであればHiveやRedshiftと組み合わせる

!   トランザクション

•  ライブラリの提供はあるが、NoSQLの特性としてもともと得意
ではない(できるがコストが⾼高い)

73
© 2012 Amazon.com, Inc. and its affiliates. All rights reserved. May not be copied, modified or distributed in whole or in part without the express consent of Amazon.com, Inc.
まとめ

74
© 2012 Amazon.com, Inc. and its affiliates. All rights reserved. May not be copied, modified or distributed in whole or in part without the express consent of Amazon.com, Inc.
まとめ

!
!
!
!

DynamoDBはNoSQL  as  a  Service
 運⽤用の⼿手間がかからない。
NoSQLはRDBとは⽤用途が違う
 システムを全部DynamoDBで構築す
る必要はない。適材適所でRDBと組
み合わせて使う。

75
© 2012 Amazon.com, Inc. and its affiliates. All rights reserved. May not be copied, modified or distributed in whole or in part without the express consent of Amazon.com, Inc.
参考資料料
!   Amazon  DynamoDB  のベストプラクティス、使⽤用⽅方法、
およびツールなどの情報がこちらにまとまっています。
•  http://aws.amazon.com/jp/dynamodb/resources/

76
© 2012 Amazon.com, Inc. and its affiliates. All rights reserved. May not be copied, modified or distributed in whole or in part without the express consent of Amazon.com, Inc.
参考資料料

Yahooの開発したPeanutsというNoSQLと、Dynamo(オリジナル)、Cassandra、
HBaseとのコンセプトや実装の⽐比較が書かれていて、NoSQLの中⾝身や実装につ
いて⾮非常に参考になります。

77
© 2012 Amazon.com, Inc. and its affiliates. All rights reserved. May not be copied, modified or distributed in whole or in part without the express consent of Amazon.com, Inc.
ありがとうございました!

78
© 2012 Amazon.com, Inc. and its affiliates. All rights reserved. May not be copied, modified or distributed in whole or in part without the express consent of Amazon.com, Inc.

More Related Content

What's hot

S17_25 分でわかる!Windows 365 [Microsoft Japan Digital Days]
S17_25 分でわかる!Windows 365 [Microsoft Japan Digital Days]S17_25 分でわかる!Windows 365 [Microsoft Japan Digital Days]
S17_25 分でわかる!Windows 365 [Microsoft Japan Digital Days]
日本マイクロソフト株式会社
 

What's hot (20)

20210127 今日から始めるイベントドリブンアーキテクチャ AWS Expert Online #13
20210127 今日から始めるイベントドリブンアーキテクチャ AWS Expert Online #1320210127 今日から始めるイベントドリブンアーキテクチャ AWS Expert Online #13
20210127 今日から始めるイベントドリブンアーキテクチャ AWS Expert Online #13
 
IAM Roles Anywhereのない世界とある世界(2022年のAWSアップデートを振り返ろう ~Season 4~ 発表資料)
IAM Roles Anywhereのない世界とある世界(2022年のAWSアップデートを振り返ろう ~Season 4~ 発表資料)IAM Roles Anywhereのない世界とある世界(2022年のAWSアップデートを振り返ろう ~Season 4~ 発表資料)
IAM Roles Anywhereのない世界とある世界(2022年のAWSアップデートを振り返ろう ~Season 4~ 発表資料)
 
CRX: Container Runtime Executive 
CRX: Container Runtime Executive CRX: Container Runtime Executive 
CRX: Container Runtime Executive 
 
MongoDBが遅いときの切り分け方法
MongoDBが遅いときの切り分け方法MongoDBが遅いときの切り分け方法
MongoDBが遅いときの切り分け方法
 
Where狙いのキー、order by狙いのキー
Where狙いのキー、order by狙いのキーWhere狙いのキー、order by狙いのキー
Where狙いのキー、order by狙いのキー
 
20220409 AWS BLEA 開発にあたって検討したこと
20220409 AWS BLEA 開発にあたって検討したこと20220409 AWS BLEA 開発にあたって検討したこと
20220409 AWS BLEA 開発にあたって検討したこと
 
ツール比較しながら語る O/RマッパーとDBマイグレーションの実際のところ
ツール比較しながら語る O/RマッパーとDBマイグレーションの実際のところツール比較しながら語る O/RマッパーとDBマイグレーションの実際のところ
ツール比較しながら語る O/RマッパーとDBマイグレーションの実際のところ
 
クラウドでも非機能要求グレードは必要だよね
クラウドでも非機能要求グレードは必要だよねクラウドでも非機能要求グレードは必要だよね
クラウドでも非機能要求グレードは必要だよね
 
PostgreSQL Unconference #29 Unicode IVS
PostgreSQL Unconference #29 Unicode IVSPostgreSQL Unconference #29 Unicode IVS
PostgreSQL Unconference #29 Unicode IVS
 
RLSを用いたマルチテナント実装 for Django
RLSを用いたマルチテナント実装 for DjangoRLSを用いたマルチテナント実装 for Django
RLSを用いたマルチテナント実装 for Django
 
S17_25 分でわかる!Windows 365 [Microsoft Japan Digital Days]
S17_25 分でわかる!Windows 365 [Microsoft Japan Digital Days]S17_25 分でわかる!Windows 365 [Microsoft Japan Digital Days]
S17_25 分でわかる!Windows 365 [Microsoft Japan Digital Days]
 
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
 
Oracle jdk 20190827 - 今、あらためてOracle提供のJDKを語る
Oracle jdk 20190827 - 今、あらためてOracle提供のJDKを語るOracle jdk 20190827 - 今、あらためてOracle提供のJDKを語る
Oracle jdk 20190827 - 今、あらためてOracle提供のJDKを語る
 
アーキテクチャから理解するPostgreSQLのレプリケーション
アーキテクチャから理解するPostgreSQLのレプリケーションアーキテクチャから理解するPostgreSQLのレプリケーション
アーキテクチャから理解するPostgreSQLのレプリケーション
 
MySQLからPostgreSQLへのマイグレーションのハマリ所
MySQLからPostgreSQLへのマイグレーションのハマリ所MySQLからPostgreSQLへのマイグレーションのハマリ所
MySQLからPostgreSQLへのマイグレーションのハマリ所
 
AWSのログ管理ベストプラクティス
AWSのログ管理ベストプラクティスAWSのログ管理ベストプラクティス
AWSのログ管理ベストプラクティス
 
20190129 AWS Black Belt Online Seminar AWS Identity and Access Management (AW...
20190129 AWS Black Belt Online Seminar AWS Identity and Access Management (AW...20190129 AWS Black Belt Online Seminar AWS Identity and Access Management (AW...
20190129 AWS Black Belt Online Seminar AWS Identity and Access Management (AW...
 
マイクロサービス時代の認証と認可 - AWS Dev Day Tokyo 2018 #AWSDevDay
マイクロサービス時代の認証と認可 - AWS Dev Day Tokyo 2018 #AWSDevDayマイクロサービス時代の認証と認可 - AWS Dev Day Tokyo 2018 #AWSDevDay
マイクロサービス時代の認証と認可 - AWS Dev Day Tokyo 2018 #AWSDevDay
 
45分間で「ユーザー中心のものづくり」ができるまで詰め込む
45分間で「ユーザー中心のものづくり」ができるまで詰め込む45分間で「ユーザー中心のものづくり」ができるまで詰め込む
45分間で「ユーザー中心のものづくり」ができるまで詰め込む
 
シリコンバレーでエンジニア就職する前に知りたかったこと
シリコンバレーでエンジニア就職する前に知りたかったことシリコンバレーでエンジニア就職する前に知りたかったこと
シリコンバレーでエンジニア就職する前に知りたかったこと
 

Similar to [AWSマイスターシリーズ] Amazon DynamoDB

[AWSマイスターシリーズ] AWS Elastic Beanstalk
[AWSマイスターシリーズ] AWS Elastic Beanstalk[AWSマイスターシリーズ] AWS Elastic Beanstalk
[AWSマイスターシリーズ] AWS Elastic Beanstalk
Amazon Web Services Japan
 
[よくわかるクラウドデータベース] CassandraからAmazon DynamoDBへの移行事例
[よくわかるクラウドデータベース] CassandraからAmazon DynamoDBへの移行事例[よくわかるクラウドデータベース] CassandraからAmazon DynamoDBへの移行事例
[よくわかるクラウドデータベース] CassandraからAmazon DynamoDBへの移行事例
Amazon Web Services Japan
 
[AWSマイスターシリーズ] AWS OpsWorks
[AWSマイスターシリーズ] AWS OpsWorks[AWSマイスターシリーズ] AWS OpsWorks
[AWSマイスターシリーズ] AWS OpsWorks
Amazon Web Services Japan
 
[AWSマイスターシリーズ] Amazon Redshift
[AWSマイスターシリーズ] Amazon Redshift[AWSマイスターシリーズ] Amazon Redshift
[AWSマイスターシリーズ] Amazon Redshift
Amazon Web Services Japan
 
[AWSマイスターシリーズ] Amazon Elastic MapReduce (EMR)
[AWSマイスターシリーズ] Amazon Elastic MapReduce (EMR)[AWSマイスターシリーズ] Amazon Elastic MapReduce (EMR)
[AWSマイスターシリーズ] Amazon Elastic MapReduce (EMR)
Amazon Web Services Japan
 
[AWSマイスターシリーズ] AWS Client Side SDK -Android,iOS & JavaScript-
[AWSマイスターシリーズ] AWS Client Side SDK -Android,iOS & JavaScript-[AWSマイスターシリーズ] AWS Client Side SDK -Android,iOS & JavaScript-
[AWSマイスターシリーズ] AWS Client Side SDK -Android,iOS & JavaScript-
Amazon Web Services Japan
 
[D33] そのデータベース 5年後大丈夫ですか by Hiromu Goto
[D33] そのデータベース 5年後大丈夫ですか by Hiromu Goto[D33] そのデータベース 5年後大丈夫ですか by Hiromu Goto
[D33] そのデータベース 5年後大丈夫ですか by Hiromu Goto
Insight Technology, Inc.
 
[AWSマイスターシリーズ] AWS Elastic Beanstalk -Python編-
[AWSマイスターシリーズ] AWS Elastic Beanstalk -Python編-[AWSマイスターシリーズ] AWS Elastic Beanstalk -Python編-
[AWSマイスターシリーズ] AWS Elastic Beanstalk -Python編-
Amazon Web Services Japan
 

Similar to [AWSマイスターシリーズ] Amazon DynamoDB (20)

[AWSマイスターシリーズ] AWS Elastic Beanstalk
[AWSマイスターシリーズ] AWS Elastic Beanstalk[AWSマイスターシリーズ] AWS Elastic Beanstalk
[AWSマイスターシリーズ] AWS Elastic Beanstalk
 
[よくわかるクラウドデータベース] CassandraからAmazon DynamoDBへの移行事例
[よくわかるクラウドデータベース] CassandraからAmazon DynamoDBへの移行事例[よくわかるクラウドデータベース] CassandraからAmazon DynamoDBへの移行事例
[よくわかるクラウドデータベース] CassandraからAmazon DynamoDBへの移行事例
 
[AWSマイスターシリーズ] AWS OpsWorks
[AWSマイスターシリーズ] AWS OpsWorks[AWSマイスターシリーズ] AWS OpsWorks
[AWSマイスターシリーズ] AWS OpsWorks
 
既存システムへの新技術活用法 ~fluntd/MongoDB~
既存システムへの新技術活用法 ~fluntd/MongoDB~既存システムへの新技術活用法 ~fluntd/MongoDB~
既存システムへの新技術活用法 ~fluntd/MongoDB~
 
AWS Black Belt Techシリーズ Amazon Elastic Compute Cloud (Amazon EC2)
AWS Black Belt Techシリーズ Amazon Elastic Compute Cloud (Amazon EC2)AWS Black Belt Techシリーズ Amazon Elastic Compute Cloud (Amazon EC2)
AWS Black Belt Techシリーズ Amazon Elastic Compute Cloud (Amazon EC2)
 
[AWSマイスターシリーズ] Amazon Redshift
[AWSマイスターシリーズ] Amazon Redshift[AWSマイスターシリーズ] Amazon Redshift
[AWSマイスターシリーズ] Amazon Redshift
 
2013/12/05 Serverworks Seminar 小室分
2013/12/05 Serverworks Seminar 小室分2013/12/05 Serverworks Seminar 小室分
2013/12/05 Serverworks Seminar 小室分
 
Yahoo! JAPANとRiak
Yahoo! JAPANとRiakYahoo! JAPANとRiak
Yahoo! JAPANとRiak
 
PHP開発者のためのNoSQL入門
PHP開発者のためのNoSQL入門PHP開発者のためのNoSQL入門
PHP開発者のためのNoSQL入門
 
AWS Black Belt Techシリーズ Amazon Relational Database Service (RDS)
AWS Black Belt Techシリーズ Amazon Relational Database Service (RDS)AWS Black Belt Techシリーズ Amazon Relational Database Service (RDS)
AWS Black Belt Techシリーズ Amazon Relational Database Service (RDS)
 
おすすめインフラ! for スタートアップ
おすすめインフラ! for スタートアップおすすめインフラ! for スタートアップ
おすすめインフラ! for スタートアップ
 
[AWSマイスターシリーズ] Amazon Elastic MapReduce (EMR)
[AWSマイスターシリーズ] Amazon Elastic MapReduce (EMR)[AWSマイスターシリーズ] Amazon Elastic MapReduce (EMR)
[AWSマイスターシリーズ] Amazon Elastic MapReduce (EMR)
 
[AWSマイスターシリーズ] AWS Client Side SDK -Android,iOS & JavaScript-
[AWSマイスターシリーズ] AWS Client Side SDK -Android,iOS & JavaScript-[AWSマイスターシリーズ] AWS Client Side SDK -Android,iOS & JavaScript-
[AWSマイスターシリーズ] AWS Client Side SDK -Android,iOS & JavaScript-
 
[D33] そのデータベース 5年後大丈夫ですか by Hiromu Goto
[D33] そのデータベース 5年後大丈夫ですか by Hiromu Goto[D33] そのデータベース 5年後大丈夫ですか by Hiromu Goto
[D33] そのデータベース 5年後大丈夫ですか by Hiromu Goto
 
[CTO Night & Day 2019] よくある課題を一気に解説!御社の技術レベルがアップする 2019 秋期講習 #ctonight
[CTO Night & Day 2019] よくある課題を一気に解説!御社の技術レベルがアップする 2019 秋期講習 #ctonight[CTO Night & Day 2019] よくある課題を一気に解説!御社の技術レベルがアップする 2019 秋期講習 #ctonight
[CTO Night & Day 2019] よくある課題を一気に解説!御社の技術レベルがアップする 2019 秋期講習 #ctonight
 
DynamoDBの初心者に伝えたい初めて触るときの勘所
DynamoDBの初心者に伝えたい初めて触るときの勘所DynamoDBの初心者に伝えたい初めて触るときの勘所
DynamoDBの初心者に伝えたい初めて触るときの勘所
 
[AWSマイスターシリーズ] AWS Elastic Beanstalk -Python編-
[AWSマイスターシリーズ] AWS Elastic Beanstalk -Python編-[AWSマイスターシリーズ] AWS Elastic Beanstalk -Python編-
[AWSマイスターシリーズ] AWS Elastic Beanstalk -Python編-
 
地方企業がソーシャルゲーム開発を成功させるための10のポイント
地方企業がソーシャルゲーム開発を成功させるための10のポイント地方企業がソーシャルゲーム開発を成功させるための10のポイント
地方企業がソーシャルゲーム開発を成功させるための10のポイント
 
MongoDB社の製品紹介 2019-MongoDB EA&Atlas
MongoDB社の製品紹介 2019-MongoDB EA&AtlasMongoDB社の製品紹介 2019-MongoDB EA&Atlas
MongoDB社の製品紹介 2019-MongoDB EA&Atlas
 
更に進化するCSSの表現力と 新しいWebツール [Reloaded]
更に進化するCSSの表現力と 新しいWebツール [Reloaded]更に進化するCSSの表現力と 新しいWebツール [Reloaded]
更に進化するCSSの表現力と 新しいWebツール [Reloaded]
 

More from Amazon Web Services Japan

More from Amazon Web Services Japan (20)

202205 AWS Black Belt Online Seminar Amazon VPC IP Address Manager (IPAM)
202205 AWS Black Belt Online Seminar Amazon VPC IP Address Manager (IPAM)202205 AWS Black Belt Online Seminar Amazon VPC IP Address Manager (IPAM)
202205 AWS Black Belt Online Seminar Amazon VPC IP Address Manager (IPAM)
 
202205 AWS Black Belt Online Seminar Amazon FSx for OpenZFS
202205 AWS Black Belt Online Seminar Amazon FSx for OpenZFS202205 AWS Black Belt Online Seminar Amazon FSx for OpenZFS
202205 AWS Black Belt Online Seminar Amazon FSx for OpenZFS
 
202204 AWS Black Belt Online Seminar AWS IoT Device Defender
202204 AWS Black Belt Online Seminar AWS IoT Device Defender202204 AWS Black Belt Online Seminar AWS IoT Device Defender
202204 AWS Black Belt Online Seminar AWS IoT Device Defender
 
Infrastructure as Code (IaC) 談義 2022
Infrastructure as Code (IaC) 談義 2022Infrastructure as Code (IaC) 談義 2022
Infrastructure as Code (IaC) 談義 2022
 
202204 AWS Black Belt Online Seminar Amazon Connect を活用したオンコール対応の実現
202204 AWS Black Belt Online Seminar Amazon Connect を活用したオンコール対応の実現202204 AWS Black Belt Online Seminar Amazon Connect を活用したオンコール対応の実現
202204 AWS Black Belt Online Seminar Amazon Connect を活用したオンコール対応の実現
 
202204 AWS Black Belt Online Seminar Amazon Connect Salesforce連携(第1回 CTI Adap...
202204 AWS Black Belt Online Seminar Amazon Connect Salesforce連携(第1回 CTI Adap...202204 AWS Black Belt Online Seminar Amazon Connect Salesforce連携(第1回 CTI Adap...
202204 AWS Black Belt Online Seminar Amazon Connect Salesforce連携(第1回 CTI Adap...
 
Amazon Game Tech Night #25 ゲーム業界向け機械学習最新状況アップデート
Amazon Game Tech Night #25 ゲーム業界向け機械学習最新状況アップデートAmazon Game Tech Night #25 ゲーム業界向け機械学習最新状況アップデート
Amazon Game Tech Night #25 ゲーム業界向け機械学習最新状況アップデート
 
202202 AWS Black Belt Online Seminar AWS Managed Rules for AWS WAF の活用
202202 AWS Black Belt Online Seminar AWS Managed Rules for AWS WAF の活用202202 AWS Black Belt Online Seminar AWS Managed Rules for AWS WAF の活用
202202 AWS Black Belt Online Seminar AWS Managed Rules for AWS WAF の活用
 
202203 AWS Black Belt Online Seminar Amazon Connect Tasks.pdf
202203 AWS Black Belt Online Seminar Amazon Connect Tasks.pdf202203 AWS Black Belt Online Seminar Amazon Connect Tasks.pdf
202203 AWS Black Belt Online Seminar Amazon Connect Tasks.pdf
 
SaaS テナント毎のコストを把握するための「AWS Application Cost Profiler」のご紹介
SaaS テナント毎のコストを把握するための「AWS Application Cost Profiler」のご紹介SaaS テナント毎のコストを把握するための「AWS Application Cost Profiler」のご紹介
SaaS テナント毎のコストを把握するための「AWS Application Cost Profiler」のご紹介
 
Amazon QuickSight の組み込み方法をちょっぴりDD
Amazon QuickSight の組み込み方法をちょっぴりDDAmazon QuickSight の組み込み方法をちょっぴりDD
Amazon QuickSight の組み込み方法をちょっぴりDD
 
機密データとSaaSは共存しうるのか!?セキュリティー重視のユーザー層を取り込む為のネットワーク通信のアプローチ
機密データとSaaSは共存しうるのか!?セキュリティー重視のユーザー層を取り込む為のネットワーク通信のアプローチ機密データとSaaSは共存しうるのか!?セキュリティー重視のユーザー層を取り込む為のネットワーク通信のアプローチ
機密データとSaaSは共存しうるのか!?セキュリティー重視のユーザー層を取り込む為のネットワーク通信のアプローチ
 
パッケージソフトウェアを簡単にSaaS化!?既存の資産を使ったSaaS化手法のご紹介
パッケージソフトウェアを簡単にSaaS化!?既存の資産を使ったSaaS化手法のご紹介パッケージソフトウェアを簡単にSaaS化!?既存の資産を使ったSaaS化手法のご紹介
パッケージソフトウェアを簡単にSaaS化!?既存の資産を使ったSaaS化手法のご紹介
 
202202 AWS Black Belt Online Seminar Amazon Connect Customer Profiles
202202 AWS Black Belt Online Seminar Amazon Connect Customer Profiles202202 AWS Black Belt Online Seminar Amazon Connect Customer Profiles
202202 AWS Black Belt Online Seminar Amazon Connect Customer Profiles
 
Amazon Game Tech Night #24 KPIダッシュボードを最速で用意するために
Amazon Game Tech Night #24 KPIダッシュボードを最速で用意するためにAmazon Game Tech Night #24 KPIダッシュボードを最速で用意するために
Amazon Game Tech Night #24 KPIダッシュボードを最速で用意するために
 
202202 AWS Black Belt Online Seminar AWS SaaS Boost で始めるSaaS開発⼊⾨
202202 AWS Black Belt Online Seminar AWS SaaS Boost で始めるSaaS開発⼊⾨202202 AWS Black Belt Online Seminar AWS SaaS Boost で始めるSaaS開発⼊⾨
202202 AWS Black Belt Online Seminar AWS SaaS Boost で始めるSaaS開発⼊⾨
 
[20220126] JAWS-UG 2022初頭までに葬ったAWSアンチパターン大紹介
[20220126] JAWS-UG 2022初頭までに葬ったAWSアンチパターン大紹介[20220126] JAWS-UG 2022初頭までに葬ったAWSアンチパターン大紹介
[20220126] JAWS-UG 2022初頭までに葬ったAWSアンチパターン大紹介
 
202111 AWS Black Belt Online Seminar AWSで構築するSmart Mirrorのご紹介
202111 AWS Black Belt Online Seminar AWSで構築するSmart Mirrorのご紹介202111 AWS Black Belt Online Seminar AWSで構築するSmart Mirrorのご紹介
202111 AWS Black Belt Online Seminar AWSで構築するSmart Mirrorのご紹介
 
202201 AWS Black Belt Online Seminar Apache Spark Performnace Tuning for AWS ...
202201 AWS Black Belt Online Seminar Apache Spark Performnace Tuning for AWS ...202201 AWS Black Belt Online Seminar Apache Spark Performnace Tuning for AWS ...
202201 AWS Black Belt Online Seminar Apache Spark Performnace Tuning for AWS ...
 
202112 AWS Black Belt Online Seminar 店内の「今」をお届けする小売業向けリアルタイム配信基盤のレシピ
202112 AWS Black Belt Online Seminar 店内の「今」をお届けする小売業向けリアルタイム配信基盤のレシピ202112 AWS Black Belt Online Seminar 店内の「今」をお届けする小売業向けリアルタイム配信基盤のレシピ
202112 AWS Black Belt Online Seminar 店内の「今」をお届けする小売業向けリアルタイム配信基盤のレシピ
 

Recently uploaded

Recently uploaded (12)

LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
 
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native IntegrationsUtilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native Integrations
 
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
 
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
 
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
 
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
 
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
 
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
 
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
 

[AWSマイスターシリーズ] Amazon DynamoDB