2017-06-09 59 views
0

假設我們聲明瞭「Video」類,並且此類中的某一列是「Comments」。每個註釋都是一個字符串,註釋列是一個包含許多字符串的數組。解析數組實現爲大量數據提供優化?

當然,這是一種可行的架構,但對於每個視頻的大量評論,我並不確定。

假設有一個客戶端每次需要10條評論:video.comments[:10]。做我已經提取評論數組的事實也意味着剩餘噸的評論也被提取?或者Parse爲我們進行了優化,以便僅提取被提取的評論?

這種問題的解決方案是什麼?

我一直在想的一個解決方案是在服務器端編寫一個服務,它只響應所需的註釋數組,但如果Parse已經在定義中爲我們提供了這樣的解決方案他們的數組在數據庫中。

回答

1

我會避免粘在陣列中。我曾經在存儲數據陣列方面進行過類似的工作,並且它可能會失控並且效率很低。

我建議你有一個單獨的表格,其中包括視頻的對象ID,評論,製作它的用戶等等。然後,獲得您在VideoComment類中查詢的評論,equalTo("videoId", videoId);,您可以使用標準查詢分頁(跳過+限制)以獲得您需要的評論。

+0

但是每次都會發生很多評論的問題。 但是,也許我們可以'query.limit',然後向服務器請求更多的評論,這些評論不包含在使用'query.notContainedIn'的預覽結果中。 所以我認爲你的解決方案將解決我的問題。 非常感謝, 我會更新以得出結論:) – Etgar

+1

您將使用query.skip和query.limit來處理分頁。我會避免做指針數組。那變得醜陋。如果需要,只需使用查詢獲取預覽的第一個x註釋即可。您可以創建一個函數,將您需要的視頻對象和第一個x註釋數組返回給您,而無需將數組存儲在視頻對象上。 –

+0

你會推薦使用關係而不是你的建議嗎? 正如我所見,您的建議實施起來要容易得多,但也許Relation應該是正確的選擇? – Etgar