Querying data

This page describes how to query data in Lenses via the CLI.

The CLI allows you to browse and subscribe to topic data with SQL. Please refer to the Lenses SQL documentation for more details.

Use these flags to control the data that’s returned:

  • keys print message keys

  • keys-only print the keys only, not the value of the message

  • meta print the message metadata, partition number and offsets

  • stats print query statistics as the last message

Browsing

Browse data via the query command, optionally validate and output stats:

lenses-cli query \
    --keys \
    --meta "SELECT score, author FROM reddit_posts LIMIT 50"

Execute with stats and show offsets

lenses-cli query \
    --stats "SELECT score, author FROM reddit_posts LIMIT 50"

Live

Live continuous queries update according to the query and never stop until terminated:

lenses-cli \
    query \
    --live-stream "SELECT score, author FROM reddit_posts WHERE _sample=2 AND _sampleWindow=200"

Interactive shell

The interactive shell allows you to have an interactive experience and issue Lenses SQL queries from the command line.

To start the interactive shell, issue the following command:

lenses-cli shell

The available options are the following:

  • keys print message keys

  • keys-only print the keys only, not the value of the message

  • meta print the message metadata, partition number and offsets

  • stats print query statistics as the last message

  • pretty pretty print the JSON output

  • live-stream run as a continuous query

  • !options prints the current options

  1. Options are set using the ! prefix

  2. Queries are executed by ;

Multiline queries are possible but not available in the history inside the shell. After a restart, the multiline queries are concatenated into one line and can be selected.

Query history is stored in .lenses/history in the home directory of the user.

    __                                 ________    ____
   / /   ___  ____  ________  _____   / ____/ /   /  _/
  / /   / _ \/ __ \/ ___/ _ \/ ___/  / /   / /    / /
 / /___/  __/ / / (__  )  __(__  )  / /___/ /____/ /
/_____/\___/_/ /_/____/\___/____/   \____/_____/___/
Docs at https://docs.lenses.io
Connected to [https://master.lenses.io:443] as [andrew], context [master]
Use "!" to set output options [!keys|!keysOnly|!stats|!meta|!pretty]
Crtl+D to exit

lenses-sql>

Last updated

Logo

2024 © Lenses.io Ltd. Apache, Apache Kafka, Kafka and associated open source project names are trademarks of the Apache Software Foundation.