2017/08/28(月)に開催された「GCPUG Firebase Realtime Database /meetup/1」で発表した資料です
RTDBʹ͍ͯΔɾ͍ͯͳ͍αʔϏε@yamacraft
View Slide
profile• @yamacraft (Wataru Yamada)• Mobile Application Engineer• LeadingMark, inc• team Y.G.E.(private)• Ұ෦دߘ → → →
ποίϛɾࢦఠ༏͠ΊͰ͓ئ͍͠·͢
IUUQTZPSPPOFZBNBHMPKQ
YoroOneͱʁ• ອըՈͷએπΠʔτΛ·ͱΊͨWebαʔϏεͰ͢
YoroOneͷߏਤ
RTDBʹ͍ͯΔαʔϏεʁʢݸਓͷݟղͰ͢ʣ
• ํࢀর͠߹͏σʔλ͕গͳ͍• อଘ͢Δσʔλʢϊʔυʣͷߏ͕γϯϓϧ• ≒ϊʔυ͝ͱͷॻ͖ࠐΈʗಡΈࠐΈͷ੍ݶ͕γϯϓϧ• ݕࡧΒϑΟϧλͱ͍ͬͨػೳΛΘͳ͍• ͜Εͷઆ໌ল͖·͢• Elasticsearchͱ͔Λ͓͏Ͷɺ͍ͬͯ͏
ํࢀর͕গͳ͍ߏ
อଘ͢Δσʔλͷྫ
ํࢀরϚγϚγͷ߹
ϦϯΫ͕૿͑Δ͜ͱͷฐ• σʔλͷཧ͕ෳࡶԽ͢Δ• ͱ͍͑ɺআͷࡍʹϦϯΫઌΛಛఆʴআͷΊΜͲ͘͞͞୯ํͦΜͳʹ…• ࣮ࡍʹެࣜʮͲͬͪʹϦϯΫ͚ͭΑ͏ɻҰํ͚ͩফͯ͠ɺϦϯΫͷnullνΣοΫ͢ΕΠΠϯμϤɻʯͱਐΊ͍ͯΔ• ͰͦΕԼͷ௨৴ྔʢσʔλྔʣͷΈ͕ग़ͯ͘ΔΑ͏ͳؾ͕…• ୯७ͳϊʔυ͝ͱͷσʔλྔͷ૿Ճ• ಡΈࠐΈͷࡍɺࢦఆϊʔυҎԼͷશσʔλΛऔಘ͢Δ͜ͱΛΕ͍͚ͯͳ͍
ͱ͍ͬͯ…• ࠷ॳʹσʔλͷߏ͕ΩνϯͱͰ͖͍ͯΕཧͷқͦΜͳʹߴ͘ͳ͍ͣ• ຊʹେมʹͳΔͷʮ͋ͱ͔Βํ͢ΔσʔλΛՃ͢Δʯ߹• ʢঢ়گ࣍ୈ͚ͩͲʣશσʔλΛચ͍ग़͢ඞཁ͕͋ΔͨΊ• ࢀর͋͠͏σʔλͷચ͍ग़͠ࣄલʹΑ͘ߟ͑Α͏
ϊʔυͷߏͷΈͲ͜Ζ• ϊʔυΛࡉԽ͢Εࡉ͔͘ΞΫηε੍ݶ͕͔͚ΒΕΔ• ͜ͷใϑΥϩϫʔͷΈಡΈࠐΈԽɺຊਓͷΈॻ͖ࠐΈԽɺͱ͔• ϊʔυ͕૿͑ΔͱϧʔϧϑΝΠϧʢjsonʣ͕ංେԽ͢Δ• ཧ͕͠ΜͲ͍…• ͳΔ͘Ұͭϊʔυʹ·ͱΊΔͱ༨ܭͳ௨৴ྔ͕૿͑Δ…• ࢠϊʔυͷσʔλશͯಡΈࠐΈʗॻ͖ࠐΈରͱͳΔͨΊ
ϊʔυ͝ͱʹr/wͷઃఆඞཁ
ͦͷଞͷΈͲ͜Ζ• ̍ϓϩδΣΫτͰDB͍ͭ͘࡞Εͳ͍• ඞવతʹϊʔυ͕૿͑Δɺ૿͑ΔͱߏͷΈ͕ग़ͯ͘Δ• ෳͷϓϩδΣΫτͷRTDBΛ·͕ͨͬͯಉ࣌ར༻͢Δ͜ͱ΄΅ෆՄೳ• Ϣʔβʔ͕ར༻͢ΔσʔλཧऀͷΈ͕ར༻͢Δσʔλಉ͡RTDBʹอଘ͢Δͷ৺ཧతোน͕͋Δʢؾ͕͢Δʣ• Cloud FunctionsͳΒؤுΕͰ͖Δ͔ʢະݕূʣ
·ͱΊ• ػೳϞϦϞϦͳαʔϏεΛRTDBͰશ෦·͔ͳ͏ͷ…Ίͱ͜͏ʂ• ίϯςϯπ͕গͳ͍αʔϏεʹ͍ͯ·͢• ػೳ࣍ୈͰRDBʢϦϨʔγϣφϧσʔλϕʔεʣฒߦͰӡ༻͠Α͏• RTDBͱRDBؒͰͷಉظॲཧͷϊϋ…ʁ• ΈΜͳϊϋͲΜͲΜग़ͯ͜͠ʂ
͓͠·͍