AppsAutessaDB

Data lake and analytics · AutessaDB

Columnar data lake tables

AutessaDB - Columnar is the data lake built into AutessaDB: lakehouse-style columnar tables for millions to billions of rows, such as events, logs, sales history, sensor readings, call records and exports from other systems. It is built for the work a row table handles poorly, aggregations, group-bys, window functions and joins over large data, and it lives on the same platform as your relational tables and Drive, with the same sharing and row and column security.

Goes beyond a typical managed database
order_lines · data lake1.8B rows · columnarSAMPLE
rows1.8B
storage212 GB
partitionMONTH(order_date)
last load2h ago
loadmoderowsrejected
orders-2026-09.parquetAPPEND41.2M0
orders-2026-08.csvAPPEND39.8M12 reported

-- the problem

Row tables are the wrong shape for reporting on big data

Call records, event logs and sales history are too large to page through row by row and too analytical for per-row edits. The usual answer is a separate warehouse with its own copies and its own permissions. The AutessaDB data lake stores this data in columns inside the same database, so "revenue by region by month" reads only what it needs and nothing has to be re-secured.

What you get

  • Built for millions to billions of rows of events, logs, history and exports that arrive in batches and are read in aggregate.
  • Columnar storage with partitions, so a query reads only the columns and date ranges it needs.
  • Typed columns: STRING, INT, LONG, DOUBLE, DECIMAL(p,s), BOOLEAN, DATE, TIMESTAMP, TIMESTAMPTZ, STRING_LIST and JSON for nested values.
  • Money-like numbers are suggested as DECIMAL(18,2) so totals add up exactly, and large numbers come back as exact strings.
  • Read-only ANSI SQL with joins, common table expressions, subqueries, unions and window functions.
  • Every query is an asynchronous job: wait for it, check back later, cancel it, or download the full result as CSV or Parquet.
  • Each table has a SQL name, so one query can join every data lake table you can read.
  • One platform: copy a relational table into the data lake in one step, and share it with the same access levels as every other table.

-- how it works

How does columnar data lake tables work in AutessaDB?

  1. Create

    Build, then AutessaDB - Columnar, then New table: start from a sample file, define columns, or copy a table's columns.

  2. Partition

    Accept the suggestion, such as month of order_date, or choose your own.

  3. Load

    Upload CSV or Parquet, or copy from an AutessaDB table, appending or replacing.

  4. Query

    Open the SQL Workbench, Ask in plain language, give an agent the tools, or build a dashboard in an app.

-- every option

Data lake table options

optionwhat it does
SQL nameUnique in your company, used in FROM and JOIN; defaults to the snake_case table name.
PartitioningUp to two fields with a transform each; filter on them to scan less.
LoadsCSV or Parquet uploads, server-fetched files, or an AutessaDB table; Append or Replace.
System columns_loaded_at (when the row was loaded) and _load_id (which load added it).
Schema changesAdd columns or widen a type (INT to LONG); no rename, remove or narrow.
PrecisionLarge integers and DECIMAL return as strings; timestamps as ISO-8601 UTC.
ResultsPaged, downloadable as CSV or Parquet, and kept for 7 days.
LimitsEach plan sets storage, scan, concurrency, run time (up to 15 minutes) and load limits.

-- example

Load and query from the CLIbash
autessa autessadb analytics load --tableId V1StGXR8Z5 --localFile ./orders-2026-09.parquet

autessa autessadb analytics query --tableId V1StGXR8Z5 --output table --sql "
  SELECT region, SUM(net_amount) AS revenue
  FROM order_lines
  WHERE order_date >= DATE '2026-01-01'
  GROUP BY region
  ORDER BY revenue DESC"

Full reference in the AutessaDB CLI docs and the API reference.

-- permissions

Who can do what?

accesscan
READDescribe, preview and query.
WRITELoad and append data.
ADMINChange the schema and semantic layer, share and delete.

◆ AI assist

Where AI helps

When you create a table from a file, Suggest descriptions with AI drafts the table and column descriptions before you create it. After that, Ask and data agents write SQL over the table using its semantic layer.

AI in AutessaDB works inside the same access rules as the person using it, and schema changes always wait for a person to apply them.

-- relations

How it connects

-- faq

Questions about columnar data lake tables

What is the AutessaDB data lake?

AutessaDB - Columnar, a columnar data lake built into AutessaDB for millions to billions of rows. You bulk-load files or tables, query with analytical SQL, ask in plain language and give agents tools to answer data questions, with the same security as every other table.

How big can a data lake table get?

It is built for millions to billions of rows; your plan sets storage, scan and load limits.

Is the data lake separate from my regular AutessaDB tables?

No. It is the same AutessaDB, with the same sharing levels and roles, and you can load a relational table into it in one step.

Can I edit rows in a data lake table?

You change data by loading or appending, and you can delete rows that match a condition as a job. Row-by-row edits, triggers and semantic search belong to relational tables.

$ autessa autessadb tables create

Try columnar data lake tables in AutessaDB

Lakehouse-style columnar tables for events, logs, history and exports, built for aggregations, group-bys, window functions and joins over billions of rows.

Read the AutessaDB guide or install the CLI.

100% customizable, code and all

Make AutessaDB fully your own.

Use it out of the box, then change anything. Ask Autobot, Autessa’s AI builder, for a new field, screen, report, workflow or agent and it builds it into your copy of the app. Or open the code and edit it yourself. Nothing is locked: the app, its data and its code are yours.

Start free and make it yours