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
Google I/O 2024で発表されたFirebase Data Connectを試してみた
Search
Kanon
August 24, 2024
1
22
Google I/O 2024で発表されたFirebase Data Connectを試してみた
Kyoto.なんか #6 の登壇資料です。
https://kyoto-nanka.connpass.com/event/324686/
Kanon
August 24, 2024
Tweet
Share
More Decks by Kanon
See All by Kanon
useSWRをuseContextの代わりに使ってみる試み
ysknsid25
1
380
東遊園地近辺のおすすめランチ・カフェ
ysknsid25
3
180
Featured
See All Featured
A Tale of Four Properties
chriscoyier
155
22k
Mobile First: as difficult as doing things right
swwweet
221
8.8k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
26
2k
Why You Should Never Use an ORM
jnunemaker
PRO
53
8.9k
Designing on Purpose - Digital PM Summit 2013
jponch
113
6.8k
Bash Introduction
62gerente
608
210k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
246
1.3M
StorybookのUI Testing Handbookを読んだ
zakiyama
26
5k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
502
140k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
326
21k
The Cult of Friendly URLs
andyhume
76
5.9k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
36
1.9k
Transcript
Google I/O 2024 で発表された Firebase Data Connectを使ってみた 1 Kanon (@ysknsid25)
#kyoto.なんか
自己紹介 ↓詳しくは↓ Kanon アニオタ声豚酒カスラーメンレンジャー 水瀬いのり無限恒久永遠推し ysknsid25 Kobe.tsという勉強会を主催しています アイコンは公式配布のものです。 https://x.com/i/bookmarks/all?post_id=1806583319951233034
3 水瀬いのりさん
4 すいません、最初に宣伝させてください🙏
5 📢 最初に宣伝 🙏
6 以上、お知らせでした🙇
Firebase Data Connectとは? 7
8 ちな、知ってる人🙋
Firestoreに代わる新たなデータソース • これまで ◦ Firebase でデータソースを扱うには基本的には Firestoreを使う必要があった ◦ Firestore =
NOSQL ◦ RDB(CloudSQL)を使うには、Cloud Functionsを作る必要 • これから ◦ Data Connect が選択肢の一つに 9
できること • GraphQLを書けば、Data Connectが勝手にSQLへ変換してく れる ◦ 裏側ではCloud SQL for PostgreSQLが動いている
• SQLに詳しくない人でもGraphQLだけわかればDBにアクセス できる ◦ 後述しますが一長一短とは思います • Cloud SQLを使うための設定などがめちゃくちゃ簡単 • 現在は限定公開プレビューのため、申請者のみ利用可能 10
11 たぶん今日話す内容で 記事書いたり発表してるのは 日本人では自分が初 Qiitaにも記事あるけど ちゃんと環境作って試 して記事を出してるの は自分がおそらく初
12
使い方 13
Cloud SQLインスタンスの用意 14
Cloud SQLインスタンスの用意 15
Cloud SQLインスタンスの用意 16
Cloud SQLインスタンスの用意 17
開発用のPostgreSQLコンテナを用意 18
VSCodeに開発用拡張機能を追加 19
Data Connect 用プロジェクトの作成 20 firebase init dataconnect
デモ用のファイルが用意されている 21
利用するスキーマ (テーブルに対応) 22
コメントを外し、保存するだけでテーブル作成 23
GraphQLのquery,mutationも自動作成 24
実行もコードから可能 25
データを登録 26
再度参照すると…? 27
DB側も…? 28
本番へデプロイし確認 29
デプロイ時、CREATE TABLEが走ってるのがわかる 30
Firebase Console側 31
実行 32
Cloud SQL側で確認 33
Cloud SQL側で確認 34
とあるユーザーが送信したメールの一覧 35 join が使われそうだけど …?
すごいクエリが吐かれてる… 36
アプリに組み込んで使うには…? 37 SDKに firebase/data-connect がいないので 検証できず…
まとめ • ローカルでの開発体験やGraphQLがそのままSQLになっ てるのは素直に感動 • アプリケーションの成長に伴いFirestore -> CloudSQL への移行とかが発生しなくなりそうなのは良い •
複雑なデータ抽出が必要になったり、チューニングが 必要になったときはしんどそう • どういうGraphQLを書けばどういうSQLができるか?が イメージできないのはしんどそう 38
39 ご清聴、あざざました
おわりに: 次はこの辺でお会いしましょう🙋