物化视图 - 最佳实践

Materialised views - best practices

随着物化视图的出现 - 是否有可遵循的最佳实践指南?

我已阅读; http://www.datastax.com/dev/blog/new-in-cassandra-3-0-materialized-views

这似乎是一个很棒的功能。尤其是如果您仍然对 RDBMS 思维执着...

但实际上并没有明确说明,例如; "You should favour materialised views over separate purpose-built tables." 或 "You should only use materialised views for XX use-cases"

所以我不清楚我是否应该创建特定于查询的表(就像我以前在 Cassandra 中所做的那样)或切换到使用物化视图。或者更具体地说 - 哪种用例最适合每种方法。

感谢任何建议!

看完 2016 年 Cassandra 峰会的会议后,我从演讲者那里听到的所有建议——包括 DataStax 的 Patrick Mcfadden,都表示物化视图是一个很好的默认选择。

如果您必须谨慎控制数据出现的时间,则只需要创建单独的表。

在幕后; Cassandra 实际上为物化视图创建了真实的表——只是无法保证来自 "source" 的数据更改何时到达视图。

如果您可以接受(可能)几秒钟的间隔 - 在视图中可用的新数据之间 - 它会使任务变得更加容易。