2017-01-23 53 views
2

我有近六个表,他们每个人都有20到60列Cassandra。我正在设计这个数据库的模式。查询所有列cassandra

查询中的要求是所有列必须单独查询。

  • 我知道数据是否具有使用二级索引的High-Cardinality是不鼓励的。
  • 物化视图将解决我的目的,在某种程度上我也可以在其他列上查询。

我的问题是:
在这种情况下,如果每个表都有30〜50 +物化视图,这是一个不错的模式可供遵循,或者它会在一个完全错误的轨道。它是否将这种功能发挥到极致?也许写入开始在系统上变得昂贵(我知道它们最终被写入,而不是立即写入实际的表)。

回答

5

你绝对不想要30到50个物化视图。

这听起来像你试图满足的用例是搜索,而不是特定的查询。

如果可以预先定义要在每列上完成的查询,那么您也可以使用非规范化路由,交易搜索的灵活性以获得更好的性能和更少的操作开销。

如果你有兴趣在搜索路径,这就是我建议你看看:

这些只是我知道的我的头顶。可能有其他人(对不起,如果我想念你)。我提供了每个链接的链接,因此您可以根据自己的使用情况制定自己明智的决定。

+1

Thanks @MarcintheCloud - 当DataStax的某位用户在提出问题的前几分钟回答您的问题时,这真是太棒了。 :) - 让Stakoverflow再次变得棒极了! ; p – DMin