Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Speaker Deck
PRO
Sign in
Sign up for free
超個体的DBクエリキャッシング構想
Yuuki Tsubouchi (yuuk1)
March 22, 2019
Research
6
1.9k
超個体的DBクエリキャッシング構想
Hosting Casual Talks #5 @さくらインターネット福岡オフィス
@yuuk1t / id:y_uuki
Yuuki Tsubouchi (yuuk1)
March 22, 2019
Tweet
Share
More Decks by Yuuki Tsubouchi (yuuk1)
See All by Yuuki Tsubouchi (yuuk1)
AI時代に向けたクラウドにおける信頼性エンジニアリングの未来構想 / DICOMO2022 6A-1
yuukit
5
790
AIOps研究録―SREのための システム障害の自動原因診断 / SRE NEXT 2022
yuukit
7
6.1k
Interactive AIOps
yuukit
0
930
Meltria: マイクロサービスにおける 異常検知・原因分析のための データセットの動的生成システム / Meltria in IOTS2021
yuukit
1
790
AIOpsの研究動向と AIOps向けデータセットの動的生成の研究 / Introducing AIOps and A Dynamic Datasets Generating System
yuukit
1
300
分散アプリケーションの高信頼化のための 運用技術に関する研究 / A Study on Operation Technology for High Reliability of Distributed Applications
yuukit
1
450
ネットワークサービスの依存発見に向いた TCP/UDP通信の低負荷なトレース手法 / Low Overhead TCP-UDP Tracing in Kernel
yuukit
5
3k
クラウドのシステム運用技術に機械学習を応用する研究 / CLOUD AI
yuukit
4
2.5k
TSifter: マイクロサービスにおける性能異常の迅速な診断に向いた時系列データの次元削減手法 / TSifter in proceedings of IOTS2020
yuukit
1
1.6k
Other Decks in Research
See All in Research
テンソル分解の基礎と応用(MIRU2022チュートリアル)
yokotatsuya
9
2.5k
メタ分析講習会@2022
arumakan
0
890
Fairseq初心者向けチュートリアル
tktkbohshi
2
1.1k
ゼロからのスタートアップ立ち上げにおけるリサーチ事例 by @takejune
takejune
2
940
2022松井研研究室紹介
matsui_528
0
550
ABCIで回そう爆速深層学習 (基礎編)
yoshipon
12
6k
Local search and metaheuristics for combinatorial optimization problems
umepon
0
180
CompilerGym CGO 2022 Tutorial Part 2
chriscummins
0
690
ユーザブルセキュリティの最新研究動向 (日本銀行 情報セキュリティ・セミナー) / Usable Security Seminar 2022
ayakohasegawa
0
100
3次元メッシュで表現した結晶構造を用いた材料物性の予測に向けた深層学習モデルの設計 / Design of Deep Learning Model for Predicting Material Properties Using Crystal Structure Represented by Three-Dimensional Mesh
tsurubee
0
420
Structure of NLP Papers
ukyh
2
130
2022年住宅用蓄電池購入者・購入検討者の実態調査・意識調査 - 経済効果シミュレーションの影響度-
satoru_higuchi
0
310
Featured
See All Featured
How New CSS Is Changing Everything About Graphic Design on the Web
jensimmons
213
11k
Music & Morning Musume
bryan
35
4.3k
How to Ace a Technical Interview
jacobian
266
21k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
349
27k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
14
3.8k
Intergalactic Javascript Robots from Outer Space
tanoku
260
25k
Ruby is Unlike a Banana
tanoku
91
9.3k
GraphQLとの向き合い方2022年版
quramy
16
8.4k
For a Future-Friendly Web
brad_frost
166
7.5k
What's in a price? How to price your products and services
michaelherold
229
9.4k
Designing for humans not robots
tammielis
241
24k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
39
13k
Transcript
͘͞ΒΠϯλʔωοτ גࣜձࣾ (C) Copyright 1996-2019 SAKURA Internet Inc ͘͞ΒΠϯλʔωοτ ݚڀॴ
ݸମతDBΫΤϦΩϟογϯά ߏ 2019/03/22 ݚڀһ ௶ ༎थ Hosting Casual Talks #5 @Ԭ @yuuk1t / id:y_uuki
2 1. ΤοδίϯϐϡʔςΟϯάͱWebϗεςΟϯά 2. ݸମܕσʔληϯλʔ 3. ݸମతDBΫΤϦΩϟογϯά 4. ·ͱΊ ΞδΣϯμ
1. ΤοδίϯϐϡʔςΟϯάͱ WebϗεςΟϯά
4 ΤοδίϯϐϡʔςΟϯά ɾIoTɼεϚʔτγςΟɼԾݱ࣮ͳͲਓʑͷ ۙʹίϯϐϡʔςΟϯά͕ਁಁ ɾਓΛͨͤͣʹԠ͠ͳ͚ΕͳΒͳ͍ ɾΫϥυίϯϐϡʔςΟϯάͰɼωοτϫʔ ΫϨΠςϯγ͕େ͖͘ߴʹԠͰ͖ͳ͍ ɾΤϯυϢʔβʔͷۙʢΤοδʣʹαʔόΛ ஔͯ͠ɺཁٻΛॲཧ Cloud
Edge Edge Edge Edge ωοτϫʔΫϨΠςϯγ࠷খԽ
5 WebϗεςΟϯάͷద༻ͱ੍ ɾWordPressͷΑ͏ͳσʔλϕʔεΛͭಈతίϯςϯπ৴ͷͨΊ ͷWebΞϓϦέʔγϣϯΛରͱ͢Δ ɾΞϓϦέʔγϣϯϩδοΫΛมߋͤͣʹɼΞϓϦέʔγϣϯΛΤο δʹஔ͠ɼԠΛ্͍ͨ͠ ɾΤϯυϢʔβʔͷॴʹΑΒͣಉ͡σʔλΛฦ͞ͳ͚Ε͍͚ͳ͍ ɾ֤ΤοδͰಉҰͷσʔλΛಡΈग़͠Ͱ͖ͳ͚ΕͳΒͳ͍
6 ΤοδίϯϐϡʔςΟϯάͷ՝ Edge Cloud ɾΤοδؒͰσʔλΛڞ༗ͯ͠ಡΈॻ͖ ͍ͨ͠ ɾΞϓϦέʔγϣϯΛมߋͰ͖ͳ੍͍ ͷͨΊɼσʔλͷҰ؏ੑΛ؇ΊͮΒ͍ ɾ͋ΔΤοδ͕σʔλΛॻ͖ࠐΉͱ͖ʹ ͯ͢ͷΤοδ͕Ԡ͢Δ·Ͱಉظ
͕ͪඞཁ ɾΤοδؒͰσʔλͷҰ؏ੑΛอͱ͏ͱ ͢ΔͱɼಉظͪʹΑΓੑೳԼ Edge Edge
7 CDNʹΑΔHTTPΩϟογϡ ɾΤοδΛ༻͍ͯԠΛ্ͤ͞ΔͨΊʹɼCDNʹΑΔHTTP Ωϟογϡ͕Α͘ར༻͞ΕΔ ɾಈతίϯςϯπͷHTTPΩϟογϡͰɼ1ͭҎ্ͷDBϨίʔυ ͔Βੜͨ݁͠ՌΛΩϟογϡ͢Δ ɾੜ݁ՌͱDBϨίʔυͷରԠΞϓϦέʔγϣϯϩδοΫʹΑ Γܾ·Δ ɾϨίʔυ͕ߋ৽͞Εͨͱ͖ʹɼͦͷߋ৽͕Өڹ͢Δ෦ͷΈͷ ΩϟογϡΛߋ৽͍ͨ͠
8 WebϗεςΟϯάͷCDNద༻ͷ՝ ɾWebΞϓϦέʔγϣϯ௨ৗɼDBϨίʔυͱੜ݁ՌͷରԠؔ Λอ͍࣋ͯ͠ͳ͍͜ͱ͕ଟ͍ ɾΞϓϦέʔγϣϯΛมߋͤͣʹɼରԠؔΛߏங͢Δ͜ͱ͍͠ ɾରԠ͕ؔΘ͔Βͳ͚ΕɼඇޮͳΩϟογϯάʹͳΔ·ͨݹ ͍σʔλͷಡΈࠐΈΛڐ͢͜ͱʹͳΔ ɾߋ৽ॻ͖ࠐΈΛݕͨ͠ͱ͖ʹͯ͢ͷΩϟογϡΛഁغ͢Δ => ΩϟογϡώοτԼ
ɾTTLʹΑΔΩϟογϡഁغ => Ұ؏ੑͷԼ
2. ݸମܕσʔληϯλʔ
10 ݸମܕσʔληϯλʔ ɾਓʑͷੜ׆ʹίϯϐϡʔςΟϯά༹͕͚ࠐΜͰ͍͘ ɾΫϥυͷϚγϯύϫʔ͕͔͙͋ͨͦ͢͜ʹ͋ΔΑ͏ʹ͍ͨ͠ ɾ֤ΤοδͱΫϥυ͕༗ػతʹڠௐ͢Δ͜ͱ͕ඞཁ ɾ֤ΤοδؒͷσʔλͷҰ؏ੑΛอͪͭͭɼޮΑ͘σʔλΛಡΈॻ ͖Մೳͱ͢Δ ɾ֤ݸମಠཱͯ͠ػೳ͠ͳ͕Βɼ૯ମͱͯ͠౷͞Ε͍ͯΔΑ͏ ʹݟ͑ΔΑ͏ͳݸମతͳσʔληϯλʔΛࢦ͢
ݸମܕσʔληϯλʔ ʹͭͳ͕ΔൃΛͬͯղܾ͢Δ
3. ݸମతΫΤϦΩϟογϯά
13 ࢄڠௐΫΤϦΩϟογϡ ɾΞϓϦέʔγϣϯͷ֎ଆͷσʔλϕʔεͰΩϟογϡΛཧ͢Δ ɾΞϓϦέʔγϣϯαʔόʹଐͨ͠DBϓϩΩγʹΑΓɼDBΫΤϦ ୯ҐͰΩϟογϡ͢Δ ɾΞϓϦέʔγϣϯͱDBϓϩΩγΛΤοδʹஔ͠ɼߴԠͤ͞Δ ɾDBϓϩΩγؒͰڠௐͯ͠ɼΩϟογϡΛڞ༗͢Δ CDNͷ՝Ͱ͋ΔΞϓϦέʔγϣϯมߋඞཁੑΛղܾ
DBCache Proxy 14 DBΫΤϦΩϟογϡΞʔΩςΫνϟ DB Cloud Edge DBCache Proxy App
Web Read/Write Edge Read/Write App Web App Web Ωϟογϡڞ༗
15 దԠతΫϥελ੍ޚ Ұ؏ੑͱੑೳͷτϨʔυΦϑΛղܾ ɾ ڞ༗ΩϟογϡͷҰ؏ੑҡ࣋ͷͨΊʹɼΩϟογϡߋ৽࣌ʹશΤοδ ͷಉظΛͨͳ͚ΕͳΒͳ͍ ɾԠͷ͍ΤοδʹΑΓ͋ΔΤοδͷߋ৽ॲཧ͕ϒϩοΫ͞ΕΔ ɾෆௐͳΤοδͷॲཧΛ֎෦͔Βఀࢭͤ͞ɼΩϟογϡߋ৽ΛఘΊΔ
16 దԠతΫϥελ੍ޚͷ࣮ݱ ɾ(1) ߋ৽ॲཧΛ࣮ߦ͍ͯ͠ΔΤοδ͕ෆௐͳΤοδΛݕग़ ɾ(2) ݕग़ޙɼதԝσʔλϕʔεʹෆௐͷΤοδ͔ΒͷΫΤϦΛॲཧ͠ ͳ͍Α͏ʹୡ͢Δ ɾ(3) ࢦྩͷྃΛͬͯߋ৽ॲཧΛܧଓ͢Δ ɾதԝσʔλϕʔεͷલஈʹϓϩΩγΛஔ͠ɼΤοδ͔ΒͷΫΤϦͷ
࣮ߦՄ൱Λཧ͢Δ
DBCache Proxy 17 దԠతΫϥελ੍ޚΞʔΩςΫνϟ DB Cloud Edge DBCache Proxy App
Web Read/Write Edge Read/Write App Web App Web (1) ෆௐͳΤοδΛݕ DBCache Proxy (2) ෆௐͳΤοδͷΫΤϦΛ ࢭΊΔΑ͏ʹୡ
18 ݸମΫΤϦΩϟογϡͷߟ ɾ௨ৗͷΫϥυίϯϐϡʔςΟϯάͰར༻͢Δͱɼதԝσʔλϕʔε ͷεέʔϧΞοϓΛΒͤΔ͜ͱ͕Մೳ ɾͨͩ͠ɼదԠతΫϥελ੍ޚʹΑΓΞϓϦέʔγϣϯͱΩϟογϡ ϓϩΩγ͕શ໓͠ͳ͍Α͏ʹอূ͢Δඞཁʹ͋Δ ɾଟͷΤοδ͕͋ΔલఏͩͱɼΤοδΛఀࢭͤͯ͞ɼΫϥυʹ όΠύεՄೳ
4. ·ͱΊ
20 ·ͱΊ ɾΤοδίϯϐϡʔςΟϯάʹΑΓɼWebϗεςΟϯάͷԠੑೳΛ ্͍ͤͨ͞ ɾݸମܕσʔληϯλʔͷలΛͬͯղܾ͢Δ ɾಈతίϯςϯπͷHTTPΩϟογϡͷ՝ => DBΫΤϦΩϟογϡ ʹΑΓղܾ ɾಉظͪʹΑΔੑೳԼͷ՝
=> దԠతΫϥελ੍ޚʹΑΓղܾ ɾσʔλͷ؍ͰΫϥυͱΤοδΛ༗ػతʹ݁߹͢ΔͨΊͷୈ1า