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
ゆううきの研究開発まとめ (2019年2月版) / The summary of yuuki'...
Search
Yuuki Tsubouchi (yuuk1)
February 13, 2019
Research
1
4.8k
ゆううきの研究開発まとめ (2019年2月版) / The summary of yuuki's research and development in 02/2019
さくらインターネット研究所 研究会 2019.02.13
これまでの研究開発や開発運用について、さくらインターネット研究所内の研究会で話しました。
研究員 坪内佑樹
Yuuki Tsubouchi (yuuk1)
February 13, 2019
Tweet
Share
More Decks by Yuuki Tsubouchi (yuuk1)
See All by Yuuki Tsubouchi (yuuk1)
博士論文公聴会: Scaling Telemetry Workloads in Cloud Applications: Techniques for Instrumentation, Storage, and Mining / PhD Defence
yuukit
0
19
博士学位論文予備審査 / Scaling Telemetry Workloads in Cloud Applications: Techniques for Instrumentation, Storage, and Mining
yuukit
1
1.7k
MetricSifter:クラウドアプリケーションにおける故障箇所特定の効率化のための多変量時系列データの特徴量削減 / FIT 2024
yuukit
2
190
工学としてのSRE再訪 / Revisiting SRE as Engineering
yuukit
19
13k
Cloudless Computingの論文紹介
yuukit
2
480
#SRE論文紹介 Detection is Better Than Cure: A Cloud Incidents Perspective V. Ganatra et. al., ESEC/FSE’23
yuukit
3
1.8k
エンジニアのためのSRE論文への招待 / Introduction to SRE Papers for Engineers
yuukit
2
11k
博士課程での研究まとめ 2023年1月版 / Summary of my research in the PhD course
yuukit
1
280
AI時代に向けたクラウドにおける信頼性エンジニアリングの未来構想 / DICOMO2022 6A-1
yuukit
7
3k
Other Decks in Research
See All in Research
2038年問題が思ったよりヤバい。検出ツールを作って脅威性評価してみた論文 | Kansai Open Forum 2024
ran350
8
3.8k
Global Evidence Summit (GES) 参加報告
daimoriwaki
0
240
한국어 오픈소스 거대 언어 모델의 가능성: 새로운 시대의 언어 이해와 생성
inureyes
PRO
0
230
DeepSeek を利用する上でのリスクと安全性の考え方
schroneko
3
770
地理空間情報と自然言語処理:「地球の歩き方旅行記データセット」の高付加価値化を通じて
hiroki13
1
190
Batch Processing Algorithm for Elliptic Curve Operations and Its AVX-512 Implementation
herumi
0
110
Satellite Sunroof: High-res Digital Surface Models and Roof Segmentation for Global Solar Mapping
satai
3
140
知識強化言語モデルLUKE @ LUKEミートアップ
ikuyamada
0
230
Poster: Feasibility of Runtime-Neutral Wasm Instrumentation for Edge-Cloud Workload Handover
chikuwait
0
350
移動ビッグデータに基づく地理情報の埋め込みベクトル化
tam1110
0
240
BtoB プロダクトにおけるインサイトマネジメントの必要性 現場ドリブンなカミナシがインサイトマネジメントに取り組むワケ / Why field-driven Kaminashi is working on insight management
kaminashi
0
200
ECCV2024読み会: Minimalist Vision with Freeform Pixels
hsmtta
1
420
Featured
See All Featured
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
7
640
A Tale of Four Properties
chriscoyier
158
23k
Being A Developer After 40
akosma
89
590k
Building a Scalable Design System with Sketch
lauravandoore
461
33k
Building a Modern Day E-commerce SEO Strategy
aleyda
38
7.1k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.4k
Code Reviewing Like a Champion
maltzj
521
39k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
4
430
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
27
1.9k
How STYLIGHT went responsive
nonsquared
98
5.4k
Bootstrapping a Software Product
garrettdimon
PRO
306
110k
Fontdeck: Realign not Redesign
paulrobertlloyd
83
5.4k
Transcript
͘͞ΒΠϯλʔωοτ גࣜձࣾ (C) Copyright 1996-2019 SAKURA Internet Inc ͘͞ΒΠϯλʔωοτ ݚڀॴ
Ώ͏͏͖ͷݚڀ։ൃ·ͱΊ (20192݄൛) 2019/02/13 ݚڀһ ௶ ༎थ ͘͞ΒΠϯλʔωοτݚڀॴ ݚڀձ 2019.02.13 @yuuk1t / id:y_uuki
2 1. ݚڀςʔϚ 2. େֶɾେֶӃ࣌ͷݚڀ 3. ΤϯδχΞͱͯ͠ͷݚڀ։ൃ 4. ͘͞ΒͰͷݚڀ։ൃ͍͖ͬͯ 5.
·ͱΊ ΞδΣϯμ
1. ݚڀςʔϚ
4 ਓؒͱίϯϐϡʔλʔͷؔੑͱӡ༻ ίϯϐϡʔλʔ γεςϜ Ϣʔβʔ ։ൃӡ༻ऀ ӡ༻ ӡ༻ • ։ൃӡ༻ऀ͚ͷίϯϐϡʔλʔγεςϜଟ͋Γ
Ϣʔβʔͱ։ൃӡ༻ऀͷ۠ผᐆດʹͳ͍ͬͯΔ • ਓؒͱίϯϐϡʔλʔͷؔੑมԽͯ͠”ӡ༻”͕ ଘࡏ͢Δ͜ͱʹมΘΓͳ͍ “ӡ༻”: มߋ => ҭ => ର ݱ࣮ίϯϐϡʔλʔͷมߋ͕ ා͍
5 ݚڀςʔϚ: ӡ༻Λָ͘͢͠Δ ɾίϯϐϡʔλʔγεςϜͷڪාΛͳ͘͠ӡ༻Λָ͠ΊΔΑ͏ʹ͢ Δ ɾָ͘͠ͳ͍ͱਐ·ͳ͍ ɾίϯϐϡʔλʔ͕ਓͷࣄΛୣ͍ͬͯͬͨ͋ͱʹΔͷͷҰͭʹ ίϯϐϡʔλʔͷӡ༻Λָ͠Ή͜ͱͰͳ͍͔
6 ɾා͞ͷݪҼ৴པੑͷԼ ɾ৴པੑΛ੍ޚ͠ɺมߋΛ࠷େԽ͢Δ ɾมߋͰ͖Δ͜ͱָ͍͠ Site Reliability Engineering (SRE) https://blog.yuuk.io/entry/2019/thinking-sre
7 ɾ؍ଌͱ࣮ݧͷϧʔϓΛߴʹճ͠ɺ৴པੑΛ੍ޚͭͭ͠มߋΛ ߴΊΔγεςϜϏδϣϯ Experimentable Infrastructure
8 ɾมߋ͕͍͠ͷσʔλΛͭγεςϜ ɾ͜Ε͔Βਓ͕ؒੜ͢ΔίϯςϯπΑΓ ػց͕ੜ͢Δσʔλ͕ٸ૿ ɾOSϛυϧΣΞͷϨΠϠͷΈͰ͋ΒΏΔ ཁٻΛຬͨ͢ͷࠔ ɾΞϓϦέʔγϣϯӡ༻ٕज़·Ͱ౿ΈࠐΜ ͩਨ౷߹తͳΞϓϩʔν͕ඞཁ Data-Intensive Applications
2. ֶ෦ɾେֶӃ࣌ͷݚڀ
10 ɾେֶֶ෦࣌ ɾॏෳഉআετϨʔδͷͨΊͷSHA-1ܭࢉγεςϜͷSSE໋ྩʹΑΔߴ εϧʔϓοτԽ ɾେֶӃത࢜લظ՝ఔ࣌ ɾTCP/IPελοΫʹ͓͚ΔνΣοΫαϜܭࢉͷGPUΦϑϩʔσΟϯά 2011~2013
11 ϓϩηοαͷΩϟογϡϝϞϦͱSIMDԋࢉ
12 GPGPUͱLinuxΧʔωϧύέοτॲཧ ɾLinuxΧʔωϧͷTCP/IPελοΫॲཧͷ͏ͪɺTCPϔομͷνΣοΫα ϜܭࢉΛGPUʹ·͔ͤͯεϧʔϓοτΛ্ͤ͞Δ ɾGPUͷϝϞϦ্ʹରσʔλ͕ἧͬͯͳ͍ͱGPUͷ࣮ޮޮ͕͍ ɾύέοτ܊Λ1ͭͷετϦʔϜʹ٧ΊࠐΜͰɺGPU্Ͱ·ͱΊͯܭࢉ ͤ͞Δ ɾ1500όΠτఔͷύέοτͰੑೳ͕ͰͣɺJumbo Frame (7000ό
Πτ͙Β͍) ར༻࣌ʹطଘख๏ΑΓεϧʔϓοτ͕ߴ͘ͳΔ
13 ֶ෦ɾେֶӃ࣌ͷৼΓฦΓ ɾϓϩηοαɺฒྻॲཧɺLinuxΧʔωϧɺTCP/IPʹֶ͍ͭͯͨ ɾ͜ͷ͋ͨΓͷॲཧϞσϧͱ࣮ߦ࣌ؒɺϦιʔεফඅͷഽײ͕֮ͳΜͱ ͳ͘Θ͔͍ͬͯΔͱɺ্ҐͷWebαʔόσʔλϕʔεΛѻ͏্Ͱϒ ϥοΫϘοΫε͕গͳ͘ݟ͑ͨ ɾ࣮ࡍʹଘࡏ͠ͳ͍Λղ͍͍ͯΔΑ͏ͳؾ࣋ͪʹͳΔ͜ͱ͋ͬͨ ɾاۀʹೖͬͯɺ࣮ࣾձͷҙࣝΛ࣮ײ্ͨ͠ͰɺݚڀͰ͖ΔͱΑΓ Αͦ͞͏ͩͱߟ͑࢝Ίͨ
14 ͜ͷ͜Ζͷϒϩά ɾ΄ͦ΅ͦͱॻ͍͍ͯͨϒϩά͕ಡ·ΕΔΑ͏ʹ
3. ΤϯδχΞͱͯ͠ͷݚڀ։ൃ
16 ɾαʔόࢹαʔϏεͷߏஙͱӡ༻ ɾϒϩάαʔϏεͳͲɺ౷తͳWebαʔϏεͷߏஙͱӡ༻ ɾશαʔϏεͷΠϯϑϥج൫(ԾԽϓϩϏδϣχϯάͳͲ)ͷ։ൃ ͱӡ༻ ɾϓϩδΣΫτϚωδϝϯτɺνʔϜϏϧσΟϯάɺϝϯλϦϯά ɾγεςϜϏδϣϯ͔ΒΛղܾ͢ΔϙδςΟϒΞϓϩʔνͷ࣮ફ ܦݧͨ͠։ൃɾӡ༻
17 ࣌ܥྻσʔλϕʔεͷߏஙɾӡ༻ɾ։ൃ https://blog.yuuk.io/entry/high-performance-graphite https://blog.yuuk.io/entry/the-rebuild-of-tsdb-on-cloud
18 ϨΨγʔγεςϜͷӡ༻վળ
19 ݚڀ։ൃ࣮ 1.௶༎थ, TimeFuzeΞʔΩςΫνϟߏ - ॲཧͱσʔλͱλΠϚʔΛҰମԽͨ͠σʔ λύΠϓϥΠϯ, ΣϒγεςϜΞʔΩςΫνϟ(WSA)ݚڀձ ୈ1ճ, 201712݄23
2.௶༎थ, αʔόϨε࣌ʹ͓͚ΔϔςϩδχΞε࣌ܥྻσʔλϕʔεΞʔΩςΫ νϟ, ΣϒγεςϜΞʔΩςΫνϟ(WSA)ݚڀձ ୈ2ճ, 201805݄12 3.௶༎थ,ݹխେ, TCPଓͷʹΑΔ؆ུԽ͞ΕͨωοτϫʔΫґଘؔάϥϑ ͷՄࢹԽج൫, ୈ3ճΣϒγεςϜΞʔΩςΫνϟ(WSA)ݚڀձ, 201811݄17 ɾࠃࠪಡ͖จ ɾޱ಄ൃද ௶༎थ,ࡔேਓ,ᖛా݈,দխ,Ѩ෦ത,দຊ྄հ, HeteroTSDB: ҟछࠞ߹Ωʔό ϦϡʔετΞΛ༻͍ͨࣗಈ֊ԽͷͨΊͷ࣌ܥྻσʔλϕʔεΞʔΩςΫνϟ, Πϯ λʔωοτͱӡ༻ٕज़γϯϙδϜจू, 2018, 7-15 (2018-11-29), Dec 2018
20 ɾࠪಡ͖จ 1݅ ɾֶज़ߨԋ x 3݅ ɾࠃൃද x 34݅ ɾύωϧσΟεΧογϣϯ
x 4݅ ɾڝٕ ISUCON ຊઓग़ 2ճ ɾϒϩάଟ ࣮·ͱΊ
21 ɾ։ൃͨ͠༰Λݚڀͱͯ͠Έ͠ɺจߘݚڀձൃද ɾ࣮ࡍͷࣾձͷཁٻʹج͍ͮͨҙࣝΛѻ͑ɺϓϩμΫγϣϯͰಈ ࡞͍ͯ͠ΔͷΛจʹॻ͚Δ ɾҰํͰɺ࣮Ͱظతͳ༏ઌʹͳΓ͕ͪͳͨΊɺݚڀΛҭͯ ͍ͯ͘͜ͱ͍͠ ɾͰ։ൃͨ͠ͷͰϓϩμΫΫγϣϯڥͰීٴͤ͞Δʹɺ ୯Ґͷ͕͔͔࣌ؒͬͨ ΤϯδχΞͱͯ͠ͷݚڀ։ൃৼΓฦΓ
4. ͘͞ΒͰͷݚڀ։ൃ͍͖ͬͯ
23 ɾͱαʔόʔؒͷԆݮ ɾσʔληϯλʔͷτϥϑΟοΫϘϦϡʔϜͷݮ ϢϏΩλεσʔληϯλʔ ɾ౷తͳͷΣϒΞϓϦέʔγϣϯ ɾϦΞϧλΠϜͳ࣌ܥྻσʔλΛऩू͢ΔΞϓϦέʔγϣϯ Potentials ͕ࣗఆ͢ΔApplications Challenges ɾϢϏΩλεDCڥͰͷσʔλͷஔɺసૹԆɺނোΛಁա͢Δ
24 ɾϢϏΩλεσʔληϯλʔߏͷ͏ͪɺData-IntensiveྖҬΛ୲ ɾԆͷେ͖ͳࢄڥͰࢄγεςϜͱͯ͠ͷಁաੑΛ୲อ͢Δ͜ ͱ͕՝ ɾ͋ΒΏΔΞϓϦέʔγϣϯΛมߋͳ͘ϢϏΩλεDC্ͰޮՌతʹಈ ࡞ͤ͞Δ͜ͱ͍͠ ɾ·ͣɺΞϓϦέʔγϣϯΛԾఆͯ͠ɺঃʑʹҰൠԽ͍ͯ͘͠ ɾWordPressͳͲͷ౷తͳWebΞϓϦέʔγϣϯ ɾIoTͳͲͷϦΞϧλΠϜ࣌ܥྻσʔλऩूΞϓϦέʔγϣϯ ݚڀํ
25 ݚڀϚΠϧετʔϯ: จߘۦಈ จߘ ༰ ~4݄ IOT45 σʔλΠϯςϯγϒɾϢϏΩλεDCͷ ઃܭ ~5݄
IOT46 TimeFuzeΞʔΩςΫνϟ ~7݄ DICOMO2019 (COMPSAC 2019) ࣌ܥྻσʔλϕʔε ~8݄ FIT 2019 άϥϑߏՄࢹԽ ~9݄ IOTS2019(ࠪಡ) ↑ͷதͰࣗ৴ͷ͋Δͷ
26 ɾจͷʮ͡ΊʹʯΛॻ͚Δ͜ͱΛϚΠϧετʔϯͱͯ͠ɺ࠷ॳ͔ ΒετʔϦʔΛͭ͘Γͳ͕Βɺݚڀ։ൃ͍ͯ͘͠ ɾͻͱͭͷςʔϚΛҭͯΔ ɾݚڀձจɺࠃࠪಡ͖จɺࠃࡍձٞɺδϟʔφϧΛ௨ͨ͡ ࣭ͷ্ ɾจͷͨΊͷίʔυͰͳ͘ɺ࣮ફͰ͑ΔιϑτΣΞͱͯ͠࡞ ΓࠐΜͰ͍͘ ࠓޙͷల