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.9k
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
71
おれたちはいつDXできるのか
commander_aipa
1
42
ウンケーニオキタコワイハナシ
commander_aipa
0
90
Nuxt3 Deeeeeeeeeeeeeeeeeeeeeploy
commander_aipa
0
130
Meilisearchでハイブリッドベクトル検索
commander_aipa
0
85
Honoの導入を検討していたが、Honoの人が来沖するらしいので、急いでHonoを導入した話
commander_aipa
0
160
Dの意思は神を殺す
commander_aipa
0
79
ファインチューニングがしたい
commander_aipa
0
160
サクッと検索サーバを用意する
commander_aipa
0
180
Other Decks in Technology
See All in Technology
AWSの生成AIサービス Amazon Bedrock入門!(2025年1月版)
minorun365
PRO
7
470
.NET 最新アップデート ~ AI とクラウド時代のアプリモダナイゼーション
chack411
0
200
AWSマルチアカウント統制環境のすゝめ / 20250115 Mitsutoshi Matsuo
shift_evolve
0
120
AWSサービスアップデート 2024/12 Part3
nrinetcom
PRO
0
140
AWS re:Invent 2024 re:Cap Taipei (for Developer): New Launches that facilitate Developer Workflow and Continuous Innovation
dwchiang
0
170
CDKのコードレビューを楽にするパッケージcdk-mentorを作ってみた/cdk-mentor
tomoki10
0
210
Docker Desktop で Docker を始めよう
zembutsu
PRO
0
180
EMConf JP の楽しみ方 / How to enjoy EMConf JP
pauli
2
150
Reactフレームワークプロダクトを モバイルアプリにして、もっと便利に。 ユーザに価値を届けよう。/React Framework with Capacitor
rdlabo
0
130
テストを書かないためのテスト/ Tests for not writing tests
sinsoku
1
170
なぜfreeeはハブ・アンド・スポーク型の データメッシュアーキテクチャにチャレンジするのか?
shinichiro_joya
2
490
Cloudflareで実現する AIエージェント ワークフロー基盤
kmd09
0
290
Featured
See All Featured
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
160
15k
Unsuck your backbone
ammeep
669
57k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
10
870
Agile that works and the tools we love
rasmusluckow
328
21k
Git: the NoSQL Database
bkeepers
PRO
427
64k
YesSQL, Process and Tooling at Scale
rocio
170
14k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
173
51k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
33
2.7k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
251
21k
Building Flexible Design Systems
yeseniaperezcruz
328
38k
GraphQLとの向き合い方2022年版
quramy
44
13k
Building Better People: How to give real-time feedback that sticks.
wjessup
366
19k
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