Cloud Firestore
使用我們靈活,可擴展的NoSQL雲數據庫來存儲和同步數據,以進行客戶端和服務器端開發。
Cloud Firestore是一個靈活的,可擴展的數據庫,用於通過Firebase和Google Cloud開發移動,Web和服務器。與Firebase Realtime Database一樣,它通過實時偵聽器使您的數據在客戶端應用程序之間保持同步,並為移動設備和Web提供脫機支持,因此您可以構建響應性應用程序,而無論網絡延遲或Internet連接如何。 Cloud Firestore還提供與其他Firebase和Google Cloud產品(包括Cloud Functions)的無縫集成。
關鍵能力
靈活性 | Cloud Firestore數據模型支持靈活的分層數據結構。將數據存儲在文檔中,並整理成集合。除了子集合外,文檔還可以包含複雜的嵌套對象。 |
富有表現力的查詢 | 在Cloud Firestore中,您可以使用查詢來檢索單個特定文檔,或檢索集合中與查詢參數匹配的所有文檔。您的查詢可以包括多個鏈接的過濾器,並且可以組合過濾和排序。默認情況下也會對它們建立索引,因此查詢性能與結果集的大小(而不是數據集)成正比。 |
實時更新 | 與實時數據庫一樣,Cloud Firestore使用數據同步來更新任何已連接設備上的數據。但是,它也旨在有效地進行簡單的一次性獲取查詢。 |
離線支持 | Cloud Firestore會緩存您的應用程序正在使用的數據,因此即使設備處於脫機狀態,該應用程序也可以寫入,讀取,收聽和查詢數據。設備恢復聯機後,Cloud Firestore會將所有本地更改同步回Cloud Firestore。 |
按比例設計 | Cloud Firestore為您帶來了Google Cloud強大基礎架構的最佳功能:自動多區域數據複製,強大的一致性保證,原子批處理操作以及真實的交易支持。我們將Cloud Firestore設計為能夠處理來自全球最大的應用程序中最艱鉅的數據庫工作負載。 |
它是如何工作的?
Cloud Firestore是一個由雲託管的NoSQL數據庫,您的iOS,Android和Web應用程序可以通過本地SDK直接訪問該數據庫。除REST和RPC API外,Cloud Firestore還可以在本機Node.js,Java,Python,Unity,C ++和Go SDK中使用。
遵循Cloud Firestore的NoSQL數據模型,您將數據存儲在包含映射到值的字段的文檔中。這些文檔存儲在集合中,這些集合是文檔的容器,可用於組織數據和構建查詢。文檔支持許多不同的數據類型,從簡單的字符串和數字到復雜的嵌套對象。您還可以在文檔內創建子集合,並建立可隨著數據庫增長而擴展的分層數據結構。 Cloud Firestore數據模型支持最適合您的應用程序的任何數據結構。
此外,Cloud Firestore中的查詢具有表現力,高效且靈活。創建淺表查詢以在文檔級別檢索數據,而無需檢索整個集合或任何嵌套的子集合。為查詢或游標添加排序,過濾和限制以分頁結果。要使應用程序中的數據保持最新狀態,而又不會在每次更新時都檢索整個數據庫,請添加實時偵聽器。每當客戶端應用程序正在偵聽更改的數據時,將實時偵聽器添加到應用程序都會通過數據快照通知您,僅檢索新更改。
使用適用於Android,iOS和JavaScript的Firebase身份驗證和Cloud Firestore安全規則,或使用服務器端語言的身份和訪問管理(IAM),保護對Cloud Firestore中數據的訪問。
實施路徑
集成Cloud Firestore SDK | 通過Gradle,CocoaPods或腳本include快速包含客戶。 | |
保護您的數據 | 使用Cloud Firestore安全規則或身份和訪問管理(IAM)分別保護數據的安全性,以進行移動/ Web和服務器開發。 | |
新增資料 | 在數據庫中創建文檔和集合。 | |
獲取數據 | 創建查詢或使用實時偵聽器從數據庫檢索數據。 |
下一步
- Cloud Firestore入門-設置數據庫,然後添加數據並開始讀取它。
- 了解有關Cloud Firestore數據模型的更多信息。
- 探索實時數據庫和Cloud Firestore之間的區別。