超個体型データセンターを目指した分散協調クエリキャッシングの構想 / QuorumCache Architecture

超個体型データセンターを目指した分散協調クエリキャッシングの構想 / QuorumCache Architecture

https://www.iot.ipsj.or.jp/meeting/45-program/
第45回情報処理学会インターネットと運用技術研究会 (IOT)
(14) ◯坪内 佑樹,松本 亮介(さくらインターネット株式会社):超個体型データセンターを目指した分散協調クエリキャッシュ構想

Tweet

Transcript

  1. 1.

    ͘͞ΒΠϯλʔωοτ גࣜձࣾ (C) Copyright 1996-2019 SAKURA Internet Inc ͘͞ΒΠϯλʔωοτ ݚڀॴ

    ௒ݸମܕσʔληϯλʔΛ໨ࢦͨ͠ ෼ࢄڠௐΫΤϦΩϟογϯάͷߏ૝ 2019/05/24 ݚڀһ ௶಺ ༎थ ௶಺༎थ, দຊ྄հ ୈ45ճΠϯλʔωοτͱӡ༻ٕज़ݚڀձ(IOT45)
  2. 4.

    4 ɾWebαʔϏεͷԠ౴଎౓͕஗͍ͱར༻ऀ͔Βར༻͞Εͳ͘ͳΔͱ͍ ͏ใࠂ[1]͕͋ΓɼWebαʔϏεͷԠ౴ੑೳͷ޲্͕ॏཁͰ͋Δ ɾWebαʔϏεͷԠ౴஗ԆΛ࣍ͷΑ͏ʹ෼ղͰ͖Δ ɾ(1) ར༻ऀͷ୺຤্Ͱͷॲཧ ɾ(2) ୺຤͔Βσʔληϯλʔ಺αʔό·ͰͷωοτϫʔΫసૹ ɾ(3) σʔληϯλʔ಺Ͱͷॲཧ

    ɾ(2)͕ࢧ഑తͰ͋Δͱ͍͏ݚڀ[2]͕͋Δ(100msͷ͏ͪ80msΛ઎ΊΔ) Ԡ౴ੑೳʹ઎ΊΔωοτϫʔΫసૹ஗Ԇͷ໰୊ [1] Forrester Consulting: eCommerce Web Site Performance Today: An Updated Look At Consumer Reaction To A Poor Online Shopping Experience 2009. [2] S Choy, B Wong, G Simon and C Rosenberg: The Brewing Storm in Cloud Gaming: A Measurement Study on Cloud to End-User Latency, 11th Annual Workshop on Network and Systems Support for Games, p. 2 2012.
  3. 6.

    6 ɾཁ݅1: ෼ࢄͨ͠σʔληϯλʔ΁ಁաతʹΞΫηεՄೳ ɾ1.1: ΞΫηεͨ͠σʔληϯλʔʹΑΒͣσʔλΛߴ଎ࢀরՄೳ ɾશͯͷ෼ࢄσʔληϯλʔʹΩϟογϡͷෳ੡Λ഑ஔ ɾ1.2: σʔληϯλʔؒͰҰ؏ͨ͠σʔλΛࢀরՄೳ ɾॻ͖ࠐΈʹରͯ͠ߋ৽಺༰Λ֤Ωϟογϡͷෳ੡ʹ఻ൖ ɾཁ݅2:

    طଘͷΞϓϦέʔγϣϯΛมߋͤͣʹར༻Մೳ ɾڧ͍Ұ؏ੑͷͨΊʹॻ͖ࠐΈʹରͯ͠ಉظతʹΩϟογϡΛߋ৽ ɾΞϓϦέʔγϣϯͱσʔλϕʔεͷؒͰΫΤϦͷ݁ՌΛΩϟογϡ ௒ݸମܕσʔληϯλʔDBͷཁ݅ είʔϓ: ಈతίϯςϯπͷ഑৴ͷߴ଎ԽͷͨΊʹಡΈࠐΈੑೳΛ޲্
  4. 11.

    11 ෼ࢄσʔληϯλʔ΁ͷσʔλ഑ஔͷ՝୊ Replica Origin (1) ॻ͖ࠐΈཁٻ Replica Replica (2) ಉظߋ৽

    (a) ֤σʔληϯλʔͰಉҰσʔλΛ ෳ੡഑ஔ ← ಡΈࠐΈओମͳΒͪ͜Β (b) ಛఆͷσʔληϯλʔ্ʹͷΈ σʔλΛ഑ஔ Origin Shard ॻ͖ࠐΈ࣌ʹωοτϫʔΫ ஗Ԇͷେ͖͍σʔληϯ λʔʹ཯଎͞ΕΔ ಡΈࠐΈ࣌ʹωοτϫʔΫ ஗Ԇͷେ͖͍σʔληϯ λʔʹ཯଎͞ΕΔ (1) ಡΈࠐΈཁٻ Shard Shard (2) σʔλసૹ ཁٻ͢Δσʔλ͕ଘࡏ ཯଎ ཯଎
  5. 12.

    12 ෼ࢄΫΤϦΩϟογϡͷઌߦख๏ ɾFerdinand[12]͸෼ࢄϋογϡςʔϒϧ ʹΑΓෳ਺ͷϊʔυؒͰΫΤϦϦβϧτ ΩϟογϡΛڞ༗͢Δ ɾϊʔυؒͷϨΠςϯγ͕େ͖͘ͳΔͱε ϧʔϓοτ͕௿Լ͢Δ࣮ݧใࠂ͕͋Δ ɾಛఆͷϊʔυʹΩϟογϡΛ഑ஔ͢Δͨ Ίʹύλʔϯ(b)ͱ͍͑Δ [12]

    C Garrod, A Manjhi, A Ailamaki, B Maggs, T Mowry, O Christopher and T Anthony: Scalable Query Result Caching for Web Applications, VLDB Endowment, Vol. 1, No. 1, pp. 550–561 2008. จݙ[12] Figure 5ΑΓҾ༻
  6. 16.

    16 QuorumCacheͷಈ࡞ϑϩʔ Central Datacenter Origin Replica Replica Replica Replica d:

    ۙ๣ωοτϫʔΫڑ཭ Edge Datacenter Replica Replica d (1) ॻ͖ࠐΈཁٻ (2) ॻ͖ࠐΈཁٻ సૹ (3) ಉظߋ৽ (i) ಡΈࠐΈཁٻ (ii) dҎ಺ͷσʔλ ηϯλʔ͔Β ಡΈࠐΈ Replica (4) ඇಉظߋ৽
  7. 20.

    20 γεςϜߏ੒ HTTP Proxy Central Datacenter Web App DB Proxy

    Database HTTP Request Caching ಡΈॻ͖ൺ཰ͷ ܭଌ(HTTP) ಡΈॻ͖ൺ཰ͷ ܭଌ(DBΫΤϦ) Ԡ౴ੑೳͷܭଌ Query Pinger Ping ωοτϫʔΫڑ཭ ͷܭଌ DB Proxy Web App HTTP Proxy ɾ੍ޚϙΠϯτͱͯ͠HTTPͱDBͷ૚ʹϓϩΩγΛ഑ஔ Forward Edge Datacenter
  8. 21.