Database design 卡桑德拉桌子设计

Database design 卡桑德拉桌子设计,database-design,cassandra,nosql,Database Design,Cassandra,Nosql,有人能更详细地解释一下吗?特别是,如果能看到一个没有“高阶重复”和“关键字”(似乎没有解释)的描述,那将大大有助于我 表的设计必须考虑到更高阶的可能性 重复,如无限的关键字存储在大量的 排。存储在m行中的n个关键字不是一个好表 设计。您应该重新考虑表模式,以便更好地设计 将查询放在首位 这是这里的摘录: 我理解在多个表中具有相同数据的概念,以减少以编程方式连接来自多个表的数据的需要。这两个引用的句子是否强调了重复程度出现问题的一些场景 谢谢 我相信文档基本上是在试图引入去规范化可以做什么的想法。

有人能更详细地解释一下吗?特别是,如果能看到一个没有“高阶重复”和“关键字”(似乎没有解释)的描述,那将大大有助于我

表的设计必须考虑到更高阶的可能性 重复,如无限的关键字存储在大量的 排。存储在m行中的n个关键字不是一个好表 设计。您应该重新考虑表模式,以便更好地设计 将查询放在首位

这是这里的摘录:

我理解在多个表中具有相同数据的概念,以减少以编程方式连接来自多个表的数据的需要。这两个引用的句子是否强调了重复程度出现问题的一些场景


谢谢

我相信文档基本上是在试图引入去规范化可以做什么的想法。他们以骑自行车的人的名字为例。这可能会在非规范化时出现在多行中(与关系结构不同)。由于冗余/重复/非规范化,您的存储消耗增长速度可能比使用关系数据库快得多

我相信他们所指的另一件事是,如果你有一些东西,比如说,类别(本质上是一个“list”类型的列值),其中所有行都有许多类别(可能有无限多个类别),由于重复,最终可能会产生大量数据,这可能会影响查询响应和空间消耗。您应该仔细考虑设计,以确定查询所需的类别频率。如果不是经常这样,也许可以采用更好的表设计(例如,将列表拆分为一个单独的表,以便后续查询能够满足需要它的一小部分查询)。简而言之,我们的想法是在实现之前暂时暂停,以确保您的设计在分布式/复制环境中有意义

这是我从文件中收集到的

-吉姆