2011-03-18 69 views
1

假設我們模仿UsersUserGroups之間的多對多關係的行爲,並且我們將用戶所在的UserGroup的ID存儲在用戶文檔中數組。現在,當我刪除一個UserGroup時,那個UserGroup的ID將仍然在用戶文檔中的Array中 - 是否影響任何時候的性能,它在數組中保留了一些舊的和無用的值?文檔數據庫 - 多對多

回答

0

我得出結論,Document-oriented database是不是爲關係。相反,我決定使用面向對象的數據庫(db4o)。

+0

現在在db4o中對聚合查詢有什麼支持?現在有沒有可編程的索引?我記得幾年前使用它時遇到了一些麻煩。 – 2011-03-19 12:57:33

+0

@MikeEast - 不支持索引。創建對象時,我將Guid指定爲ID。 – ebb 2011-03-19 18:19:05

0

它肯定不會以任何方式影響性能,因爲它只是數據在那裏。

如果它將包含在Map/Reduce索引中,該索引取決於該關係是否滿足,那麼可能會導致影響。但另一方面,如果情況是這樣的話,你會得到即時的反饋,因爲索引將被標記爲錯誤。

出於好奇,你如何存儲相關的ID?如果你知道我的意思,你把它們作爲一個完整的鑰匙還是鑰匙存放?我見過Ayende使用完整的關鍵方法,但我不知道哪種方法是最好的。