我读了很多关于NoSQL-Databases的内容(播客,stackoverflow问题..),我很好奇地使用它们,但......
虽然我读了很多东西,比如how-to-sql-or-nosql或者什么是可扩展性 - 问题 - 你解决了 - 使用-nosql-data-store我仍然不确定使用哪种DB .
问题是:对于(学校)项目,我们(我的项目组)需要实现一个非常大的数据库(应该提供一个休息服务器,可能是用erlang编写的,有很多客户端).我们非常擅长为关系数据库设计数据模型.所以我们开始这样做.
现在我玩了一些NoSQL并且对性能印象非常深刻.那么:使用NoSQL数据库是一个好主意吗?我们的Datamodel有很多关系,查询会有很多连接(或者至少使用连接视图).我有时读到这意味着我应该使用关系数据库,在其他地方我读到这意味着我可以轻松地将其重新设计为NoSQL-Style以消除这种关系的开销.
我应该使用NoSQL,如果是,您建议我使用哪个系统?像HanderlerSocket这样的东西是一个选项吗?我怎样才能轻松地将关系数据模型重新设计为NoSQL-Style?
您的问题的答案是:它完全取决于您的数据和要求.在实际项目中,您将在特殊项目中分析各种NoSQL数据库(HBase,Cassandra,MongoDB,CouchDB,Riak等)的优势.然后,您可以根据MySQL等经典RDBMS的优势来评估它们.
在像你这样的学校项目中,NoSQL-Database主要是品味的决定,因为你的项目可能永远不会受益于典型的NoSQL优势,如无模式或分片.
重新设计关系数据模型可能是一项非常棘手的任务,因为您必须围绕所选NoSQL数据库的不同数据库模型.如果您的业务数据符合所选NoSQL数据库的数据库模型,则联接不一定是问题.有时,在一些NoSQL数据库(例如像MongoDB这样的面向文档的数据库)中,加入密集型关系模型要容易得多.
如果你真的想尝试使用NoSQL,请使用MongoDB,因为第一个条目的文档非常详细.
作为德语演讲者(Grütziindie Schweiz aus Berlin),我建议您阅读以下德语书籍,它可以帮助您了解使用NoSQL数据库的主要原因并解释开始使用最流行的NoSQL的主要步骤-Databases:NoSQL:Einstieg in die Welt nichtrelationaler Web 2.0 Datenbanken
归档时间: |
|
查看次数: |
1573 次 |
最近记录: |