物化视图 - 最佳实践
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" 的数据更改何时到达视图。
如果您可以接受(可能)几秒钟的间隔 - 在视图中可用的新数据之间 - 它会使任务变得更加容易。
随着物化视图的出现 - 是否有可遵循的最佳实践指南?
我已阅读; 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" 的数据更改何时到达视图。
如果您可以接受(可能)几秒钟的间隔 - 在视图中可用的新数据之间 - 它会使任务变得更加容易。