Database-Recommendation

在我的項目中使用 NoSQL 是否合理

  • January 28, 2013

想像一下,您想編寫一個用於線上銷售汽車的 Web 應用程序。

一輛車有很多屬性。比如有多少門、顏色、空調等。其中一些是簡單的布爾值,其他可能需要儲存更多資訊(門數)。

一些帳戶將升級為“re/taider”帳戶,他們將有可能出售多於一輛汽車。

根據我在學校學到的知識,這實際上是對關係數據庫模型的強烈要求。

但我真的很想進入 NoSQL。

在這種情況下使用 Mongodb 或 Couchdb 會不會很傻?

這是一個更具體的問題,超出了我的理解,可能會給您我的想法提供線索。

一輛車有許多屬性,您想搜尋具有您喜歡的許多屬性的汽車。

現在我知道如何在 NoSQL 中處理這個問題的唯一方法是擁有大量 Map-reduced 視圖。然而,只有 12 個屬性,就有可能有 4096 種不同的組合。對於這個案例,不能做 4096 個 map-reduces。這不可能是常見的方式,我的意思是感覺不對。

鑑於你說你相信這個數據模型尖叫“關係”,想到的想法是,“我有一個釘子,我真的很想使用一個新月形扳手……你可以嗎?是的。你知道嗎?權衡?值得懷疑。

NoSQL 的基本觀點是,當您的數據案例相當簡單並且您已將其封裝在功能齊全的 API 後面時,它才有意義。我為 NoSQL 通常非常好的領域給出的範例是 LDAP 目錄林的背板。

對於您提到的應用程序,您的大問題可能是報告的靈活性。您必須提前有目的地建構您的報告,這是主要成本。對於這樣的應用程序,這是一個非常大的成本。

我要提出的另一點是,您可能會發現有機會在 RDBMS 旁邊使用 NoSQL。例如,您可以使用它為 Web 應用程序實現記憶體系統。

引用自:https://dba.stackexchange.com/questions/31342