1
NiagaraCQ: A Scalable Continuous Query System for Internet Databases
Jianjun Chen David J. DeWitt Feng Tian Yuan Wang Computer Sciences Department University of Wisconsin-Madison
Outline
Motivation What is NiagaraCQ ? Details Performance Conclusion
Motivation
Continuous queries are growingly popular. Why?
Allow users to receive new results when they become
available without having to issue the same query repeatedly.
Especially useful in an environment like the Internet
comprises of large amounts of frequently changing information
Challenges:
Need to be able to support millions of queries due to the
scale of the Internet.
No existing systems have achieved this level of scalability.
What’s NiagaraCQ?
The continuous query sub system of Niagara,
which is a distributed database system for querying distributed XML data sets using a query language like XML-QL.
Supports scalable continuous query
processing over multiple, distributed XML files.
NiagaraCQ Novelty and Approaches
Grouping. Incremental group optimization strategy with
dynamic re-grouping.
Query-split scheme. Support both change-based and timer-based queries
in a uniform way.
To ensure scalability, need to do more:
Incremental evaluation of continuous queries. Use of both pull and push models for detecting
heterogeneous data source changes.
Memory caching.
NiagaraCQ Command Language
CREATE CQ_name
XML-QL query DO action {START start_time} {EVERY time_interval} {EXPIRE expiration_time}
Delete CQ_name