我已經聽到很多關於MongoDB,CouchDB,SimpleDB等無模式(經常分佈式)數據庫系統的討論......無模式數據庫系統的吸引力是什麼?
雖然我能理解它們可能對某些目的有價值,但在大多數情況下我的應用程序中,我試圖堅持具有特定類型的特定數量的字段的對象,我只是自動思考關係模型。我總是考慮具有唯一整數ID,空/非空字段,SQL數據類型和選擇查詢以查找集合的行。雖然我被這些新系統的分佈式本質和簡單的JSON/RESTful接口所吸引,但我不明白如何鬆散地鍵入鍵/值哈希值可以幫助我進行開發。爲什麼鬆散型,無模式系統對於保持乾淨的數據集是有好處的?我怎樣才能找到所有日期在x和y之間的項目,當他們可能沒有日期?有沒有加入的概念?
我知道很多系統都有自己的差異和優勢,但是我想知道範式的不同。我想這是一個開放式的問題,但也許社區的答案和他們親眼看到這些系統的優點的方式將有助於啓發我和其他人關於什麼時候我想要利用這些(公認的更多臀部)系統而不是傳統的RDBMS。
MongoDB(至少與Mongoose一樣)是_NOT_無模式的。 – 2017-11-07 17:08:58