我在互联网上读过所有的SQL的内容(花了几天的时间,所以我有权利这样称呼它:),而且我仍然有一种感觉,我还远不能决定我们的产品将使用哪个平台。我们即将开始设计一套新的产品,主要适合客户关系管理/CMS的类别,我想说几个B2B,B2C,B2E,电子商务以及其他金融和银行应用程序。所以这将是一个复杂的系统,有几十个数据库来解决不同的任务。我们把注意力集中在DB区域。我发现这文章对于企业领域的DB系统来说特别有趣。所以实际的问题是:
是更好地保持良好的老关系数据库管理系统,如MySql (是的,它必须是开放源码的,这是唯一的需求),还是从NoSQL开始,比如MongoDB/CouchDB (我想卡桑德拉对于客户关系管理系统来说是太可扩展的了,它不会是一个非常分布式和高度集群的系统。最多有4个强壮的人会做得很好)?
作为更多的细节,我可以说,许多媒体材料和文档将参与该系统,这是一个必须的商店,市场,人力资源系统。而存储的消费者将主要是网络应用。
是否更好地将DB后端分为两部分:服务关系数据的RDBMS和媒体存储的NoSQL?
你的想法,如果你有这样的例子或经验,任何帮助都将非常有助于避免未来的问题。所以提前谢谢你们!
发布于 2013-08-01 07:39:37
有些NoSQL (NewSQL)数据库完全兼容ACID,您可以考虑这些数据库。我会使用其中之一来处理事务性CRM数据。与传统的关系数据库相比,使用这些方法有太多的好处:
如果要构建CRM,ACID部分是非常重要的。我曾经构建过一个使用NoSQL数据库的客户关系管理系统,它的性能使得如果我们使用传统的RMDBMS,就可以添加我们从未考虑过的特性。
我喜欢这样的想法:您应该将媒体和文档放入CDN中,然后从数据库中引用它们。
不过,您的开放源码需求可能有点像一个展示障碍。
我写了一篇关于这个主题的文章,您可能会在选择数据库的主题上给出一些建议:
http://www.ulitzer.com/node/2636237
https://stackoverflow.com/questions/17972913
复制相似问题