透過集合功能整理內容
你可以依據偏好儲存及分類內容。
結構化資料
請注意,在 Firestore 中建立資料結構時,您有幾種不同的選項:
請根據您的用途,考量每個選項的優點。本指南列出階層式資料的幾個範例結構。
文件中的巢狀資料
您可以在文件中巢狀嵌入陣列或對映等複雜物件。
- 優點:如果資料清單簡單且固定,並想保留在文件中,這種做法設定簡單,可簡化資料結構。
-
限制:
相較於其他選項,這個方法的可擴充性較低,
特別是當資料量隨時間增加時。清單越大或持續擴充,文件也會隨之變大,導致文件擷取時間變慢。
- 可能的用途為何?舉例來說,在即時通訊應用程式中,您可能會將使用者最近造訪的 3 個聊天室儲存為個人資料中的巢狀清單。
|
- class alovelace
- name :
first : "Ada"
last : "Lovelace"
born : 1815
rooms :
0 : "Software Chat"
1 : "Famous Figures"
2 : "Famous SWEs"
|
子集合
如果資料可能會隨時間擴充,您可以在文件中建立集合。
- 優點:隨著清單增加,父項文件的大小不會改變。您也可以對子集合執行完整查詢,並跨子集合發出
集合群組查詢。
-
限制:您無法輕鬆刪除子集合。
- 可能的用途為何?舉例來說,您可以在同一個聊天應用程式中,於聊天室文件內建立使用者或訊息的集合。
|
- collections_bookmark science
- class software
name : "software chat"
- collections_bookmark
users
- class
alovelace
first : "Ada"
last : "Lovelace"
- class
sride
first : "Sally"
last : "Ride"`
- class 天體物理學
|
根層級集合
在資料庫的根層級建立集合,整理不同的資料集。
- 優點:根層級集合適用於多對多關係,並可在每個集合中提供強大的查詢功能。
-
限制:隨著資料庫成長,擷取自然階層式資料可能會越來越複雜。
- 可能的用途為何?舉例來說,您可以在同一個即時通訊應用程式中,為使用者建立一個集合,並為聊天室和訊息建立另一個集合。
|
- collections_bookmark
使用者
- class alovelace
first : "Ada"
last : "Lovelace"
born : 1815
- class sride
first : "Sally"
last : "Ride"
born : 1951
- collections_bookmark 間會議室
- class 軟體
- collections_bookmark
訊息
- class
message1
from : "alovelace"
content : "..."
- class
message2
from : "sride"
content : "..."
|
影片
詳情請觀看下列影片:
除非另有註明,否則本頁面中的內容是採用創用 CC 姓名標示 4.0 授權,程式碼範例則為阿帕契 2.0 授權。詳情請參閱《Google Developers 網站政策》。Java 是 Oracle 和/或其關聯企業的註冊商標。
上次更新時間:2025-08-19 (世界標準時間)。
[[["容易理解","easyToUnderstand","thumb-up"],["確實解決了我的問題","solvedMyProblem","thumb-up"],["其他","otherUp","thumb-up"]],[["難以理解","hardToUnderstand","thumb-down"],["資訊或程式碼範例有誤","incorrectInformationOrSampleCode","thumb-down"],["缺少我需要的資訊/範例","missingTheInformationSamplesINeed","thumb-down"],["翻譯問題","translationIssue","thumb-down"],["其他","otherDown","thumb-down"]],["上次更新時間:2025-08-19 (世界標準時間)。"],[],[],null,[]]