$30 off During Our Annual Pro Sale. View Details »
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
AWS SDK for RubyでDynamoDBを操作してみた
Search
Naoto Enokawa
October 18, 2014
Programming
0
340
AWS SDK for RubyでDynamoDBを操作してみた
JAWS-UG沖縄 CMS祭り 前夜祭LT資料です。
Naoto Enokawa
October 18, 2014
Tweet
Share
More Decks by Naoto Enokawa
See All by Naoto Enokawa
CircleCI Orbs にコントリビュートした話 / Story contributed to CircleCI Orbs
enokawa
0
650
AWS re:Invent 2017行ってきました報告 / JAWS-UG Okinawa 20180106
enokawa
1
320
Roadworkerではじめる大量DNS移行 / Codenize Meetup
enokawa
0
3.4k
AWS構築のハマりポイントを詳しく解説 / Cloud on the BEACH 2016
enokawa
3
1.5k
JAWS DAYS 2016 ランチセッション
enokawa
0
590
AWS初心者がCodenize.toolsでInfrastructure as Codeした話/jawsug-beginner2-lt
enokawa
0
850
cloudpackインターン成果報告
enokawa
0
2k
ownCloud on AWS in Hackers Champloo 前夜祭 #hcmpl
enokawa
0
620
#jawsug 沖縄 勉強会「AWS触ってみたけどその後どうしてる?」
enokawa
0
99
Other Decks in Programming
See All in Programming
All(?) About Point Sets
hole
0
270
関数の挙動書き換える
takatofukui
4
770
CSC305 Lecture 17
javiergs
PRO
0
270
Microservices Platforms: When Team Topologies Meets Microservices Patterns
cer
PRO
1
930
手軽に積ん読を増やすには?/読みたい本と付き合うには?
o0h
PRO
1
150
「コードは上から下へ読むのが一番」と思った時に、思い出してほしい話
panda728
PRO
23
12k
[堅牢.py #1] テストを書かない研究者に送る、最初にテストを書く実験コード入門 / Let's start your ML project by writing tests
shunk031
11
6.9k
これだけで丸わかり!LangChain v1.0 アップデートまとめ
os1ma
6
1.3k
目的で駆動する、AI時代のアーキテクチャ設計 / purpose-driven-architecture
minodriven
11
3.9k
UIデザインに役立つ 2025年の最新CSS / The Latest CSS for UI Design 2025
clockmaker
17
6.7k
新卒エンジニアのプルリクエスト with AI駆動
fukunaga2025
0
150
Microservices rules: What good looks like
cer
PRO
0
580
Featured
See All Featured
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
700
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
10
700
Agile that works and the tools we love
rasmusluckow
331
21k
Visualization
eitanlees
150
16k
KATA
mclloyd
PRO
32
15k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
34
2.5k
Principles of Awesome APIs and How to Build Them.
keavy
127
17k
Statistics for Hackers
jakevdp
799
230k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
132
19k
Unsuck your backbone
ammeep
671
58k
Transcript
AWS SDK for Ruby V2Ͱ DynamoDBΛૢ࡞ͯ͠Έͨ Naoto Enokawa
ࣗݾհ ӫ ేʢ͑ͷ͔Θ ͳ͓ͱʣ ԭೄࠃࡍେֶ4࣍ ಛٕɿDJʢEDMͱ͔ʣ झຯɿҰ؟ϨϑʢEOS kiss X5ʣ
DynamoDBʹϦΞϧλΠϜͰ πΠʔτΛ֨ೲ͢Δ ͬͨ͜ͱ
ͳΜͰʁʁ
None
MacBookͷഎ໘Λ ࣗຫ͋͠͏WebαʔϏε
ʮMacFriendsʯͰݕࡧʂ http://macfriends.net/
None
ઌੜʮσʔλϕʔε͑ʯ
DBͳʹ͓͏… RDSͬͨΒෛ͚ͨײ͕͢͡Δww
RDS͏ΑΓDynamoDB ͬͨํ͕҆͘ࡁΈͦ͏ʂʂ
༻ͨ͠AWSαʔϏε DynamoDBɿશϚωʔδυNoSQLɺ KeyValueܕɺAPIܦ༝Ͱར༻͢ΔɺSSDͰ͍ AWS SDK for RubyɿRubyͰAWSͷϦιʔεΛ ૢ࡞͢Δ͜ͱ͕Ͱ͖ΔɺଞʹɺJavaɺ JavaScriptɺPhytonɺPHPɺ.NETɺNode.jsɺ iOSɺAndroid
Πϝʔδਤ DynamoDB ΅͘ͷMac RubyͰͿͪࠐΉʂʂ
σϞ
create_table.rb resp = dynamo_db.create_table( table_name: 'tweets', key_schema: [ { attribute_name:
'tweet_id', key_type: 'HASH', }, ], attribute_definitions: [ { attribute_name: 'tweet_id', attribute_type: 'N', }, ], provisioned_throughput: { read_capacity_units: 1, write_capacity_units: 1, }, )
put_item.rb client = TweetStream::Client.new ! client.track("#macfriends") do |status| if !status.text.index("RT")
puts "@" + status.user.screen_name + " : " + status.text resp = dynamo_db.put_item( table_name: 'tweets', item: { 'tweet_id' => status.id, 'user_id' => status.user.id, 'screen_name' => status.user.screen_name, 'tweet_text' => status.text, } ) end end
None
ࠓޙͷ՝ • ݟ͑ΔԽ • ϒϥβ্ͰDBͷใΛදࣔͤ͞Δ • herokuʹσϓϩΠ
None
/enokawa/tweetstream_dynamodb
AWS SDK for Ruby V2Ͱ DynamoDBΛૢ࡞ͯ͠Έͨ Naoto Enokawa