Continuous queries must be continually reevaluated for the latest results against underlying fast-changing data. However, these queries can become complex, with aggregations, analytic functions, and join operations, and can be very expensive for databases to run. At the same time, normal transactions remain the core business of OLTP databases and cannot afford much performance regression as a result of heavy continuous query execution. In this conflicting situation, using materialized views—special database objects that can compute and cache the result of certain queries—to support continuous queries is the most desirable solution. With materialized views, continuous queries can avoid costly from-scratch computation and use the cached result to respond promptly.
Ethan Zhang offers an overview of VoltDB, a NewSQL distributed database that supports continuous queries three orders of magnitude faster with materialized views, highlighting a transparent, automatic, and incremental-view maintenance approach. VoltDB supports materialized views on individual persistent tables or streamed tables where the insertion to the table will be directly pipelined to a downstream system and the data does not persist in the main memory. It also supports materialized views on joins of multiple persistent tables. The maintenance of materialized views is transparent, not requiring any configuration and tuning from the user. In addition, VoltDB automatically maintains views to the latest state whenever any updates are applied to the view base tables; users do not need to kick off background tasks to refresh the views. Maintenance is also incremental, meaning views are only updated with a minimal set of required changes, instead of recomputing the view content from scratch. This is the key to saving a significant amount of time and guaranteeing the smooth execution of normal transactions at a high-throughput level.
This session is sponsored by VoltDB.
Ethan Zhang is a software engineer at VoltDB. Ethan is working toward a PhD at the University of Houston, where his research focuses on parallel database systems and cubes.
©2017, O'Reilly Media, Inc. • (800) 889-8969 or (707) 827-7019 • Monday-Friday 7:30am-5pm PT • All trademarks and registered trademarks appearing on oreilly.com are the property of their respective owners. • firstname.lastname@example.org
Apache Hadoop, Hadoop, Apache Spark, Spark, and Apache are either registered trademarks or trademarks of the Apache Software Foundation in the United States and/or other countries, and are used with permission. The Apache Software Foundation has no affiliation with and does not endorse, or review the materials provided at this event, which is managed by O'Reilly Media and/or Cloudera.