Skip to content

sql,kv,storage: avoid unnecessary value retrievals #146575

@jbowens

Description

@jbowens

With value separation (cockroachdb/pebble#112), values will commonly be stored externally to sstables. Retrieving a value will commonly require 1 or 2 additional block reads. Current KV API interfaces do not support retrieving just a key, even if query execution only requires a key. Similarly uniqueness checks that find a key will retrieve its values unnecessarily.

Avoiding value retrievals is the simplest form of end-to-end projection push down, and it doesn't suffer from the API complexity that more general forms of projection push down do.

Jira issue: CRDB-50603

Metadata

Metadata

Assignees

No one assigned

    Labels

    A-kvAnything in KV that doesn't belong in a more specific category.A-sql-executorSQL txn logicA-storageRelating to our storage engine (Pebble) on-disk storage.C-enhancementSolution expected to add code/behavior + preserve backward-compat (pg compat issues are exception)T-storageStorage Team

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions