Query object storage
Altertable can query data that already lives in Amazon S3, Cloudflare R2, Google Cloud Storage, or another S3-compatible bucket. Map the files once, then use the same SQL engine and query interfaces you use for Altertable catalogs.
Object storage queries run in place. Altertable reads mapped files from the connected bucket.
What you can query
Source | Best fit | Learn more |
|---|---|---|
Parquet, CSV, or JSON files | Query file paths and prefixes as external tables | |
Apache Iceberg datasets | Query datasets through Iceberg table metadata | |
Amazon S3 table buckets | Query AWS-managed Iceberg table buckets |
Query mapped tables
After you map object storage, query the exposed tables with fully qualified names:
SELECTevent_name,count(*) AS event_countFROM bucket_exports.main.eventsWHERE event_date >= DATE '2026-01-01'GROUP BY event_nameORDER BY event_count DESC;
Mapped object-storage tables can be joined with Altertable-managed catalogs and other external catalogs:
SELECTcustomers.segment,count(*) AS eventsFROM bucket_exports.main.eventsJOIN analytics.main.customersON events.customer_id = customers.customer_idGROUP BY customers.segment;
Query from any Altertable interface
Use object-storage tables from:
- SQL explorer for interactive analysis.
- HTTP API for applications and services.
- DuckDB for local analysis and file joins.
- Postgres adapter and Arrow Flight SQL adapter for BI tools.
- MCP tools and Ask Agent for agentic exploration.
Query performance
For large object-storage datasets, prefer columnar formats such as Parquet or Iceberg, keep partitions predictable, and filter on partition columns when possible. Altertable can query CSV and JSON files, but columnar formats usually scan less data and return results faster.