Nosql Cassandra:复杂查询的列族?

Nosql Cassandra:复杂查询的列族?,nosql,cassandra,bigdata,non-relational-database,Nosql,Cassandra,Bigdata,Non Relational Database,每个来源都告诉我,在cassandra中支持复杂查询非常复杂,您通常需要创建一个新的列族,以支持特定的查询(如关系数据库中的连接) 我不明白为什么查询实际上需要另一个列族 IBM在此演示了一个示例: 系统有书籍,包括以下列:作者,价格,tag1,tag2,标签.. 如果我想执行类似“获取所有使用标签sci-fi写书的作者”这样的查询,他们建议创建一个名为TagsToAuthor的专栏族。为什么这是必要的。我相信您可以在不创建新柱族的情况下执行以下两种解决方案: 创建一个标记列族,包含以下列:B

每个来源都告诉我,在cassandra中支持复杂查询非常复杂,您通常需要创建一个新的
列族
,以支持特定的查询(如关系数据库中的连接)

我不明白为什么查询实际上需要另一个列族

IBM在此演示了一个示例:

系统有
书籍
,包括以下列:
作者
价格
tag1
tag2
标签..

如果我想执行类似“获取所有使用标签sci-fi写书的作者”这样的查询,他们建议创建一个名为
TagsToAuthor
的专栏族。为什么这是必要的。我相信您可以在不创建新柱族的情况下执行以下两种解决方案:

  • 创建一个
    标记
    列族,包含以下列:
    Book1
    Book2
    Book…
    Author1
    Author2
    Author…
  • 创建一个
    标记
    列族&创建一个
    书籍标记
    列族,其中包含以下列:
    书籍id
    &
    标记id
    。尽管Cassandra没有连接功能,但您只需从
    标签
    列族中获取标签id,然后通过查询
    图书标签
    获取图书id列表,然后使用这些id查询
    图书
    。就像在普通关系数据库中一样
这些解决方案的缺点是什么