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
Aerospikeで大規模データを扱う
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
miuranobuaki
May 09, 2016
Technology
2.1k
1
Share
Aerospikeで大規模データを扱う
Aerospike Meetup #3での発表資料です。
#4で発表した際に若干追加したので、
資料を更新しました
miuranobuaki
May 09, 2016
More Decks by miuranobuaki
See All by miuranobuaki
組織の変化に必要なことは 投資ではないだろうか? / What is needed to change the organization Isn't it an investment?
miuranobuki
2
4.1k
Scrumのロールだけでは足りなかったピースとしてのマネージャー / The roll of Scrum wasn't enough. Manager as a piece
miuranobuki
14
4.6k
普通の開発メンバーが リーダーになってやったこと
miuranobuki
21
14k
Other Decks in Technology
See All in Technology
Keeping Ruby Running on Cygwin
fd0
0
180
サイボウズ 開発本部採用ピッチ / Cybozu Engineer Recruit
cybozuinsideout
PRO
10
79k
運用システムにおけるデータ活用とPlatform
sansantech
PRO
0
130
20260428_Product Management Summit_Loglass_JoeHirose
loglassjoe
3
3.8k
AIでAIをテストする - 音声AIエージェントの品質保証戦略
morix1500
1
140
AWS DevOps Agentはチームメイトになれるのか?/ Can AWS DevOps Agent become a teammate
kinunori
6
770
Revisiting [CLS] and Patch Token Interaction in Vision Transformers
yu4u
0
400
AIが盛んな時代に 技術記事を書き始めて起きた私の中での小さな変化
peintangos
0
190
扱える不確実性を増やしていく - スタートアップEMが考える「任せ方」
kadoppe
0
320
Agents CLI と Gemini Enterprise Agent Platform で マルチエージェント開発が楽しくなる!
kaz1437
0
150
Shipping AI Agents — Lessons from Production
vvatanabe
0
290
[OpsJAWS 40]リリースしたら終わり、じゃなかった。セキュリティ空白期間をAWS Security Agentで埋める
sh_fk2
3
250
Featured
See All Featured
A Soul's Torment
seathinner
6
2.7k
Lightning Talk: Beautiful Slides for Beginners
inesmontani
PRO
1
530
The B2B funnel & how to create a winning content strategy
katarinadahlin
PRO
1
340
Discover your Explorer Soul
emna__ayadi
2
1.1k
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
160
Odyssey Design
rkendrick25
PRO
2
580
The Invisible Side of Design
smashingmag
303
52k
Six Lessons from altMBA
skipperchong
29
4.2k
Between Models and Reality
mayunak
3
270
Designing Powerful Visuals for Engaging Learning
tmiket
1
350
Building Flexible Design Systems
yeseniaperezcruz
330
40k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
47
8.1k
Transcript
Aerospike Ͱ େنσʔλΛѻ͏ ࡾӜ৳໌ גࣜձࣾαΠόʔΤʔδΣϯτ / גࣜձࣾRightSegment 2016/08/02 - Aerospike
meetup
ࣗݾհ ࡾӜ৳໌ (@miuranobuak) גࣜձࣾαΠόʔΤʔδΣϯτ ΞυςΫελδΦ גࣜձࣾRightSegment ʹͯ PrivateDMP Λ։ൃ ΤϯδχΞ
Podcast (http:/ /lean-agile.fm/)
ࠓ͓͢Δ͜ͱ ɾAerospike ΛͲ͏͍ͬͯΔ͔ ɾղܾ͖ͯͨ͠ ɾ࠷ۙࢼͯ͠Έͨ͜ͱ ɾࠓޙͬͯΈΑ͏ͱ͍ͯ͠Δ͜ͱ
AerospikeΛͲ͏͍ͬͯΔ͔
RightSegmentͰͷ͍ํ ϦΞϧλΠϜϢʔβఆ ͔݅ΒϢʔβΛநग़
RightSegment ߦಈใձһใɾࠂޮՌσʔλͳͲΛੵ ͠ɺDSPΞυωοτϫʔΫͱ࿈ಈͯ͠Ϣʔβͷଐ ੑࠂ৮ΛϕʔεʹߴͳੳʗϚʔέςΟϯ άΛߦ͏͜ͱ͕ՄೳͳϓϥΠϕʔτDMP ແཧཧγϯϓϧʹݴ͏ͱ • ϢʔβʹదͳΞϓϩʔνऔΕΔΑ͏ʹఆ • దͳΓޱͰࠂ৴
ϦΞϧλΠϜϢʔβఆ
ϦΞϧλΠϜϢʔβఆ • ࣄલʹઃఆͨ݅͠ʹ͋ͯ·Δ͔ఆ • 35,000 ʙ 40,000 TPS
શମͷΠϝʔδ
͔݅ΒϢʔβΛநग़
͔݅ΒϢʔβΛநग़ • ݅ʹ߹க͢ΔશϢʔβͷϦετΛ࡞ • 1ϢʔβϦετ ඦ ʙ ઍສ݅ • நग़ͨ͠ϢʔβϦετΛ࿈ܞઌʹૹ৴
• Secondary IndexΛ༻
શମΠϝʔδ
ղܾ͖ͯͨ͠
ղܾ͖ͯͨ͠ • ਪSSDͰͳ͍ͱύϑΥʔϚϯε͕ग़ͳ͍(স) • ίϨΫγϣϯͷIndex͕͑ͳ͍(࣌) • ΫϥΠΞϯτͷઃఆεϖοΫ • αʔόͷઃఆ •
etc... AerospikeͷαϙʔτͱҰॹʹղܾ શྗͰαϙʔτͯ͘͠ΕΔ
ղܾͨ͠ΛϐοΫΞοϓ
ղܾͨ͠ ͦͷ1 λΠϜΞτසൃ • 1ϢʔβͰઍͷ݅ʹͯ·Δ߹͋Δ • Secondary Index ͕ ݪҼ
• େྔRead/Write ͩͱ͑ΒΕͳ͍Β͍͠(࣌) ղܾํ๏ • Secondary Index༗ແͷ ΫϥελΛ࡞Δ • ͖ͬͱࠓͳΒେৎʁ
ղܾͨ͠ ͦͷ2 ΫϥελʹউखʹΈࠐ·ΕΔ • AerospikeͷΫϥελ͍͢͝ศར • ࡞ۀϛε͋Γɺผͷ2ͭͷΫϥελ͕ͬͭ͘͘ • ϊʔυΛΫϥελؒͰҠಈͤ͞Δͱ͖ʹൃੜ ղܾํ๏
• શڥͰNameSpaceΛΘ͚Δ
ղܾͨ͠ ͦͷ3 σʔλআ͕͍͔ͭͳ͍ • আ͕ଟ͍ͱ࣮ࡍʹফ͑Δ·Ͱ͕͔͔࣌ؒΔ • ૣ͘͢Δ͜ͱͰ͖Δ͕ύϑΥʔϚϯε͕མͪΔ • େྔʹআ͢ΔͳΒؾΛ͚ͭͨํ͕ྑͦ͞͏ ղܾํ๏
• σʔλͷੜଘظؒΛͪΌΜͱઃఆ͢Δ • ύʔςΟγϣϯαΠζม͑ͨΒྑ͘ͳͬͨΓ͠·
࠷ۙͬͯΈͨ͜ͱ
࠷৽όʔδϣϯΛࢼͯ͠Έͨ ɾ3.5.15 → 3.9.0.1 όʔδϣϯΞοϓ ɾόʔδϣϯΞοϓҎ֎Կ͍ͯ͠ͳ͍ ͜ΕͰͲΕ͚ͩมΘΔͷ͔
Migration NodeՃΓ͠Λͯ͠IN/OUT͕0ʹͳΔ·Ͱ ɾMigrationThread=1 20h -> 5h ɾMigrationThread=50 4h -> 50min
5ഒͷεϐʔυ!!
ॻ͖ࠐΈੑೳ • Secondary Index Λ༻ • UDFΛར༻ͨ͠ॻ͖ࠐΈ 3.5.15 -> 22,000TPS
3.9.0.1 -> 45,000TPSʂʂ ݶք·ͰݕূͰ͖ͳ͔ͬͨ ͚Ͳɺ·ͩ·͍͚ͩͦ͏
ࠓޙͬͯΈΑ͏ͱ͍ͯ͠Δ͜ͱ
Migration • σʔλྔ͕ଟ͍ͱ Migration ͷෛՙ͕ߴ͍ • σʔλྔ͕ଟ͍ͱόΧʹͳΒͳ͍ • ϦΞϧλΠϜॲཧʹக໋తʹ •
NodeͷՃා͍ • NodeΛൈ͘ͷͬͱා͍
ϋʔυোͷରԠ • ͱݴͬͯϋʔυઈରʹյΕΔ ͯ͞ɺͲ͏ͨ͠ͷ͔ • λΠϜΞτ͕େྔൃੜ͢Δঢ়گආ͚͍ͨ • ͏ҰݸΫϥελͭ͘Εྑ͍Μ͡Ό? • XDRͰ͖Δ͡ΌΜʂ
ͱ͍͏Θ͚Ͱ • ݱࡏXDRڥΛߏஙɺݕূத • ݩͷΫϥελΛ2ͭʹ͚ͯ࡞ • ग़དྷΔݶΓmigrationΛආ͚Δ • όʔδϣϯΞοϓʹॊೈʹରԠͰ͖ΔͷͰʁ
৭ʑͱΛ͖͋͛ͯ·͕ͨ͠
ݱঢ়ͷΈ Aerospike Ͱͳ͍ͱ࣮ݱͰ͖͍ͯͳ͍
͔ͳΓཁٻ͕ߴ͘ͳ͍ͬͯ·͢ ࣮ࡍɺ͍Ͱ͢ɻ αϙʔτੌ͍ʂ
·ͱΊ ɾ͍͚Ͳɺۜͷؙ͡Όͳ͍ ɾσʔλಛੑ Λཧղͯ͠ઃܭ͢Δ ɾmigrationൃੜ࣌ͷෛՙݕূ Λ ɾසൟʹআ͞ΕΔ ߹ݕূ͖͢
࠷ޙʹ ҰॹʹؤுΔ ؒ Λืू͍ͯ͠·͢ʂ େنσʔλ Λ ࠷৽ٕज़ Ͱ ࠷ߴͷՁ Λಧ͚Δ͜ͱʹڵຯ͕͋Δํ
ੋඇɺ͝࿈བྷ͍ͩ͘͞ʂ
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠