database - “电子商务”可扩展数据库模型

标签 database web-applications scalability nosql

我想了解数据库的可扩展性,所以我刚刚听过一个关于高度可扩展的 Web 应用程序的习惯的演讲

http://techportal.inviqa.com/2010/03/02/habits-of-highly-scalable-web-applications/

在上面,主持人主要讲了关系数据库的可扩展性。

我还阅读了一些有关 MapReduce 和面向列的表、大表、超表等的内容...试图了解哪些是扩展 Web 应用程序数据的最新方法。但对我来说,第二组很难理解它适合的位置。

它用作事务性、可靠的数据存储?还是不是,它只是为了大量访问和处理以及处理细粒度的操作,我们将永远需要依赖 RDBMS?

有人可以全面介绍这些新技术以及如何使用它们吗?

最佳答案

基本上是关于使用正确的工具来完成工作。关系数据库已经存在了几十年,这意味着它们非常擅长解决当时没有改变的问题——例如跟踪销售情况。尽管它们已成为几乎所有内容的默认数据存储,但它们并不擅长处理 20 年前不存在的问题——尤其是可扩展性和没有明确定义、不变模式的数据。

NOSQL 是一类工具,旨在解决不完全适合关系数据库的问题。可伸缩性是最著名的,尽管不太可能与大多数开发人员相关。我认为我们还没有看到太多的另一个关键用例是用于根本不需要担心数据存储特性并且可以使用默认设置的小型项目——能够跳过数据库设计, ORM 和数据库维护是相当有吸引力的。

特别是对于电子商务,您最好至少部分使用 sql - 您可能使用 NOSQL 来获取产品详细信息或推荐引擎,但您希望销售数据位于易于查询的 sql 表中。

关于database - “电子商务”可扩展数据库模型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2580244/

相关文章:

python - 我如何使用 TinyDB 检索值?

mysql - 使用聚合函数时从 hibernate 中的多个表中选择列

java - ORA-28040 : No Authentication protocol

java - 如何实现利用浏览器缓存

mysql - 电话资费网站的 ERD - 这是最佳选择吗?

ios - DeepLink 支持 iOS 8 和 iOS 9

database - 在数据库列中存储键值对

php - 设计连接到数据库的应用程序

design-patterns - 设计模式或代码味道,功能分解导致的非规范化数据

python - 什么 HTTP 框架用于简单但可扩展的应用程序?