我将构建一个电子商务网站,并希望使用一个非sql数据库,这将非常适合应用程序的计划。但是当涉及到哪个数据库适合这项工作时,我不知道。在比较各种数据库之后,似乎最好的数据库可能是mongo,沙发,甚至是orientdb。与MySQL相比,我看到所有这些参数都被使用或不被使用。但是在它们自己之间(nosql数据库),哪一个可以很好地适应电子商务解决方案呢?电子商务的NoSQL数据库
请注意,对于用例,我不会有数以千计的交易秒。或者同样高的写入速率。他们肯定会适中,但是在任何已建立的数据库可以处理的水平上。
CouchDB:拥有主控复制,我真的可以使用它。如果没有,我仍然必须在代码中实现相同的功能。我需要能够有一个用户数据库,与母舰同步。 (用户将拥有自己的潜在本地主机数据库,可以与主域服务器同步)。一旦你的查询被存储在数据库中,沙发也是快速的。因为我可能会有更高的读取性能需求。虽然不是很多。
MongoDB:查询非常简单和用户友好。另外,由于最终用户可能需要在特定时间查询某些事项,而我可能无法提前考虑,所以这看起来似乎更适合。我不必在数据库中预存我的查询。不支持原子事务,尽管只是一次写入单个文档。
OrientDB:一个图形数据库。与大多数人习惯的情况大不相同,但有了这些需求,它也可以很好地适应。东方有无模式的好处,并且支持ACID交易。图形数据库可能非常适合很多客户和产品关系。 Orient也支持master来掌握复制,类似于couchdb。
不要误会我的意思,我可以看到如何使用像MySQL的传统建造这一点,但一个的NoSQL解决方案的易用性和简单性,是非常有吸引力的。尽管在我的情况下需要一个无模式解决方案,但在nosql而不是mysql中要容易得多。一个给定的产品可能比另一个具有更多或更少的项目。并且避免每当添加新字段时重新创建表格,都是可取的。
所以这3个(或者甚至是其他你认为可能会更好)之间,与客户交易时,交易的问候每个什么特点可能为工作,或反对我的电子商务基础的网站,?
编辑:我不使用现有解决方案的原因,是因为集成的功能,我需要的,有没有解决方案可在那里。我们也打算将此作为我们公司的完整产品。除了销售之外,还有其他一些整合。它也将与商店的POS系统合作。
查看SQL + Solr/ElasticSearch。 SQL用于中等的查询/写入速率,数据安全性和交易安全性(谁希望两个DB节点向两个不同的人出售相同的东西?)。 Solr/ElasticSearch适用于灵活(或没有)模式,非常有能力的即席查询和真正快速的搜索。您可以每晚备份SQL DB到单个文件。 – aitchnyu
@aitchnyu我不确定你是否正确使用SQL。 “两个数据库节点向两个不同的人出售同样的东西”是什么意思? – Sammaye
有一个使用MongoDB的开源电子商务平台。检查出来:getfwd.com –