【问题标题】:Which choice of technology for this?为此选择哪种技术?
【发布时间】:2011-12-26 22:27:12
【问题描述】:

我面临以下问题。 目标是开发一个数据库来存储以下模式:

您有PRODUCTS,它可以由PRIMARY_PRODUCTS 和其他PRODUCTS 组成。

我的第一个问题是知道为此推荐使用哪种 SQL DB 或 NoSQL 技术? 我不太了解 NoSQL,我不确定是否值得花时间调查整个概念是否不适合 pb。 如果 NoSQL 值得一看,推荐哪个版本?我在看Cassandra,但是种类太多了,宇宙很大。

如果 NoSQL 不适合这个,那么我们需要恢复到 SQL。 你觉得hierarchyId 合适吗?

【问题讨论】:

  • 你能举一个你想存储的数据的例子吗?比如它的外观等等。
  • 您要处理交易吗?您将拥有多少条记录(以及多少 GB 的数据)?你会有多少并发用户?
  • 要存储的数据一点也不复杂。我将成为另一张桌子的 int 键。

标签: sql database database-design nosql


【解决方案1】:

SQL 或 NoSQL 都可以存储和检索此类数据,并且两种技术都可以完成这项工作。

主要区别在于其他地方:简而言之,SQL 的事务和保证一致性与 NoSQL 读取器的高性能。

在您的确切情况下,SQL 及其对事务的支持将确保在成功存储所有子产品后查看者将看到一个复合产品。

然而,在大多数现实生活中,查看者在 NoSQL 系统上看到部分承诺的产品的机会非常小,以至于无关紧要:未来对该产品的读取将是正确的。

【讨论】:

  • 感谢您的快速回答。在 SQL 中,我对您将使用哪种数据类型有点混乱:我将创建一个 PRODUCTS 表和一个 PRODUCTS_DATA 表。我不知道如何选择列的类型以便成为 PRODUCTS id 或 PRIMARY_PRODUCT Id。我可以看到的一个解决方案是添加一个包含要搜索的类型的列,但这对我来说听起来又快又脏。任何优雅的解决方案?同时在 NoSQL 中我不知道该怎么做。有什么有趣的链接吗?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-10-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-11-15
相关资源
最近更新 更多