Live Tables
CREATE LIVE TABLE for streaming ingestion targets queryable by SQL.
Overview
A live table is a named, append-oriented table that accepts rows from the LiveTable.ingest_row() API and is immediately queryable via SQL. Changes can be observed via a change_feed iterator.
DDL Statements
| Statement | Description |
|---|---|
CREATE LIVE TABLE <name> | Register a live table visible to SQL queries. |
REFRESH LIVE TABLE <name> | Flush pending inserts into the queryable snapshot. |
DROP LIVE TABLE <name> | Remove the live table. |
Example
CREATE LIVE TABLE sensor_readings;
import krishiv as ks
session = ks.Session.embedded()
session.sql("CREATE LIVE TABLE sensor_readings")
lt = session.live_table("sensor_readings")
lt.ingest_row({"sensor_id": "s1", "value": 23.4, "ts": 1700000000})
lt.refresh()
session.sql("SELECT * FROM sensor_readings").show()