gpt4 book ai didi

mongodb - 电子商务的 NoSQL 数据库

转载 作者:IT老高 更新时间:2023-10-28 13:13:37 34 4
gpt4 key购买 nike

我将构建一个电子商务网站,并希望使用一个 no-sql 数据库,该数据库非常适合该应用程序的计划。但是当谈到哪个数据库适合这项工作时,我不确定。在比较了各种 DB 之后,看起来最好的可能是 mongo、couch 甚至 orientdb。与 MySQL 之类的东西相比,我已经看到了使用或不使用它们的论点。但是在它们之间(nosql 数据库),哪一个更适合电子商务解决方案?

注意,对于用例,我不会每秒处理数千笔交易。或类似的高写入率。他们肯定会适度,但在任何已建立的数据库都可以处理的水平上。

CouchDB:拥有主对主复制,我真的可以使用它。如果没有,我仍然必须在代码中实现相同的功能。我需要能够拥有一个用户数据库,与母舰同步。 (用户将拥有自己的,可能是本地主机数据库,可以与主域服务器同步)。一旦您的查询存储在数据库中,Couch 也很快。因为我可能对读取性能有更高的需求。虽然不是很多。

MongoDB:查询非常简单且用户友好。此外,由于最终用户可能需要在给定时间查询某些我可能无法提前考虑的事情,这似乎更合适。我不必将我的查询预先存储在数据库中。支持原子事务,但仅在一次写入单个文档时。

OrientDB:图形数据库。与大多数人习惯的大不相同,但根据需要,它也可以很好地适应。 Orient 具有无模式以及支持 ACID 事务的优点。图形数据库可以很好地处理大量客户和产品关系。 Orient 也支持 master 到 master 的复制,类似于 couchdb。

不要误会我的意思,我可以看到传统上如何使用 MySQL 之类的东西来构建它,但是 nosql 解决方案的易用性和简单性非常吸引人。虽然在我的情况下,需要一个无模式的解决方案,在 nosql 而不是 mysql 中会容易得多。一个给定的产品可能比另一个产品有更多或更少的项目。并避免在添加新字段时重新创建表格。

那么在这 3 个(甚至您认为可能更好的其他)之间,在处理客户交易时,对于基于电子商务的网站,每个功能中的哪些功能可能对我有用或不利于我?

编辑:我不使用现有解决方案的原因是因为有了我需要的集成功能,那里没有可用的解决方案。我们还打算将其用作我们公司的完整产品。除了销售之外,还会有一些其他的集成。它还将与商店的 POS 系统一起使用。

最佳答案

由于电子商务可以涵盖从购物车到成员(member)资格和定期订阅的所有内容,因此很难准确猜测您所设想的要求和复杂性。

在构建电子商务网站时,早期的考虑之一应该是调查是否已经有成熟的电子商务产品或工具包可以满足您的要求。即使您的用例看起来很简单,订单、发票、付款、产品和客户关系等流程也有许多微妙之处。也可以将您的应用程序分为目录管理方面(可能更自定义)与计费(可能是第三方,甚至可能通过托管的计费/支付 API)。

另一个考虑因素应该是您为谁开发电子商务网站:这是为了满足您自己的需求,还是为了客户?自定义构建的时间、预算和功能可能难以估计和安排.. 技术的利基选择可能会导致难以找到/雇用额外的开发专业知识。

第三个考虑因素是您选择哪种语言来开发您的应用程序。一些语言将为不同的数据库提供更完整/成熟/文档化的驱动程序和/或框架抽象。

也就是说,编写电子商务系统似乎是许多开发人员的必经之路 ;-)。

编辑:自此答案最初于 2012 年发布以来发生了很大变化,您绝对应该引用当前的产品信息。例如,MongoDB 支持 Decimal128 values从 MongoDB 3.4 (2016) 和 multi-document transactions 开始自 MongoDB 3.6 (2017) 以来。

关于mongodb - 电子商务的 NoSQL 数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12488720/

34 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com