Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
小宇宙は燃えているか?
Search
Tatsuya Sato
July 25, 2017
Technology
2.9k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
小宇宙は燃えているか?
JAZUG #7 LT の資料
Tatsuya Sato
July 25, 2017
More Decks by Tatsuya Sato
See All by Tatsuya Sato
受託開発受注のためのちょっとしたコツ 〜「何でもかんでもやります」じゃなく、まずはデモ〜 / demonstation first
satoryu
0
1.8k
これが私のXP 〜 eXtreme Punning 〜 変化をウケろ / this is my XP
satoryu
1
2.4k
音のような言葉 〜ちゃちゃっとチャットで楽しむちょっとしたコツ〜 / words like sounds
satoryu
1
4k
ふらっと立ち寄れる 廊下のある風景 - フラットでオープンネスがもたらす魅力 / The Corridor
satoryu
1
3.2k
Make it fun
satoryu
1
4.4k
なぜ私はチームにい続けるのか。あるいは、エンジニアとしての成長のためのチームの活用について。 / Why I continue to be in the team #RSGT2021
satoryu
0
6.6k
リモート時代のソロプログラミング - soloprogramming for work from home
satoryu
0
1.8k
Why do you fear contributing OSS? #xpjug
satoryu
5
13k
あるOSSの死と再生、それとこれから先 / How an OSS also arises
satoryu
0
370
Other Decks in Technology
See All in Technology
"優秀な誰か"の下位互換にならないために
yut0naga1_fa
1
1.7k
今さら理解するウェブフォントver.2026
takanorip
3
680
パッチ更新でterraform initが落ちた日
grimoh
1
120
Deep Data Security 機能解説
oracle4engineer
PRO
2
790
PagerDuty Tech Hub-鳴らすけれど、人は動かない
ezaki
0
120
Datadog の学び方 - あるいは、オブザーバビリティを学ぶとは何か
mananyuki
1
550
ブラウザとサーバーから考えるAI時代のフロントエンド監視
shogo4131
3
860
大型犬好きによるPugの紹介
yamanoku
1
150
OSC2026on_the-world-is-waiting-for-your-voice.pdf
naruoga
0
370
脆弱性診断って、何をしているの? 〜弱点を見つけて、会社の改善につなげるまで〜
keeg
0
880
初対面のメンバーがチームを組み、Claude Codeでゼロからサービスをリリース
mkdev10
1
120
事業活動を AI Ready にする攻めと守りのデータエンジニアリング / data-engineering-for-ai-ready-business
pei0804
7
2.6k
Featured
See All Featured
From Legacy to Launchpad: Building Startup-Ready Communities
dugsong
0
350
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
18k
SERP Conf. Vienna - Web Accessibility: Optimizing for Inclusivity and SEO
sarafernandez
2
1.6k
The Spectacular Lies of Maps
axbom
PRO
1
1.1k
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
1
450
[RailsConf 2023] Rails as a piece of cake
palkan
59
7.1k
A brief & incomplete history of UX Design for the World Wide Web: 1989–2019
jct
2
530
Claude Code どこまでも/ Claude Code Everywhere
nwiizo
68
59k
Raft: Consensus for Rubyists
vanstee
142
7.8k
Lightning Talk: Beautiful Slides for Beginners
inesmontani
PRO
2
730
The Impact of AI in SEO - AI Overviews June 2024 Edition
aleyda
6
1.2k
Test your architecture with Archunit
thirion
2
2.4k
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