Architecture
Infino writes Parquet to object storage to power search. Keep a single copy of your data so every tool in your stack reads the same source of truth.
hover a section to learn more
Data and indexes share one Parquet file
Each chunk of a table is one self-contained file, a superfile.
- Columns and both search indexes, keyword and vector, live in the same file.
- It's a valid Apache Parquet file, so DuckDB, pandas, and Spark open the same bytes.
Files are never edited, only added
A table is its manifest: the many superfiles it currently points to. Infino calls that whole, manifest-tracked table a supertable.
- If you have used Iceberg or Delta Lake, this is the same idea: immutable data files plus a small pointer that commits atomically. Here the files also carry the search indexes.
- Switching manifests is one atomic step, so a reader sees the table before a write or after it.
Storage and compute are separate
The engine stores nothing permanently.
- It fetches the byte ranges a query needs and keeps frequently used data on local disk, the way a warehouse caches hot partitions.
Run it managed, or run it yourself
The same build runs on any object store, chosen once at startup.
- Amazon S3, Azure Blob Storage, Google Cloud Storage, or a local disk.
- Run it serverless on Infino Cloud: multi-tenant, metered on usage, with a free tier, support and SLAs.
- Or run the same engine yourself, on-premise or in your cloud.
One copy of your data, searched in place.
Free tier · No credit card to start
or run it yourself: pip install infino · Apache-2.0 · quickstart →
Go deeper: accelerating full-text search queries · opening a file on S3 used to take two round trips · docs ↗