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
Firestoreを知る旅
Search
Aipa
April 03, 2023
Technology
0
2k
Firestoreを知る旅
このイベントでLTしました。
https://flutter-okinawa.connpass.com/event/273193/
Aipa
April 03, 2023
Tweet
Share
More Decks by Aipa
See All by Aipa
ピンチヒッターです。なにか話します
commander_aipa
0
120
おれたちはいつDXできるのか
commander_aipa
1
72
ウンケーニオキタコワイハナシ
commander_aipa
0
120
Nuxt3 Deeeeeeeeeeeeeeeeeeeeeploy
commander_aipa
0
170
Meilisearchでハイブリッドベクトル検索
commander_aipa
0
140
Honoの導入を検討していたが、Honoの人が来沖するらしいので、急いでHonoを導入した話
commander_aipa
0
200
Dの意思は神を殺す
commander_aipa
0
99
ファインチューニングがしたい
commander_aipa
0
190
サクッと検索サーバを用意する
commander_aipa
0
210
Other Decks in Technology
See All in Technology
どこで動かすか、誰が動かすか 〜 kintoneのインフラ基盤刷新と運用体制のシフト 〜
ueokande
0
180
第4回 関東Kaggler会 [Training LLMs with Limited VRAM]
tascj
12
1.7k
サービスロボット最前線:ugoが挑むPhysical AI活用
kmatsuiugo
0
190
人を動かすことについて考える
ichimichi
2
320
モバイルアプリ研修
recruitengineers
PRO
2
240
開発と脆弱性と脆弱性診断についての話
su3158
1
1.1k
生成AI利用プログラミング:誰でもプログラムが書けると 世の中どうなる?/opencampus202508
okana2ki
0
190
VPC Latticeのサービスエンドポイント機能を使用した複数VPCアクセス
duelist2020jp
0
200
そのコンポーネント、サーバー?クライアント?App Router開発のモヤモヤを可視化する補助輪
makotot
3
400
RAID6 を楔形文字で組んで現代人を怖がらせましょう(実装編)
mimifuwa
0
300
新規案件の立ち上げ専門チームから見たAI駆動開発の始め方
shuyakinjo
0
110
自社製CMSからmicroCMSへのリプレースがプロダクトグロースを加速させた話
nextbeatdev
0
130
Featured
See All Featured
Into the Great Unknown - MozCon
thekraken
40
2k
Faster Mobile Websites
deanohume
309
31k
Large-scale JavaScript Application Architecture
addyosmani
512
110k
Facilitating Awesome Meetings
lara
55
6.5k
Optimising Largest Contentful Paint
csswizardry
37
3.4k
How to Ace a Technical Interview
jacobian
279
23k
The Power of CSS Pseudo Elements
geoffreycrofte
77
5.9k
Unsuck your backbone
ammeep
671
58k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
10
1k
Designing for humans not robots
tammielis
253
25k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
8
480
Transcript
Flutter Okinawa LT #1 ͋ͭ·Εʔʂ 2023/03/25 aipacommander@ఱٱʹ͋Δձࣾ
ࣗݾհ • ΞΠύʔୂͱ͍͍·͢ (@aipacommander) • CBcloudגࣜձࣾͰಇ͍͍ͯ·͢ • ࠺ͱࢠೋਓͱݘ1ඖͱೣ1ඖͰ΄΅ຖWelcome to Α͏ͦ͜͡ΌͺΓͺʔ͘ࠓ
υολϯόολϯେ૽͍͗ͯ͠·͢ • ʢࠓʣϑϩϯτΤϯδχΞͰ͢ʂ • GitHub CopilotʹڵຯΛ࣋ͪ࢝Ί·ͨ͠ • VTuberʹͳͬͯ5000ສՔ͍ͩΒ͙Β͍ٳ৬͍ͨ͠
ࠓ͢͜ͱ
ྩ5͔Β࢝Ί ΔNoSQL Firestoreͷ
ઌʹͷ͜Ε·Ͱͷܦݧ • RDB͔ͬͨ͜͠ͱͳ͍ • Redis͕গʑɻɻɻηογϣϯΩʔͱ͔JobQueueΛ٧ΊΔ͙Β͍ • DynamoDBʁΫΤϦୟ͚ΔΑɻԿΘ͔Βͳ͍͚Ͳ • ਖ਼نԽʂਖ਼نԽʂʂਖ਼نԽʂʂʂʢͦΜͳܦݧ͕͋ΔΘ͚Ͱͳ͍͕ʣ •
JSONܕʁΞϯνύλʔϯͩʂʢʣ • ࣮ࡍͦ͏Ͱͳ͘ɺ·͡Ͱਖ਼نԽ͢Δͷ͕Ή͍ͣʂʂͬͯͳͬͨΒར༻͢Δ
ྩ5͔Β࢝ΊΔNoSQL • ࠷ۙFirebaseʢFirestoreʣΛϓϩδΣΫτʹಋೖ͠·ͨ͠ • ΧδϡΞϧ͗ͯ͢ා͍ • ࢦոզ͓ͨ͠͡͞Μͷڭ͕͑ා͍ • NoSQLΛͬͨ݁Ռɺӡ༻Ͱࢮͳͳ͍Α͏ʹզʑϠϯόϧͷԞ ͱาΈͩͨ͠ʂ
ࢦոզ͓ͨ͠͡͞Μͷڭ͑ https://www.youtube.com/watch?v=v_hR4K4auoQ
ࢦոզ͓ͨ͠͡͞Μͷڭ͑ͷ1ྫ • Ϩετϥϯ → ϨϏϡʔ → ϨϏϡʔΛߘͨ͠Ϣʔβʔใͱ͍͏ؔͨ͠σʔλΛϞ σϦϯά͢Δ߹ • ϨετϥϯͷதʹྻͰϨϏϡʔΛͨͤΔɺϨετϥϯͱϢʔβʔτοϓϨϕϧ
ͰσʔλΛ࣋ͭʢ؆୯ʹઆ໌͢Δͱอଘ͢Δςʔϒϧʢҧ͏͚Ͳʣ͕ผʣ • ϨϏϡʔͷதʹMapʢJSONʣͰϢʔβʔใΛͨͤΔʢʁʂʣ • σʔλ͕ॏෳ͍ͯ͠ΔΜͰ͕͢ɾɾɾ • Cloud FunctionΛͬͯ߹ੑ͋ΘͤΔͱ͔Ͱ͖Δ͔Βྑ͍ʢʁʂʣ • ͋ͱϢʔβʔϓϩϑΟʔϧͱ͔ͦΜͳ͔ΘΒͳ͍Ͱ͠ΐʁʢʁʂʣ
͋Β͔ͨใΛݟऴΘͬͨ͋ͱͷͷؾ࣋ͪ ࣗ༝͗͢Δ
ͦͦɾɾɾ • NoSQLͬͯͳʹʁ • Firestoreͬͯͳʹʁ • FirestoreͰͰ͖Δ͜ͱɾͰ͖ͳ͍͜ͱͬͯ͋Δͷʁ • FirestoreͰσʔλϞσϦϯάͨ͠߹ɺϕετϓϥΫςΟεूతͳ͜ ͱ͕Γ͍ͨ
FirestoreΛΔཱྀ
FirestoreΛΔཱྀ • ྉۚϓϥϯ • ΫϥυαʔϏεैྔ՝੍ۚഁ࢈͕ා͍ • Ωϟογϡ • ຖճΞΫηε͢Δͱͦͷ՝ۚ͞ΕΔͷͰΩϟογϡΛ͍͍ͨ •
ςετ • CI/CDΒͤΔͨͼʹ՝ۚ͞ΕΔͷʁͳΜ͔ݏ • ݕࡧ • ͍͋·͍ݕࡧ(LIKE)Ͱ͖ͳ͍ → !? • ू͕ؔΓͳ͍ • ORݕࡧͰ͖ͳ͍ → !?
ྉۚϓϥϯ • ࢥ͍ͷ֎͍҆ɻԼه;ͨͭͷϖʔδͰ֓ͶࢼࢉͰ͖Δ • ྉۚϓϥϯ • ՝ۚͷྫ • Firestoreอଘ͢Δσʔλྔͷແྉ1GBͳͷͰɺ͙͢౸ୡͦ͠͏ •
ಡΈࠐΈ̑ສ݅/ɺॻ͖ࠐΈ2ສ݅/ແྉͱͯྑ͍
Ωϟογϡ • Firebase SDKͳΔͷ͕͋Δɻ͍ͦͭΛ͏ͱΩϟογϡΛѻ͑Δ ʢJavaScript Onlyʣ • தIndexedDB • IndexedDB
API • ಉ͡ΫΤϦ1ୟ͘ͱΩϟογϡ͞ΕΔ • ϦΞϧλΠϜͷ߹ɺՃɾߋ৽ɾআpush͞ΕΔʢͱΜͰ͘Δʣ
ςετ • CIͷͨͼʹΫϥυୟ͘ͷΑ͘ͳ͍ʢ՝ۚ͞ΕΔʣ • Firebase Local Emulator Suite ͕͋Δ •
JavaʢʁʂʣΛೖΕͨΒϩʔΧϧͰFirestoreͳͲ্ཱ͕͕ͪΔ • ͍ͭ͜ΛͬͯςετΛॻ͘ • ͪΖΜϩʔΧϧͰͷಈ࡞ݕূར༻Ͱ͖·͢ • ڥมͱ࿈ܞͯ͠ɺΤϛϡϨʔλʔʹΓସ͑ΔΑ͏ʹ͢Δͱ͔Ͱ͖Δ
ݕࡧ • ͍͋·͍ݕࡧ͕Ͱ͖ͳ͍ • ݫີʹલํҰகͰ͖Δ͚ͲɺจࣈίʔυΛߟ্ྀͨ͠ͷݕࡧʹͳΔͷͰΊΜͲͦ͘͞͏ • ू͕ؔऑ͍ • CountͰ͖ͨ •
Maxͱ͔Minͱ͔ͳ͍ • ϑϩϯτΤϯυͰ͕ΜΔ • ORݕࡧ͕Ͱ͖ͳ͍ • ·͔͡Α • TipsΛ͏ͱ͍͚Δʢin, array-contains-anyʣ • ͰɺOR݅ͷΩʔϫʔυ10ݸ·Ͱͱ͍͏੍ݶ͕͋Δ • ݕࡧRDBͰΑ͋͘ΔϕʔγοΫͳݕࡧؚΊͯɺElasticSearchͳͲͷ֎෦ͷݕࡧΤϯδϯΛར༻͢Δͷ͕٢ͩͱࢥ͍·͢
݁ • Firestore͕ͪΐͬͱΘ͔ͬͨ • NoSQLͱ͍͏͔σʔλϕʔεͷΤϯδϯपΓͷ ΞʔΩςΫνϟΛͬͱΓͨ͘ͳͬͨ • σʔλϞσϦϯάʹ͍ͭͯͬͱษڧ
ͨ͘͠ͳͬͨ • ؾʹͳΔ͜ͱ͕ଟ͗ͯ͢VTuberͷ ເ͕ԕ͘ɾɾɾɾɾ https://seiga.nicovideo.jp/seiga/im2331760
ࢀߟURL&ࢀߟॻ੶ • FirestoreυΩϡϝϯτ • matope/NoSQLσʔλϞσϦϯάٕ๏.markdown • NOSQLͷجૅࣝ (ϏοάσʔλΛ׆͔͢σʔλϕʔεٕज़) • ΠϛϡʔλϒϧσʔλϞσϦϯά
• WEB+DB PRESS Vol.130