2017-10-14 67 views
12

如何使用Firestore執行廉價加入?Firestore:加入vs Firestore定價

在Firebase中,我將.map()響應並根據每個項目上存儲的外鍵獲取附加數據。但是,考慮到每次讀取支付的Firestore的定價模式,此出現太貴。你怎麼看?

就我而言,我的關係是對很多類別(大約5-7)的很多操作。每個動作都屬於一個類別。

這種情況下的最佳做法是什麼?我應該像Firebase一樣繼續做下去嗎?或者我應該獨立獲取這兩個集合並將它們加入到Javascript中?

Jakub

PS您如何實際使用參考數據類型?不幸的是在文檔中沒有描述它。

+0

你檢查:https://stackoverflow.com/questions/46568850/what-is-firestore-reference-data-type-good-for? – Wandrille

+0

謝謝,是的,我有。不幸的是,選票最多的評論要求更新文檔。目前還不清楚如何使用參考數據類型。 –

+0

已確認。我也對答案感興趣。 – Wandrille

回答

7

正如您所記錄的,Cloud Firestore對每個讀取的文檔收費。這是基於在您進行查詢時返回給您的文檔數量。無論您獲取文檔需要多少次個別請求(假設每個請求返回> = 1個文檔)都無關緊要。因此,執行map()方法比獲取所有文檔並將它們加入內存要便宜,因爲您將從後端讀取更少的文檔。

如果您分享更多關於你的數據模型(我不能想象在我的頭上)有可能會減少需要通過複製一些數據或利用連接的查詢方式。