$30 off During Our Annual Pro Sale. View Details »
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
小宇宙は燃えているか?
Search
Tatsuya Sato
July 25, 2017
Technology
0
2.8k
小宇宙は燃えているか?
JAZUG #7 LT の資料
Tatsuya Sato
July 25, 2017
Tweet
Share
More Decks by Tatsuya Sato
See All by Tatsuya Sato
受託開発受注のためのちょっとしたコツ 〜「何でもかんでもやります」じゃなく、まずはデモ〜 / demonstation first
satoryu
0
1.6k
これが私のXP 〜 eXtreme Punning 〜 変化をウケろ / this is my XP
satoryu
1
2k
音のような言葉 〜ちゃちゃっとチャットで楽しむちょっとしたコツ〜 / words like sounds
satoryu
1
3.8k
ふらっと立ち寄れる 廊下のある風景 - フラットでオープンネスがもたらす魅力 / The Corridor
satoryu
1
2.9k
Make it fun
satoryu
1
4.2k
なぜ私はチームにい続けるのか。あるいは、エンジニアとしての成長のためのチームの活用について。 / Why I continue to be in the team #RSGT2021
satoryu
0
6.4k
リモート時代のソロプログラミング - soloprogramming for work from home
satoryu
0
1.5k
Why do you fear contributing OSS? #xpjug
satoryu
5
12k
あるOSSの死と再生、それとこれから先 / How an OSS also arises
satoryu
0
320
Other Decks in Technology
See All in Technology
Jakarta Agentic AI Specification - Status and Future
reza_rahman
0
110
業務のトイルをバスターせよ 〜AI時代の生存戦略〜
staka121
PRO
2
220
Haskell を武器にして挑む競技プログラミング ─ 操作的思考から意味モデル思考へ
naoya
6
1.6k
Snowflakeでデータ基盤を もう一度作り直すなら / rebuilding-data-platform-with-snowflake
pei0804
6
1.6k
Database イノベーショントークを振り返る/reinvent-2025-database-innovation-talk-recap
emiki
0
230
年間40件以上の登壇を続けて見えた「本当の発信力」/ 20251213 Masaki Okuda
shift_evolve
PRO
1
140
Strands AgentsとNova 2 SonicでS2Sを実践してみた
yama3133
0
220
S3を正しく理解するための内部構造の読解
nrinetcom
PRO
2
160
AIエージェント開発と活用を加速するワークフロー自動生成への挑戦
shibuiwilliam
4
280
AI 駆動開発勉強会 フロントエンド支部 #1 w/あずもば
1ftseabass
PRO
0
400
新 Security HubがついにGA!仕組みや料金を深堀り #AWSreInvent #regrowth / AWS Security Hub Advanced GA
masahirokawahara
1
2.2k
AWS Security Agentの紹介/introducing-aws-security-agent
tomoki10
0
310
Featured
See All Featured
Practical Orchestrator
shlominoach
190
11k
How STYLIGHT went responsive
nonsquared
100
6k
Thoughts on Productivity
jonyablonski
73
5k
The World Runs on Bad Software
bkeepers
PRO
72
12k
The Invisible Side of Design
smashingmag
302
51k
Making the Leap to Tech Lead
cromwellryan
135
9.7k
Leading Effective Engineering Teams in the AI Era
addyosmani
9
1.3k
Building Adaptive Systems
keathley
44
2.9k
How to train your dragon (web standard)
notwaldorf
97
6.4k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.8k
Designing Experiences People Love
moore
143
24k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
48
9.8k
Transcript
খӉ೩͍͑ͯΔ͔ʁ - Azure Cosmos DBΛյͪ͠Όͬͨ - JAZUG Night, 25h Jul
2017 Tatsuya Sato Rakuten, Inc.
2 ࠤ౻ཽ ৽نαʔϏε։ൃ෦ Ruby, Agile, Azure
ઌɺͱ͋ΔΤϰΝʹհ͞Εͨهࣄ͕όζΓ·ͨ͠ɻ 3 ϝιουͷϒϩά http://simplearchitect.hatenablog.com/entry/2017/06/19/080036
Ϟϒϓϩάϥϛϯάͯ͠·͢ɻ 4 ίί
ࠓͷ͓ • Azure Cosmos DBΛۀͰͬͯΈͨΒɺյ ͪ͠Όͬͨɻ • ͬͨ͜ͱɺࠔͬͨʢͯΔʣ͜ͱͷ • Cosmos
DBͷ͍ํͷ͠·ͤΜɻ • υΩϡϝϯτΛಡΜͰɺͬͯΈͯ͘ ͍ͩ͞ɻ 5
ͬ͘͟Γͱ͓ࣄʹ͍ͭͯ • ৽نࣄۀ։ൃ • ·ͩPoCͷஈ֊ • σϞˠϑΟʔυόοΫˠमਖ਼ˠσϞ ͷαΠ ΫϧΛૣ͘ճ͍ͨ࣌͠ظ 6
WHY DO WE CHOOSE COSMOS DBʁ ͳͥCosmos DBΛબΜͩͷ͔ 7
બࢶ • Azure SQL Database • Azure Database for MySQL
• Azure Cosmos DB 8
Azure SQL Database • ։ൃڥߏங͕େมͦ͏ • ϝϯόʔͷڥ͕MacɺWinࠞࡏ • ϝϯόʔͷ୭ར༻ܦݧͳ͠ •
Ͱɺ͙͢ʹϓϩμΫτ։ൃʹணख͍ͨ͠… 9
Azure Database for MySQL • MySQLɺ·͡MySQL • ͜Ε·Ͱͷܦݧ͕׆͔ͤͦ͏ʂ • ͔͠͠ɺPreview൛…
• ͦ͜Ͱ᪴͘ΑΓ͔ɺϓϩμΫτ։ൃʹूத ͍ͨ͠… 10
Azure Cosmos DBͷಛ • ϚϧνσʔλϞσϧ • SQL, Mongo API, Key-Value,
Graph • Ϧʔδϣϯލ͍ͩϨϓϦέʔγϣϯ • ߴ͍SLA • ಉ͡ϦʔδϣϯͰ͋ΕಡΈࠐΈ10msҎ Λ99%Ͱอূ 11
Azure Cosmos DB • ͨ·ͨ·ϝϯόʔશһʹMongoDBͷར༻ܦݧ ͕͋ͬͨɻ • ϩʔΧϧͰͷ։ൃڥMongoDBΛΠϯε τʔϧ͢ΕOK •
PHPͷAzure DocumentDB API ͷϥΠϒϥ Ϧ͚͋ͬͨͲɺ։ൃ͕ࢭ·ͬͯͨɻ 12
ଞͷAPIͰܨ͙ Document DBλΠϓʹMongo APIͰɺMongoλΠϓʹDocumentDB APIͰܨ͙ 13
େͳ͜ͱ 14 ଞͷAPIͰͷଓใϙʔλϧ ʹࡌͬͯͳ͍ɻ
େͳ͜ͱ 15 ଞͷAPIͰͷଓใͷऔಘํ๏ υΩϡϝϯτʹʢ͓ͦΒ͘ʣͳ͍ɻ
DocumentDB MongoDB 16
17 ͔͠͠ޓੑ͋Δɻ
DocumentDBʹMongo APIͰܨ͙࣌ͷURL • mongodb://ΞΧϯτ໊:ϚελʔΩʔ@ ΞΧϯτ໊.documents.azure.com: 10255/?ssl=true • Ϣʔβʔ໊ɺΞΧϯτ໊ • ύεϫʔυʹɺϚελʔΩʔ
• SSLͰͳ͍ͱଓͰ͖ͳ͍ͷͰҙ 18
MongoDBʹDocumentDB APIͰܨ͙࣌ͷURL • https://ΞΧϯτ໊.documents.azure.com:443 • ϚελʔΩʔͱͯ͠ɺMongoDB ͷύε ϫʔυΛͦͷ··͑Δɻ 19
ଞͷAZUREͷαʔϏεͱܨ͛Δ Functions, DataFactory ͳͲDocumentDB APIΛαϙʔτ 20
࠷ۙग़͖ͯͨཁ݅ • ڠྗձ͔ࣾΒσʔλΛऔΓࠐΈ͍ͨɻ • Treasuredata͔ΒAzure Blob Storageʹ CSVΛग़ྗՄೳ • ͔ͦ͜ΒઌΛͲ͏͠Α͏ʁ
• Functions? 21
Azure DataFactory • σʔλͷύΠϓϥΠ ϯɺεέδϡʔϦϯά ͷαʔϏε • ୯७ͳσʔλͷΠϯ ϙʔτͳΒJSONͰઃ ఆΛॻ͚ͩ͘ɻ
22
͜Μͳײ͡ 23 ΄ͱΜͲίʔυΛॻ͔ͣʹσʔλ࿈ܞΛ࣮ݱʂ
Cosmos DBɺյΕͨ… 24 “Blender Cycles - Armageddon” by NGCHunter2 /
CC BY-NC-ND
Կ͕ى͖ͨͷ͔ʁ • MongoDBʹDocumentDB APIܦ༝ͰσʔλΛೖΕΔͱյΕ Δɻ • InsertͰ͖Δ͚ͲɺRead͕Ͱ͖ͳ͘ͳͬͨɻ • Data FactoryԿͳ͘σʔλΛೖΕଓ͚Δ…
25
Ͳ͏ΒશʹޓͰͳ͍ͬΆ͍ • DocumentDB ʹMongo APIͰσʔλՃ ʢࠓͷͱ͜Ζʣͳ͍ • DocumentDBΛ͑େৎʁ • ͚Ͳɺσʔλͷ࣋ͪํҟͳΔɻ
26
DocumentDB APIͰೖΕͨυΩϡϝϯτͷߏ • API͝ͱͰߏͷݟ͑ํ͕ҟͳΔɻ 27 DocumentDB API Mongo API
DocumentDBʹMongoAPI͔ΒಡΈॻ͖͢Δ࣌ͷϙΠϯτ • ঢ়گʹΑΓಠࣗʹIDΛ࠾൪͢Δඞཁ͋Γ • DocumentDB ͕͚ΔID "_rid" Mongo API͔Β͑ͳ͍ɻ •
ͦͷࡍͷIDͷ໊લɺDocumentDB͕͚Δଐੑ໊ͱҟͳΔ ͷ͕ྑ͍ɻ • ෦Ͱ໊લ͕มߋ͞Εͯ͠·͏ɻʢྫɿ _rid -> $_rid ʣ • DocumentDB APIͱMongo APIͰ͏͜ͱΛߟྀͨ͠ํ͕ྑ͍ɻ 28
·ͱΊ • MongoDB ʹDocumentDB APIͰσʔλΛೖΕΔͱ ʢࠓͷͱ͜Ζʣ2ͱ͑·ͤΜɻ • DocumentDB ͳΒMongo APIͰDocumentDB
API ͰಡΈॻ͖OK • DocumentDBͷ߹ɺMongoDBͱυΩϡϝϯτͷߏ ͕ҟͳΔͷͰσʔλઃܭ࣌ʹҙ͠·͠ΐ͏ɻ 29