Skip to content

Cursor Support in Apache Pinot #13185

@vrajat

Description

@vrajat

Cursor support will allow Pinot clients to consume query results in smaller chunks. This feature allows

  • Clients to work with lesser resources esp. memory.
  • Application logic is simpler with cursors. For example an app UI paginates through results in a table or a graph.

Design Doc

Cursor support can be implemented using APIs similar to Trino or using SQL Cursors similar to Postgres. In V1, cursors will be implemented using APIs. The primary reason to choose APIs instead of a SQL interface is speed of execution. SQL cursors will be considered in the future. The expectation is that the implementation should be the same for APIs and SQL.

Note that #5246 also proposes query result pagination in Apache Pinot. This feature is inspired by the proposal. The major difference is using API cursors (and later Postgres SQL syntax) to iterate through the result set.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions