Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add continuous queries #7

Open
rhauch opened this issue Jan 28, 2015 · 1 comment
Open

Add continuous queries #7

rhauch opened this issue Jan 28, 2015 · 1 comment

Comments

@rhauch
Copy link
Owner

rhauch commented Jan 28, 2015

The prototype did not support queries due to time constraints, and because queries were likely to be pretty straightforward.

But rather than just add regular queries, it would be far better (and more along the lines of the rest of the architecture) to support continuous queries, and allow clients to subscribe to these queries and receive the results (initially) and changes to the results (continually).

Consider RethinkDB, which allows ad hoc queries that produce results and that will also tell the server to send changes in that view to the client. This is quite interesting and powerful, but it's not clear that most mobile apps really need ad hoc queries. Instead, developers might need to try different queries, but then once they settle upon a set of queries the mobile app will use, those queries will not change (until future releases of the app).

Some of these queries will not use parameters, meaning all mobile apps would issue the exact same query. Debezium could maintain the results and would return them as needed (as soon as the client subscribed), and any changes in the results could be sent to subscribed clients (via events and notifications).

Some of the queries would likely be parameterized, meaning different clients would supply different values for the parameters. To implement this, Debezium could maintain the complete results as well as indexes (either on the parameters and/or the clients) so that as changes come in it can continually evaluate which clients need the update and send the changes to them.

@emmanuelbernard
Copy link
Contributor

It's unclear to me that continuous query is a clear winner and has obvious use cases for the mobile case. It makes for a strange UI as things do change without user intervention.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants