Pull Queries are non-persistent (transient)
SELECT queries with no
EMIT CHANGES clause (that is part of push queries).
Pull Queries retrieve the latest result from a source (a materialized view, a table, or a stream) instantly and as of "now".
Pull queries are printed out only in the console.
Pull queries follow a traditional request/response model. They retrieve a finite result from the ksqlDB server and terminate (like in traditional databases).
Pull queries use an eventually consistent consistency model.
All pull queries can be disabled (on a specific ksqlDB server) using ksql.pull.queries.enable.
Stream pull queries can be disabled using ksql.query.pull.stream.enabled.
Stream Pull Queries¶
Stream Pull Queries (pull queries over stream) are pull queries over streams and are executed using QueryExecutor.
Table Pull Queries¶
Table Pull Queries (pull queries over table) are pull queries over tables and are executed using QueryExecutor.