Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
AWS Summit Tokyo 2015
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Shuhei Kimura
June 02, 2015
Technology
130
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
AWS Summit Tokyo 2015
Shuhei Kimura
June 02, 2015
More Decks by Shuhei Kimura
See All by Shuhei Kimura
Akka streamsを活用したログ集計に優しいデータフローの構築
kimurashuhei
2
5.9k
pmconf2017
kimurashuhei
0
3.8k
MDH-LT-Thursday-20170126
kimurashuhei
0
1.7k
Other Decks in Technology
See All in Technology
2026TECHFRESH畢業分享會 - 葬送的通靈師:化系統與用戶雜訊成行動訊號
line_developers_tw
PRO
0
1.3k
[AWS Summit Japan 2026]迷っているあなたへ_小さな一歩が、やがて自分を助けてくれる
sh_fk2
1
160
ぼっちではじめた登壇が「51名」「241件」の発信に化けた
subroh0508
1
240
IaC コードを資産へ:AWS CDK 社内ライブラリと横断展開 / aws-summit-japan-2026
gotok365
5
1.1k
日本 Fintech 未来予測レポート 2027〜2028年(手動編集版)
8maki
1
2.5k
Agile and AI Redmine Japan 2026
hiranabe
3
280
Claude Codeをどのように キャッチアップしているか
oikon48
13
8.6k
ザ・データベース、MySQL ~ OSC 2026 Sendai ~
sakaik
0
140
OTel × Datadog で 「AI活用」を計測し、改善に繋げる
shihochan
1
420
SONiC Scale-Up Working Group から探る Scale-UpやUltraEthernet機能の実装方法
ebiken
PRO
2
410
Chainlitで作るお手軽チャットUI
ynt0485
0
280
2026TECHFRESH畢業分享會 - Lightning Talk - 打造精準高效的 MCP 設計模式與測試實務
line_developers_tw
PRO
0
1.3k
Featured
See All Featured
The browser strikes back
jonoalderson
0
1.3k
Stewardship and Sustainability of Urban and Community Forests
pwiseman
0
230
The Mindset for Success: Future Career Progression
greggifford
PRO
0
360
The State of eCommerce SEO: How to Win in Today's Products SERPs - #SEOweek
aleyda
2
11k
Kristin Tynski - Automating Marketing Tasks With AI
techseoconnect
PRO
0
270
YesSQL, Process and Tooling at Scale
rocio
174
15k
Balancing Empowerment & Direction
lara
6
1.2k
Between Models and Reality
mayunak
4
340
How To Speak Unicorn (iThemes Webinar)
marktimemedia
1
490
From π to Pie charts
rasagy
0
210
The Anti-SEO Checklist Checklist. Pubcon Cyber Week
ryanjones
0
170
Ten Tips & Tricks for a 🌱 transition
stuffmc
0
140
Transcript
ʰϦΞϧλΠϜλʔήςΟϯάࠂͷ ৴ɾੳج൫ͷ։ൃͷཪଆʱ d"NB[PO,JOFTJTͷ׆༻d גࣜձࣾαΠόʔΤʔδΣϯτ ΞυςΫελδΦ%ZOBMZTU ଜऺฏ
1SPpMF ໊લ ଜऺฏ4IVIFJ,JNVSB IUUQTXXXGBDFCPPLDPNTIVIFJLJNVSB ॴଐ גࣜձࣾαΠόʔΤʔδΣϯτ
ΞυςΫຊ෦"E5FDI4UVEJP %ZOBMZTU։ൃऀ ܦྺ dࠂޮՌܭଌγεςϜͷ։ൃ d1$ͷ35#ࠂ৴ʹ͓͚Δ࠷దԽΤϯδϯͷઃܭ։ൃ d41͚ւ֎%41γεςϜͷઃܭ։ൃ d41͚μΠφϛοΫϦλʔήςΟϯάࠂ৴γεςϜͷઃܭ։ൃ
"HFOEBPGUIJTTFTTJPO ΦϯϥΠϯࠂͷ͍· ࡢࠓͷࠂ৴ʹٻΊΒΕΔ͜ͱԿ͔ʁ %ZOBMZTU͕ఏڙ͢ΔՁͱԿ͔ʁ %ZOBMZTUͷγεςϜߏஙʹ͓͚Δίϯηϓτ γεςϜͷେنԽʹͬͯ໘ͨ͠՝ͨͪ ϩάͷྔ͚ͩͰͳ͘ϩάͷ༰͕ଟ༷Խ͢Δ͜ͱʹରԠ͠ʹ͍͘ σʔλͷར༻༻్ͷଟ༷Խͱॊೈੑͷ Ϩϙʔτूܭج൫㱠ΞυϗοΫੳج൫ "NB[PO,JOFTJTͷ࠾༻ͱͦͷಋೖͷաఔ
ͳͥ,JOFTJTͰղܾͰ͖Δͱߟ͔͑ͨʁ ,JOFTJTΛίΞͱ͢Δσʔλ׆༻ઓུͱ࣮ݱͨ͠γεςϜʹ͍ͭͯ
4JHOJpDBOUDIBOHFTPGUIFFOWJSPONFOU GPSPOMJOFEJTQMBZBEWFSUJTJOH dΦϯϥΠϯσΟεϓϨΠࠂΛऔΓר͘ڥd
8IBU`TIBQQFOJOH ΑΓࡉ͔ͳλʔήςΟϯά͕Մೳͳ࣌ 8)ʹ͓͚Δ8IP͕ಛʹॏཁࢹ͞ΕΔ Ϣʔβͷߦಈʹجͮ͘ࠂ৴ ࠂ༧ࢉͷదͳͱ30*ޮͷ্ ࠂग़ߘͷҙࢥܾఆϦΞϧλΠϜԽdNTFDPSEJFd ͍ͭ Ͳ͜Ͱ ͩΕʹ ͲΜͳࠂΛ͍͘ΒͰग़͢PSग़͞ͳ͍
3FBM5JNF#JEEJOHऔҾͨΓલͷੈք ࠂ৴ٕज़ʑɺߴʹෳࡶʹ "SFZPVBOVTFSXIPN XFTIPVMEEFMJWFSPVSBE
8IBUJT
3FBM5JNF6TFS1FSTPOBMJ[FE%ZOBNJD"ETFSWJDF1SPWJEFS JTGVMMZQPXFSFECZ
,FZXPSET 3FBM5JNFdԿ͕ϦΞϧλΠϜͳͷ͔ d αΠτϢʔβߦಈ͕ϦΞϧλΠϜʹࠂʹө͞ΕΔ 35#͔࣌ͩΒͦ͜Ͱ͖Δ 6TFS1FSTPOBMJ[FE"EdϨίϝϯυٕज़d Ϣʔβͷझຯᅂʹ߹Θͤͯࠂ͕μΠφϛοΫʹมԽ
,FZ$PODFQUGPS%ZOBMZTU4ZTUFN"SDIJUFDUVSF γεςϜӡ༻ίετখ͘͞ dνʔϜόϥϯεΛ࠷దԽɺ0QT %FW #J[d গ͠ઌΛݟӽͨ͠εέʔϥϏϦςΟ
dεϐʔυΛ༏ઌͯ͠ҙਤతʹແࢹͯ͠ෛ࠴Λ࡞ΔέʔεͪΖΜ͋Γ·͢d ࡞Βͳͯ͘ࡁΉͷ࡞Βͳ͍ dͦͦ࡞Βͳ͚Εϝϯς͠ͳͯ͘Α͍d d"8440"ͳͷͰιϦϡʔγϣϯ୳͢ɺ͘͠૬ஊ͢Εݟ͔ͭΔd
1SPCMFNTXFGBDFE XIFOCVTJOFTTTZTUFNFYQBOET dγεςϜͷେنԽʹͬͯ໘ͨ͠՝ͨͪd
%BUBWPMVNF%BUBWBSJBUJPO B[B B[D ʜ GPSFBDITFSWFS ʜ ৴ɾܭଌϩάͷσʔλӡൖϑϩʔ ᶃqVFOUEESJWFOEBUBPQFSBUJPO
ᶄ43FETIJGUͷܧଓ$01:աఔͰςʔϒϧఆٛΛ༰қʹมߋͰ͖ͳ͍ σʔλͷྔͷྀ̋σʔλͷ࣭ͷྀ˚ USBDLJOHMPHT GPSCJHEBUBBOBMZTJT PO3FETIJGU$MVTUFS TFOENFTTBHF MPHJTVQMPBEFE DPQZXPSLFS ˞ʰ͋ͷใཉ͍͠ͳ͊ɻɻʱ˰ΧϥϜΛՃʂʁ
%J⒎FSFOURVFSZSFRVJSFNFOUGSPNTBNFEBUBTPVSDF B[B B[D ʜ GPSFBDITFSWFS BDDFTTMPHT ʜ ৴࣮ੳͷͨΊͷΫΤϦ ؤுΕ3FETIJGUͰͳΜͰͰ্ཱ͖ͨͪ͛ظʂ˰ͦΖͦΖݟ࣌͢ظʁ USBDLJOHMPHT
GPSCJHEBUBBOBMZTJT PO3FETIJGU$MVTUFS TFOENFTTBHF MPHJTVQMPBEFE DPQZXPSLFS ΞυϗοΫΫΤϦͱۀܥΫΤϦ͕ಉډ͍ͯ͠ΔͷͦΖͦΖݶք ˞8-.ͳͲͰͷΫΤϦ༏ઌௐ தؒςʔϒϧઃܭͳͲͰͲ͏ʹͳΒͳ͍ਫ਼ਆతෛ୲ ࠂओ༷͚ͷϨϙʔτूܭΫΤϦ
'SFTI%BUB PS#JH%BUB σʔλͷ͕ԿΑΓॏཁʁ աڈͷ৴࣮ͷͳͲσʔλͷྔ͕ॏཁʁ ͋Δࠂͷ৴අ༻ޮՌͲ͏͔ʁ ͋Δࠂͷࡏݿٴͼ୯ՁͲ͏͔ʁ 3FETIJGU·ͰσʔλΛӡΜͰ͔Β͕ελʔτͰͪΐͬͱ͍ ͲΜͳͷࠂΛͲΕ͚ͩ৴͔ͨ͠ʁ ͋ΔͷࠂΛ৴͍͗ͯ͢͠ͳ͍͔ʁ
)PXXFTPMWFEUIFTFQSPCMFNT CZVTJOH"NB[PO,JOFTJT d,JOFTJTͷ࠾༻ͱͦͷಋೖͷաఔd
8IZ"NB[PO,JOFTJT
$PODFQU.BUDIFT JOQVUOPVUQVU ,JOFTJT4USFBNΛىͱͨ͠ σʔλϑϩʔ͕ཁ݅ʹ߹͍ͦ͏ʁʁ 'SFTI%BUB#JH%BUB 4·ͰӡΕ3FETIJGUͱͷ*OUFHSBUJPOͰ͖Δʁʁ ͦͷͰσʔλΛऔΓग़ͯ͠ॲཧ͢Ε'SFTIσʔλͱͯ͠ѻ͑Δʁʁ ੳج൫ͱूܭج൫ͷׂͷ σʔλϑϩʔΛγϯϓϧʹͭͭ͠ੳج൫ڧԽͷͨΊͷࢪࡦΛଧ͍ͪͨ 40"ͷࢥͦͷ··ʹ৭ʑͳαʔϏεͱ࿈ܞͰ͖Δʁʁ
σʔλӡൖϑϩʔͷ֦ுdେ·͔ͳྲྀΕd B[B B[D ʜ DPOTVNFS" DPOTVNFS# DPOTVNFS$ BTQSPEVDFS DPOTVNFS% DPOTVNFS&
োੑͷߴ͍ϩάऩूύΠϓϥΠϯͱͯ͠ͷׂʂ ϩάऩूαʔό͍ΒͣɺqVFOUECVGGFSͯ͠1VU3FDPSET
σʔλӡൖϑϩʔͷ֦ுdࢼߦࡨޡͷաఔd B[B B[D ʜ DPOTVNFS" DPOTVNFS# DPOTVNFS$ BTQSPEVDFS DPOTVNFS% DPOTVNFS&
1VU3FDPSET"1*͕·ͩͳ͔ͬͨ ˰qVFOUEͰQVU͕͍͔ͭͳ͍ qVFOUEͰεϨουΛ૿͢ͷͪΐͬͱ ˰ΞϓϦέʔγϣϯαʔόͰͷ1VU3FDPSEͰҰ࣌ରॲ 1VU3FDPSET"1*͕ϦϦʔε͞ΕΔ˞"844%,GPS3VCZW͔Β ˰Ͳ͏ߟ͑ͯCVGGFSͯ͠qVFOUEͰॲཧͤ͞Δͷ͕҆ఆ͢Δʂ
σʔλӡൖϑϩʔͷ֦ுd#FGPSF"GUFSd B[B B[D ʜ USBDLJOHMPHT TFOENFTTBHF MPHJTVQMPBEFE DPQZXPSLFS B[B B[D
ʜ TVQMPBEDPOTVNFS USBDLJOHMPHT DPOUJOVFTDPQZ #FGPSF "GUFS
σʔλӡൖϑϩʔͷ֦ுd#FGPSF"GUFSd B[B B[D ʜ USBDLJOHMPHT TFOENFTTBHF MPHJTVQMPBEFE DPQZXPSLFS B[B B[D
ʜ TVQMPBEDPOTVNFS USBDLJOHMPHT DPOUJOVFTDPQZ #FGPSF "GUFS 4ͷσʔλͷӡͼํΛ,JOFTJTΛܦ༝͢Δํࣜʹมߋ ˰,JOFTJT$POTVNFSΞϓϦΛ࣮͠ɺϦΞϧλΠϜͳԿ͔Λ͢ΔڥΛ࣮ݱ ˰qVFOUEͷׂͷཧ 424 4ͱͷJOUFHSBUJPOͷղফ ,JOFTJT1SPEVDFSͱͯ͠ͷׂ
ੳج൫ͱूܭج൫ͷׂͷ B[B B[D ʜ TVQMPBEDPOTVNFS USBDLJOHMPHT 3VOOJOH4QBSLXJUI :"3/PO&.3$MVTUFS DPOUJOVFTDPQZ ఆܗϨϙʔτۀܥॲཧΛ3FETIJGU͔Β&.3
˰ੳܥΫΤϦΛੳऀ͕ετϨεͳ͛͘ΒΕΔڥͷ࣮ݱ ˰3FETIJGUʹఆظతʹ$01:ͯ͠ϩάσʔλΛͨΊΔ ˞ Γ͍ͨ͜ͱΛ42-ҰຊͰهड़Ͱ ͖ΔͰ3FETIJGUੳऀϑϨϯ υϦʔ ˞ ੳΞϓϩʔνͷ͔Βҙ֎ͱ ੜϩάΛىͱͨ͠ੳ͕ଟΊ 3FQPSUJOH SFQPSUBQJ BOBMZTU BEWFSUJTFST
ϦΞϧλΠϜσʔλॲཧΞϓϦέʔγϣϯͷಋೖྫ ࠂओ༷αΠτΛ๚ΕͨϢʔβ͕Έ͕ͨ %ZOBMZTUͰཧ͢Δ%#ʹ͋Δ͔൱͔ΛνΣοΫ͍ͨ͠ TVQMPBEDPOTVNFS DPWFSBHFDPVOUDPOTVNFS GPPUQSJOUTUSFBN JOQVU qVFOUEͰ1VU3FDPSET
ඵؒdSFDPSE͘Β͍QVU TIBSEͰTUSFBNΛ࡞ PVUQVU ϓϩηεͰDPOTVNFSΛ&$্Ͱ࣮ߦͤ͞Δ TDBMBBQQ ,$-Ͱ࣮ EBFNPOԽͯ͠QSPDFTTཧ TUSFBN͔ΒҰׅͰ(FU3FDPSET͠ɺ ·ͱΊͯॲཧͯ݁͠ՌΛ&MBTUJ$BDIF
ϦΞϧλΠϜσʔλॲཧΞϓϦέʔγϣϯͷಋೖྫ DPWFSBHFDPVOUDPOTVNFSQSPD GPPUQSJOUTUSFBN ,$-ͷڍಈཧղ CVJMEͨ͠ΞϓϦͷ&$ͷσϓϩΠQSPD ॳճىಈ࣌ʹ%ZOBNP%#DIFDLQPJOUཧ༻ͷUBCMF͕࡞͞ΕΔ νΣοΫϙΠϯτΛߋ৽͠ͳ͕ΒΞϓϦTIBSEݸͷσʔλΛॲཧ ͏ҰͭΞϓϦΛ&$ʹσϓϩΠQSPD
DIFDLQPJOUཧςʔϒϧΛࢀরͯ͠ɺݸTIBSEΛୣͬͯॲཧ։࢝ TIBSEQSPDͰॲཧ͞ΕΔঢ়ଶʹͳΔ QSPDΛTIVUEPXO͢ΔͱQSPD͕TIBSEݸॲཧ࢝͠ΊΔ DPWFSBHFDPVOUDPOTVNFSQSPD GFFEDPWFSBHFTUPSF DIFDLQPJOUNBOBHFUBCMF leaseKey checkpoint leaseOwner shard-0000 seq-abcd123 consumer01:xxx x shard-0001 seq-efgh456 consumer02:yyy y ˞ ͲͷTIBSEΛͲ͜·ͰͩΕ͕ॲཧͨ͠ʁ ˞,$-ඇৗʹߴػೳͰศར
ϦΞϧλΠϜσʔλॲཧΞϓϦέʔγϣϯͷಋೖྫ DPWFSBHFDPVOUDPOTVNFSQSPD GPPUQSJOUTUSFBN ,$-ར༻࣌ͷϋϚͬͨϙΠϯτ ϐʔΫ࣌ʹҰํͷQSPD͕ؤுΓɺଞํͷQSPD͕ؤுΒͳ͍ %ZOBNP%#ͷDIFDLQPJOUཧςʔϒϧͷ8SJUFΩϟύΦʔόʔ ॳظ͕8SJUF$BQBDJUZͰ࡞͞ΕΔͷͰॲཧͷ୯Ґɺ༰ʹΑͬͯͰΓͳ͍ͷͰ૿͢
৽͍͠όʔγϣϯͷΞϓϦΛσϓϩΠͨ͠ΒͲ͏ͳΔͷʁ QSPD QSPDΛىಈ TIBSEݸͷ߹ݹ͍QSPD QSPD͕ࣄΛୣΘΕΔ ࣮࣭SPMMJOHVQEBUFతͳڍಈΛࣔ͢ QSPD QSPDΛด͔ͯ͡ΒQSPD QSPDΛىಈͨ͠΄͏͕͍͍ͱ͖͋Δ͔ʁ TIBSE͕Γͳ͍ͷͰBQJܦ༝ͰTQMJUTIBSEͨ͠ɺΞϓϦͲ͏ͳΔʁ DIFDLQPJOUཧςʔϒϧ͕Α͠ͳʹͬͯ͘ΕΔ TQMJUTIBSE͢ΔલͷTIBSEͷॲཧΛऴ͑ͨΒ৽͍͠TIBSEͰͷॲཧΛҾ͖ܧ͙ DPWFSBHFDPVOUDPOTVNFSQSPD GFFEDPWFSBHFTUPSF DIFDLQPJOUNBOBHFUBCMF ˞ ͜ͷTIBSEͷͩΕʁ ˞,$-ඇৗʹߴػೳͰศར leaseKey checkpoint leaseOwner parentShardId shard-0002 seq-abcd123 consumer01:xx xx {"shard-0000"} shard-0003 seq-efgh456 consumer02:yy yy {"shard-0000"}
ϦΞϧλΠϜσʔλॲཧΞϓϦέʔγϣϯͷಋೖྫ ୈࡾऀ৴ͱ35#৴ ߹ΘͤͯͲΕ͘Β͍৴Մೳͳػձ͕͋ͬͨͷ͔Γ͍ͨʂ BEDBOEJEBUFDPOTVNFS BETUSFBN CJETUSFBN
CJEDBOEJEBUFDPOTVNFS ෳͷTUSFBNͷσʔλΛ͍͍ͨঢ়گͰͲ͏͢Δʁ BETUSFBNͷྲྀྔ SQT TIBSE CJETUSFBNͷྲྀྔ SQT TIBSE
ϦΞϧλΠϜσʔλॲཧΞϓϦέʔγϣϯͷಋೖྫ BEDBOEJEBUFDPOTVNFS BETUSFBN CJETUSFBN CJEDBOEJEBUFDPOTVNFS ෳͷTUSFBNͷσʔλΛ͍͍ͨঢ়گͰͲ͏͢Δʁ
BETUSFBNͷྲྀྔ SQT TIBSE CJETUSFBNͷྲྀྔ SQT TIBSE %ZOBMZTUͰɺɺ DPOTVNFSTUSFBNຖʹͦΕͧΕ࣮͢Δ DPOTVNFSͷதͰผͷTUSFBNʹ࠶QSPEVDF͢ΔॲཧΛೖΕΔ DBOEJEBUFTUSFBNͷDPOTVNFSͰతͷॲཧΛ࣮͢Δʂ DBOEJEBUFDPOTVNFS DBOEJEBUFTUSFBN
ϦΞϧλΠϜσʔλॲཧΞϓϦέʔγϣϯͷಋೖྫ BEDBOEJEBUFDPOTVNFS BETUSFBN CJETUSFBN CJEDBOEJEBUFDPOTVNFS ෳͷTUSFBNͷσʔλΛ͍͍ͨঢ়گͰͲ͏͢Δʁ
BETUSFBNͷྲྀྔ SQT TIBSE CJETUSFBNͷྲྀྔ SQT TIBSE (FU3FDPSETͨ͠ͷΛू͠ɺ ϨίʔυΛݮΒͯ͠࠶QSPEVDFʂ DBOEJEBUFDPOTVNFS
ϦΞϧλΠϜͳॲཧͱόονॲཧd0WFSWJFXd "EWFSUJTJOH 4JUF5SBDLJOH "E5SBDLJOH GFFECBDL GFFECBDL DBNQBJHONBOBHFNFOUYSFQPSUJOHGPS"EWFSUJTFS 3VOOJOH4QBSLXJUI :"3/PO&.3$MVTUFS
4VNNBSZPGUIJTTFTTJPO ΦϯϥΠϯࠂͷ͍· ࡢࠓͷࠂ৴ʹٻΊΒΕΔ͜ͱԿ͔ʁ %ZOBMZTU͕ఏڙ͢ΔՁͱԿ͔ʁ %ZOBMZTUͷγεςϜߏஙʹ͓͚Δίϯηϓτ γεςϜͷେنԽʹͬͯ໘ͨ͠՝ͨͪ ϩάͷྔ͚ͩͰͳ͘ϩάͷ༰͕ଟ༷Խ͢Δ͜ͱʹରԠ͠ʹ͍͘ σʔλͷར༻༻్ͷଟ༷Խͱॊೈੑͷ Ϩϙʔτूܭج൫㱠ΞυϗοΫੳج൫ "NB[PO,JOFTJTͷ࠾༻ͱͦͷಋೖͷաఔ
ͳͥ,JOFTJTͰղܾͰ͖Δͱߟ͔͑ͨʁ ,JOFTJTΛίΞͱ͢Δσʔλ׆༻ઓུͱ࣮ݱͨ͠γεςϜʹ͍ͭͯ
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠