Compute usage with SQL in Foundry

Running queries or builds with SQL warehousing in Foundry consumes compute resources, measured in compute-seconds. This page explains how compute is used by the SQL warehouse and how usage is attributed to Foundry resources for reporting. Usage can be viewed from the Resource management application.

Foundry compute by query type

The below table lays out Foundry compute used in SQL warehouse queries by query type and links to relevant detailed documentation.

Query engineQuery typeSupported resourcesCompute rateUsage attribution
FurnaceDirect readDatasets, Iceberg tables, virtual tables, restricted viewsFreeNot applicable
FurnaceOther reads (SELECT)Datasets, Iceberg tables, virtual tables, restricted viewsFurnace SQLSplit evenly across resources queried
FurnaceWrites (CREATE, INSERT, UPDATE, DELETE)Datasets, Iceberg tablesFurnace SQLSplit evenly across resources written to
Legacy direct read engineDirect readDatasetsNot applicableNot applicable
Legacy Spark engineOther reads (SELECT)Datasets, Iceberg tables, virtual tables, restricted views, objects (via materializations)ContourSplit evenly across resources queried
Ontology SQLRead (SELECT)Object types, many-to-many linksFoundry OntologyThe saved application executing the query, or split evenly across resources queried if no saved application is present

Direct reads

Direct reads let you preview or export existing data without incurring Furnace SQL compute charges. A direct read selects all columns or a subset of columns from a single resource, optionally using LIMIT to restrict the number of rows returned. You can also rename columns with AS.

Queries that filter rows, sort results, join resources, aggregate values, remove duplicates with DISTINCT, or calculate new values are not direct reads. Subqueries and common table expressions (WITH) are also excluded.

For example, the following direct read returns up to 100 rows from a dataset without transforming the data:

Copied!
1 SELECT * FROM `/path/to/dataset` LIMIT 100;