Firebase 提供兩個雲端式文件資料庫,可供客戶存取。我們建議新客戶先從 Cloud Firestore 開始:
Cloud Firestore 是推薦的企業級 JSON 相容功能 文件資料庫,深受超過 250,000 名開發人員信賴。適合 含有豐富資料模型的應用程式,具有可查詢性、擴充性,以及 與高可用性也具備低延遲的用戶端同步處理與離線功能 資料存取權
Realtime Database 是傳統版 Firebase JSON 資料庫。這類應用程式適合使用簡單資料模型,需要簡單查詢和低延遲同步處理,且擴充性有限。
還有哪些需要考量的重要事項?
回顧前述的重要考量後,由於您可以準備 選擇資料庫。 如果您仍然在衡量優缺點 Cloud Firestore 和 Realtime Database 之間的差異。
資料模型
Realtime Database 和 Cloud Firestore 都是 NoSQL 資料庫。
Cloud Firestore 建議採用 | Realtime Database |
---|---|
將資料儲存為文件集合。
進一步瞭解 Cloud Firestore 資料模型。 |
以單一大型 JSON 樹狀結構儲存資料。
進一步瞭解 Realtime Database 資料模型。 |
即時與離線支援
兩者皆有行動優先、即時 SDK,且都支援離線應用程式的本機資料儲存空間。
Cloud Firestore 建議採用 | Realtime Database |
---|---|
為 Apple、Android 和網路用戶端提供離線支援。 | Apple 和 Android 用戶端的離線支援。 |
Presence
瞭解客戶何時上線或離線,可能會很有幫助。Firebase 「Realtime Database」可以記錄用戶端連線狀態並提供更新資訊 每次用戶端的連線狀態變更時。
Cloud Firestore 建議採用 | Realtime Database |
---|---|
原生不支援。您可以在 Realtime Database 的 支援使用狀態,將 Cloud Firestore 和 Realtime Database 同步處理至 Cloud Functions 請參閱版本 「Cloud Firestore」的身分。 | 支援在家狀態。 |
查詢
透過查詢從任一資料庫擷取、排序及篩選資料。
Cloud Firestore 建議採用 | Realtime Database |
---|---|
含複合值的已建立索引查詢
排序及篩選。
|
深層查詢,具有有限的排序和篩選功能。
|
寫入作業和交易
Cloud Firestore 建議採用 | Realtime Database |
---|---|
進階寫入和交易作業: | 基本的寫入和交易作業。 |
可靠性和效能
Cloud Firestore 首選 | Realtime Database |
---|---|
Cloud Firestore 是可以調度資源的區域和多區域解決方案
|
「Realtime Database」是區域性解決方案,
|
運作時間
Cloud Firestore 首選 | Realtime Database |
---|---|
極高運作時間效能。
|
高效能運作效能。
|
擴充性
Cloud Firestore 首選 | Realtime Database |
---|---|
會自動調度資源。
|
資源調度需要進行資料分割。
|
安全性
Cloud Firestore 建議採用 | Realtime Database |
---|---|
結合授權與驗證的非階層式規則。
|
分隔授權和驗證的連鎖規則語言。
|
定價
這兩種解決方案都可以在 Spark 和 Blaze 定價方案。
Cloud Firestore 首選 | Realtime Database |
---|---|
費用主要來自在資料庫中執行的作業
(讀取、寫入、刪除) 及降低頻率、頻寬和儲存空間。
Cloud Firestore每日支援 支出上限 App Engine 項專案,確保不超出 照自己的方式操作 進一步瞭解 Cloud Firestore定價方案。 |
僅須支付頻寬和儲存空間費用,但費用較高
頻率。
進一步瞭解 Realtime Database 定價方案。 |
使用 Cloud Firestore 和 Realtime Database
您可以在同一個 Firebase 應用程式或專案中使用這兩種資料庫。兩個 NoSQL 資料庫儲存相同類型的資料,而用戶端程式庫可在 如果您決定在應用程式中使用這兩種資料庫,請留意先前所述的差異。
進一步瞭解這兩個 Realtime Database 提供的功能 和 Cloud Firestore。
準備好選擇資料庫了嗎?
希望以上比較能協助您瞭解 Firebase 資料庫解決方案。 現在我們有助您在 Firebase 專案中新增資料庫。
- 如要瞭解 Cloud Firestore,請參閱「開始使用 Cloud Firestore」。
- 如需瞭解 Realtime Database,請參閱您平台適用的「開始使用」主題:Apple。 Android、C++、 Unity、Web 或 REST。