What SPICE is
SPICE — Super-fast, Parallel, In-memory Calculation Engine — is QuickSight's columnar in-memory store. A dataset in SPICE is a compressed copy that QuickSight queries directly.
It is faster than querying most sources, isolates load from production databases, and scales to many concurrent readers without hammering the warehouse. Capacity is purchased per account and shown in the admin console.
Direct query
Direct query passes each visual's request through to the source. Data is always current and there is no SPICE capacity consumed.
Costs: performance depends entirely on the source, concurrency hits the database, and every dashboard view generates queries. On Athena or Redshift this also means real money per query.
Use direct query when data must be current to the minute or when the dataset exceeds what SPICE can hold economically.
Refresh
SPICE datasets refresh on a schedule — up to hourly on Enterprise, daily on Standard, plus manual and API-triggered refreshes.
Incremental refresh reloads only rows within a look-back window based on a date column, rather than the whole dataset. It requires a date field and a source that supports the filtered query. Use it once full refreshes get slow.
Refreshes can also be triggered through the API — the common pattern is having an ETL job call QuickSight after the warehouse load finishes, so data and dashboards stay in step.
Capacity problems
Ingestion failures are usually capacity or source-side. Check SPICE capacity in the admin console first; a dataset that will not refresh often means the account is full.
Reduce consumption by removing unused columns from the dataset, filtering rows at the dataset level, and deleting abandoned datasets — they hold capacity indefinitely. Unused datasets accumulating quietly is the most common cause of a sudden refresh failure.