Materialized View Performance in Cassandra 3.x
Materialized views (MV) were introduced in Cassandra 3.0 to simplify common denormalization patterns in data modeling. They provide performance benefits similar to manually denormalized tables but are automatically updated by Cassandra whenever the base table is modified. However, they introduce a read-before-write overhead at write time and require tracking which MV updates have been applied per replica. A benchmarking tool called mvbench was developed to compare the cost of maintaining four denormalizations for a playlist application using manual updates and MVs. The results showed that while MVs were faster on average, their performance started to decline from its initial peak over time due to the sstable-based bloom filter not being able to short circuit the read-old-value part of the MV maintenance logic. Overall, materialized views can provide significant benefits for read queries but may have a negative impact on write performance.
Company
DataStax
Date published
May 10, 2016
Author(s)
Jonathan Ellis
Word count
887
Language
English
Hacker News points
None found.