Tessera DB
PX-01
View 02
Rows, joins and window functions, over the same records the graph walks.
A large, honest subset of SQL: tables, joins, aggregates, window functions, constraints, triggers and MERGE, over HTTP or the Postgres wire protocol, so psql and BI tools connect without a driver of ours.
01
04
View 02 · SQL
The same records, as tables a BI tool can read.
SQL and Cypher answer the same question with the same rows, because they read one store. Bound parameters keep input that looks like syntax a string, on every door.
4
Query languages
psql
Over Postgres wire
$1
Bound parameters
02
04
What it does.
01
The everyday SQL
SELECT, JOIN, GROUP BY, aggregates, window functions, constraints and BEFORE / AFTER triggers.
02
MERGE INTO
WHEN MATCHED and WHEN NOT MATCHED, from a table or subquery source — enough for an incremental merge.
03
Materialized views
CREATE and REFRESH MATERIALIZED VIEW. A plain CREATE VIEW is refused by name rather than half-supported.
04
Postgres wire
Simple and extended query protocols, prepared statements and real transactions. Reads tested with psql, psycopg and PostgreSQL JDBC; writes tested with psql.
05
Streaming results
SQL, Cypher and TQL stream as NDJSON, so a slow client slows the scan instead of filling memory.
06
CSV out
Add "format":"csv" to a query and the answer is CSV with a header row.
03
04
What it is not.
01
Not full PostgreSQL
The kit's query guide lists what is missing, for example ROUND and CREATE INDEX.
02
One statement per request
Two statements in one request are refused, not half-run.
04
04
First rows in thirty seconds, from the kit.
H=(-H "Authorization: Bearer $TESSERA_KEY" -H 'Content-Type: application/json')
curl -s "${H[@]}" -X POST "$TESSERA_URL/api/sql" \
-d '{"sql":"CREATE TABLE Note (id TEXT PRIMARY KEY DEFAULT ULID(), body TEXT, at BIGINT DEFAULT NOW_MS())"}'
curl -s "${H[@]}" -X POST "$TESSERA_URL/api/sql" \
-d '{"sql":"INSERT INTO Note (body) VALUES ($1)","params":["hello tessera"]}'
curl -s "${H[@]}" -X POST "$TESSERA_URL/api/sql" -d '{"sql":"SELECT id, body, at FROM Note"}'
# The same row, found by its words
curl -s -H "Authorization: Bearer $TESSERA_KEY" "$TESSERA_URL/api/search?q=hello"