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
1.8k
Firestoreを知る旅
このイベントでLTしました。
https://flutter-okinawa.connpass.com/event/273193/
Aipa
April 03, 2023
Tweet
Share
More Decks by Aipa
See All by Aipa
Nuxt3 Deeeeeeeeeeeeeeeeeeeeeploy
commander_aipa
0
29
Meilisearchでハイブリッドベクトル検索
commander_aipa
0
10
Honoの導入を検討していたが、Honoの人が来沖するらしいので、急いでHonoを導入した話
commander_aipa
0
100
Dの意思は神を殺す
commander_aipa
0
40
ファインチューニングがしたい
commander_aipa
0
72
サクッと検索サーバを用意する
commander_aipa
0
94
リアクティブを知る1歩
commander_aipa
0
170
さっき作った
commander_aipa
0
180
WordPressと琉球の罪
commander_aipa
1
980
Other Decks in Technology
See All in Technology
Step by Stepで学ぶ、ADT(代数的データ型)、モナドからEffect-TSまで
leveragestech
1
3.2k
Security Hubのセキュリティスコアはどうやって計算されるか
toru_kubota
0
110
試作とデモンストレーション / Prototyping and Demonstrations
ks91
PRO
0
180
Databricksの生成AI戦略
taka_aki
1
380
Dungeons and Dragons and Rails
joelq
0
260
My road to OSEE Part1
yunolay
0
120
データ基盤を支える技術
chanyou0311
5
3k
【TSkaigi】2024/05/11 当日スライド
kimitashoichi
14
4.1k
複雑なビジネスルールに挑む:正確性と効率性を両立するfp-tsのチーム活用術 / Strike a balance between correctness and efficiency with fp-ts
kakehashi
5
3.7k
Oracle Cloud Infrastructureデータベース・クラウド:各バージョンのサポート期間
oracle4engineer
PRO
12
7.9k
AI JIMY - 登壇(インストール編)
hanacchi
0
150
サービス開発におけるVue3とTypeScriptの親和性について
tsukuha
10
1.8k
Featured
See All Featured
XXLCSS - How to scale CSS and keep your sanity
sugarenia
242
1.2M
5 minutes of I Can Smell Your CMS
philhawksworth
199
19k
Adopting Sorbet at Scale
ufuk
69
8.6k
The Language of Interfaces
destraynor
151
23k
Fireside Chat
paigeccino
22
2.7k
The Illustrated Children's Guide to Kubernetes
chrisshort
32
47k
Making the Leap to Tech Lead
cromwellryan
125
8.6k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
14
8.4k
Why Our Code Smells
bkeepers
PRO
331
56k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
228
16k
Principles of Awesome APIs and How to Build Them.
keavy
121
16k
Building a Modern Day E-commerce SEO Strategy
aleyda
22
6.5k
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