Lakehouse
Ingest or connect?
Ingest or connect?
Ingest data to copy records or files into Altertable-managed tables. Connect an external catalog to query data where it already lives. You can use both and join their tables with SQL.
Choose a route
| Your data | Route | Where the queried data lives |
|---|---|---|
| Existing database or warehouse | External catalog | In the source system |
| Files, Iceberg datasets, or managed table catalogs in object storage | Query object storage | In your bucket or table catalog |
| Local CSV, JSON, or Parquet files | Upload files | In managed lakehouse tables |
| New files arriving in a bucket | Bucket synchronizer | Copied into managed tables on a schedule |
| Application records or backend events | Append or upsert | In managed lakehouse tables |
| DataFrames or local DuckDB results | DataFrame ingestion or DuckDB ingestion | In managed lakehouse tables |
| Product behavior and user identities | Product Analytics SDK or API | In the Product Analytics catalog |
| Application logs and traces | OpenTelemetry SDK or collector | In the OpenTelemetry catalog |
| Existing data pipelines | Pipeline integration | Depends on the integration |
Connecting a source does not schedule a copy of its data. Query freshness and performance depend on the source. A bucket synchronizer copies new files into managed tables on its configured schedule.
Choose the ingestion operation
- Append for new JSON records. Altertable can create missing tables and add columns.
- Upload to create a table from a file or append file rows. Use overwrite only when you intend to replace the table.
- Upsert to insert new rows and update matching rows by a primary key.
See the ingestion guide for working examples and the HTTP API reference for request limits and exact behavior.
Ask your agent to choose
Agent prompt
Read https://altertable.ai/docs/lakehouse/ingest-or-connect.md for context.
Help me choose how to bring my data to Altertable. Ask where it lives, whether it must stay there, and how fresh it needs to be. Recommend a supported ingestion or external-catalog route and explain what gets copied.