我正在尋找方法來實現免費模式的數據存儲設計。但是,通常在NoSQL學校中使用無模式這個術語。我對NoSQL的可伸縮性優勢不感興趣。一個例子是朋友式的方式(如Bret Taylor的博客中所解釋的)。你能否指點我一些其他資源或設計實例/案例研究,其主要目標是要有一個靈活/無模式設計(我甚至可以犧牲性能)?模式免費數據存儲設計
回答
我不是100%地肯定你的使用情況,您能分享一下你正在嘗試做一些更多的信息? 當你說你沒興趣「的NoSQL」這是否意味着你必須實現一個關係型數據庫之上的一切嗎? (哪一個?)
有一對夫婦的做法,把關係模式更加靈活:
EAV /實體 - 屬性 - 值設計,其中所有「實體」一個表中存儲公用信息/系統中的對象,一個表包含這些實體可以具有的屬性的信息以及一個存儲(entity_id,attribute_id,value)的表。例如,請參見http://en.wikipedia.org/wiki/Entity-attribute-value_model。
「皮包骨格的表」,其中你有寬列表,每列類型有一列(一個varchar列,一個blob列,一個int列等),然後只填寫匹配所需值類型的列儲藏。當你只想存儲不同類型的值而不是隨時更改屬性時,這是有意義的。可用於將屬性存儲在EAV模式中。
儲存「三合一」的數據:語義網的人已經花了相當多的時間研究如何最好的商店RDF數據,包括主題關係客體的三元組。有「真正的」RDF商店有自己的查詢語言,但其中一些可以使用關係數據庫作爲存儲後端。如果這聽起來像是要走的路,請看這裏:http://www.w3.org/2003/01/21-RDF-RDB-access/ - 一個簡單的谷歌查詢「在關係數據庫中存儲rdf」應該指向幾個Triplestore的實現,可以有效地映射到關係數據庫中。
希望這有助於!
感謝您的回答。我知道我說的有點模糊,從概念上講,我想存儲的只是數據,我沒有性能限制。那麼我有什麼選擇讓數據保持一種比傳統方法更靈活的方式來修改,這是我的問題。我正在檢查你提到的方法。 – mete 2011-03-04 11:41:08
你可能想看看Berkeley DB。它提供了一個無模式簡單的鍵值API(ala NoSQL),並且是一個直接鏈接到您的應用程序的庫。 Berkeley DB的好處在於你可以擁有你的蛋糕並且也可以吃它。它提供了開發人員正在尋找的簡單,靈活,可嵌入的數據存儲,但它非常快速,可擴展且可靠。除了基本密鑰/值對API之外,Berkeley DB還提供了兩個其他對開發友好的API:Java Collections API和Direct Persistence Layer API(類似於POJO的持久性API)。
大多數BDB應用程序開發人員使用最適合於應用程序代表數據的API。 C和C++結構通常存儲爲簡單且不透明的鍵/值對,其中Java集合顯然與該API匹配良好,並且Java類與DPL API匹配良好。
祝您的搜索。
- 1. 免費存儲
- 2. 免費存儲用戶數據
- 3. Azure免費存儲
- 4. 免費存儲android
- 5. NetBeans免費設計
- 6. 用於Visual Paradigm的免費設計模式模板?
- 7. 計費數據庫 - 存儲交易
- 8. PCI合規性 - 存儲計費數據
- 9. 計費系統的設計數據庫模式
- 10. XML數據存儲數據庫?免費和開源
- 11. 免費存儲與C++
- 12. 免費的CVS存儲庫?
- 13. 免費在線存儲來存儲應用程序設置
- 14. 與存儲庫設計模式交易
- 15. 存儲庫設計模式與Dapper
- 16. MVC存儲庫模式設計決策
- 17. 存儲庫設計模式指導
- 18. 網絡存儲設計模式
- 19. 免費結果設置數據mysqli_result ::免費
- 20. 設計數據庫模式
- 21. silverlight 3:Silverlight的任何免費數據庫(存儲在獨立存儲中)?
- 22. CloudKit:免費公共存儲和數據傳輸
- 23. 試用/免費雲服務來存儲關係數據庫
- 24. 任何免費的SDK來存儲和返回數據?
- 25. XML參考測試數據的免費公共存儲庫
- 26. Amazon RDS數據庫免費層存儲限制
- 27. 在數據庫中存儲類名以模仿設計模式 - Ruby on Rails
- 28. 數據/數據庫設計模式?
- 29. 無模式數據存儲與模式數據存儲的優勢
- 30. 免費數據時內存泄漏?
你能提供一個鏈接到博客文章? – 2011-03-01 20:55:44
它在這裏。 http://bret.appspot.com/entry/how-friendfeed-uses-mysql – mete 2011-03-02 07:01:25