iT邦幫忙

第 11 屆 iThome 鐵人賽

DAY 15
1
Modern Web

從零開始的個人化記帳程式開發系列 第 15

Firebase Cloud Firestore 基礎入門 Part.1 - 簡介

  • 分享至 

  • xImage
  •  

Cloud Firestore 簡介

Cloud Firestore 是 Google 提供的一款雲端 NoSQL 資料庫,可以快速地運用在 Firebase 或 GCP 上進行 APP、網頁應用的開發。

Cloud Firestore v.s. Realtime Database

這兩種資料庫服務都是由 Firebase 提供,可以說 Cloud Firestore 是基於原本 Firebase 的 Realtime Database 的新一代即時資料庫。

兩者主要的差別可以從資料模型上看出來。

Realtime Database 將資料存為一個大型的 JSON tree,不像一般的 SQL 資料庫具有 table 與 row,每次新增一筆資料都變成一個節點對應到 JSON tree 中一個特定的 key。在簡單的資料結構能方便的使用,但若有較複雜的分層資料會比較難擴展。

而 Cloud Firestore 在資料模型上優化了這部分,使用更直觀的檔案與資料夾概念:

從上圖可以看到集合(collection)與文件(document)的結構,集合中包含文件、文件內存放資料,而文件中也可以創建子集合。

引用 oxxo 文章中一個不錯的比喻:「可以把集合想像成 A4 資料夾,文件就是 A4 紙張,資料是寫在 A4 紙上而不是寫在資料夾上。」

實際上操作會像是下面的模式,本質上也是 JSON 格式,但比起 Realtime Database 來得更直觀:

而官方也建議新的開發專案都使用 Cloud Firestore。因為他具有更直觀的數據模型、更快速的查詢、更好的效能及可擴展性,而且從文件上看起來未來還會提供更多新功能。

關於與 Realtime Database 更詳細的比較可參考這篇官方文件

小結

今天先介紹到 Cloud Firestore 的基本簡介,明天開始會進入實例操作,會從如何新增專案、設定到利用簡單範例來練習寫入與讀取的語法,我們明天見!

另外關於後端筆記的內容算是新手上路,若是有任何地方有問題都歡迎留言指出,感謝!

參考資料


上一篇
Firebase 是什麼&與 GCP 的差別
下一篇
Firebase Cloud Firestore 基礎入門 Part.2 - 建置 Firebase 專案及資料庫
系列文
從零開始的個人化記帳程式開發30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言