> **Can't find what you're looking for?** Use `search_docs` on the docs MCP server at `https://docs.ampdb.io/api/mcp` to find what you need.

# Glossary

The terms these docs use, in alphabetical order. Each links to the page that explains it.

## Active revision

The [table revision](/get-started/glossary#table-revision) that queries read. Each table has one. See
[Tables](/get-started/concepts/tables#table-revisions).

## Admin API

The HTTP API that the [controller](/get-started/glossary#controller) serves to manage Amp: register providers and datasets, deploy datasets,
and watch jobs and workers. `ampctl` and the SDKs' admin clients use it. It listens on port 1610 by default. See
[Admin API](/managing-amp/admin-api).

## Amp app

The web app at [app.ampdb.io](https://app.ampdb.io), to explore and query datasets in your
browser, on Edge & Node's hosted Amp.

## Amp directory

The `.amp` directory where [solo mode](/get-started/glossary#solo-mode) keeps its state: its configuration, providers, manifests, data, and
PostgreSQL database. It's created in the directory you start `ampd solo` from. `ampup` uses a directory with the same
name in your home directory by default, `~/.amp`, for the programs it installs.

## `ampctl`

The command-line tool to manage Amp through its [Admin API](/get-started/glossary#admin-api): providers, datasets, jobs, workers, and more.
See [ampctl](/clis/ampctl).

## `ampd`

The Amp daemon: the program that runs Amp's services, the [query server](/get-started/glossary#query-server), the [controller](/get-started/glossary#controller),
and [workers](/get-started/glossary#worker). See [ampd](/running-amp/ampd).

## `ampsql`

The command-line tool to run [batch queries](/get-started/glossary#batch-query), and print their results as a table, JSON, or CSV. See
[ampsql](/clis/ampsql).

## `ampsync`

A program that copies a dataset's tables into PostgreSQL and keeps them up to date, handling [reorgs](/get-started/glossary#reorg) and
restarts. See [ampsync](/clis/ampsync).

## `ampup`

Amp's installer and version manager. It installs `ampd`, `ampctl`, and `ampsql`, and switches between Amp releases. See
[ampup](/clis/ampup).

## Arrow

Apache Arrow, a standard format for tables in memory and over the network. Amp's query results are Arrow, and its
column types are Arrow's, like `UInt64` and `Utf8`. See [arrow.apache.org](https://arrow.apache.org).

## Arrow Flight

The protocol Amp's [query server](/get-started/glossary#query-server) speaks: a way to send [Arrow](/get-started/glossary#arrow) tables over the network, built on
gRPC. Any Arrow Flight SQL client can query Amp. See [Arrow Flight](/querying/arrow-flight).

## Backfill

The first phase of a [raw dataset](/get-started/glossary#raw-dataset)'s [materialization](/get-started/glossary#materialization): extracting the blocks from its
[start block](/get-started/glossary#start-block) to the chain's latest block. Afterwards, it follows the chain as new blocks arrive.

## Batch query

A query that runs once, over the data available when it starts, and returns a complete result. Queries are batch
queries unless you stream them. See [Batch Queries](/querying/batch-queries).

## Block number

A block's position in its chain: 0 for the first block, then 1, 2, and so on. Tables of raw and derived datasets have a
`_block_num` column, with the block number each row belongs to. See
[Tables](/get-started/concepts/tables#block-numbers).

## Block range

A range of consecutive blocks, from one block number to another, both included, with the hashes that link it to the
blocks around it. Amp records the block range of every file it writes and every batch it streams. See
[Reorgs](/get-started/concepts/reorgs).

## Bloom filter (Experimental)

An index Amp can add to a column's Parquet files, which lets queries that look for a given value skip the files that
can't contain it. A dataset's manifest declares which columns get one. See [Bloom Filters](/datasets/bloom-filters).

## Canonical chain

The sequence of blocks a chain's nodes agree on. When a [reorg](/get-started/glossary#reorg) replaces blocks, the new ones join the canonical
chain, and the old ones are abandoned. Amp's queries read only data from the canonical chain.

## Compaction

Merging a table's small Parquet files into bigger ones, which makes queries faster. Amp does it in the background, in
every deployed dataset. See [Compaction](/running-amp/storage/compaction).

## Config map (Unstable)

A named configuration document that Amp stores, like an RPC endpoint's settings, and that you manage through the
[Admin API](/get-started/glossary#admin-api). In this release, no part of Amp loads config maps yet. See
[Config Maps](/managing-amp/config-maps).

## Controller

The Amp service that serves the [Admin API](/get-started/glossary#admin-api), and schedules [jobs](/get-started/glossary#job) on [workers](/get-started/glossary#worker). Run on its
own with `ampd controller`. See [Controller](/running-amp/controller).

## Cursor

A position in a [streaming query](/get-started/glossary#streaming-query): the last block it fully delivered, by number and hash, for each
network. Send it when you reconnect to resume the stream from there. See
[Reorgs](/get-started/concepts/reorgs#resuming-a-stream).

## Dataset

A named, versioned collection of [tables](/get-started/glossary#table). You register a dataset, deploy it to fill its tables, and query
them. A dataset is [raw](/get-started/glossary#raw-dataset), [derived](/get-started/glossary#derived-dataset), or [static](/get-started/glossary#static-dataset). See
[Datasets](/get-started/concepts/datasets).

## Dataset reference

How you name a dataset: `namespace/name@revision`, like `acme/eth_mainnet@1.0.0`. Without `@revision`, it means the
`latest` version. In SQL, put the dataset part in double quotes: `"acme/eth_mainnet".blocks`. See
[Datasets](/get-started/concepts/datasets#names-and-namespaces).

## Dependency

A dataset that a [derived dataset](/get-started/glossary#derived-dataset) reads from. The derived dataset's manifest names each dependency,
and gives it a short alias to use in its SQL. See [Derived Datasets](/datasets/derived-datasets).

## Deployment

Starting to fill a version of a dataset's tables, with `ampctl dataset deploy`. It schedules [jobs](/get-started/glossary#job) that extract
or compute the data. Contrast with [registration](/get-started/glossary#registration). See
[Jobs and Workers](/get-started/concepts/jobs-and-workers).

## Derived dataset

A dataset whose tables are SQL over other datasets, its [dependencies](/get-started/glossary#dependency). It's where you decode, transform,
and combine data. Its kind is `manifest`. See [Derived Datasets](/datasets/derived-datasets).

## `dev`

A [tag](/get-started/glossary#tag) that Amp moves to the version of a dataset registered most recently, tagged or not. See
[Versioning](/datasets/versioning).

## Distributed mode

Running Amp's services as separate processes, `ampd controller`, `ampd server`, and `ampd worker`, sharing one
PostgreSQL database and one storage location. For production. See [Distributed Mode](/running-amp/distributed-mode).

## End block

The block a deployment stops at, set with `ampctl dataset deploy --end-block`. Without one, the deployment follows the
chain as it grows.

## Export (Unstable)

Copying a dataset's tables into another database, like PostgreSQL or Snowflake, and keeping them up to date, with an
`adbc` [job](/get-started/glossary#job). See [Exports](/managing-amp/pipelines).

## Finalized block

A block that the chain guarantees will never be replaced by a [reorg](/get-started/glossary#reorg). A raw dataset can extract only finalized
blocks, so it never sees a reorg, at the cost of lagging the chain. See
[Reorgs](/get-started/concepts/reorgs#avoiding-reorgs).

## Function

A SQL function. Amp's built-in functions decode chain data, like `evm_decode_log` for smart contract events, and you
can write your own in JavaScript. See [Functions](/querying/functions).

## Garbage collection

Deleting the files that a table no longer uses, like those that [compaction](/get-started/glossary#compaction) replaced, after a delay that
lets running queries finish. Every deployed dataset has a job that does it. See
[Garbage Collection](/running-amp/storage/garbage-collection).

## Hash

A fixed-size fingerprint of some data, which changes completely if the data changes. Each block has a hash, and names
its parent's, which is how [reorgs](/get-started/glossary#reorg) are detected. Each [manifest](/get-started/glossary#manifest) has one too.

## Hosted Amp

An Amp that someone else runs, like Edge & Node, which you connect to with its URLs and a [token](/get-started/glossary#token). See
[Choose How to Run Amp](/get-started/choose-how-to-run-amp#connect-to-a-hosted-amp).

## JavaScript function (Experimental)

A SQL function you write in JavaScript, in a derived dataset's manifest. See
[JavaScript](/querying/functions/javascript).

## Job

A piece of work Amp schedules and a [worker](/get-started/glossary#worker) runs, like extracting a dataset or deleting unused files. It has
an ID, a status, and a history. See [Jobs and Workers](/get-started/concepts/jobs-and-workers).

## Kind

The type of a dataset or a provider. A dataset's kind says where its data comes from: a raw kind like `evm-rpc`,
`manifest` for derived datasets, or `static`. A provider's kind says which kind of source it connects to. See
[Datasets](/get-started/concepts/datasets#kinds-of-datasets) and [Providers](/get-started/concepts/providers#kinds).

## `latest`

A [tag](/get-started/glossary#tag) that Amp moves to the highest [semantic version](/get-started/glossary#semantic-version) of a dataset. A dataset reference
without a version means `latest`. See [Versioning](/datasets/versioning).

## Lineage (Unstable)

The datasets a dataset depends on, and the datasets that depend on it, as a graph. See [Lineage](/managing-amp/lineage).

## Manifest

The JSON document that defines a dataset: its kind, its tables and their columns, and what its kind needs, like a raw
dataset's network or a derived dataset's SQL. See [Manifests](/datasets/manifests).

## Manifest hash

A 64-character [hash](/get-started/glossary#hash) of a manifest's contents, which identifies it exactly. Use it as a dataset's version to
pin a definition that never changes. See [Datasets](/get-started/concepts/datasets#revisions).

## Materialization

Filling a dataset's tables: extracting a raw dataset's data from its provider, or running a derived dataset's SQL, and
writing the results as Parquet files. A deployment schedules a job that does it.

## Metadata database

The PostgreSQL database where Amp keeps what it knows about its data: datasets, providers, jobs, workers, and the files
that make up each table. See [Metadata Database](/running-amp/metadata-database).

## Microbatch

One of the small batches in which a [streaming query](/get-started/glossary#streaming-query) runs and sends its results, each covering a
[block range](/get-started/glossary#block-range).

## Namespace

The first part of a dataset's name, which groups datasets by organization, team, or project, like `acme` in
`acme/eth_mainnet`. On a hosted Amp, namespaces decide who can read and publish which datasets. `_` is the default
namespace.

## Network

A chain, like `mainnet` for Ethereum or `base`. Raw datasets and providers name one, and Amp matches them by it. See
[Providers](/get-started/concepts/providers).

## Node ID

The name of a [worker](/get-started/glossary#worker), unique among running workers, like `worker-01`. In solo mode, the worker is `worker`.

## Parquet

A compressed file format that stores tables column by column, which most data tools read. Amp stores every table as
Parquet files. See [parquet.apache.org](https://parquet.apache.org).

## Provider

A named connection to a source of chain data, like an Ethereum node's RPC endpoint. Raw datasets extract through the
providers that match their kind and network. See [Providers](/get-started/concepts/providers).

## Query server

The Amp service that answers SQL queries, over [Arrow Flight](/get-started/glossary#arrow-flight), on port 1602 by default. Run on its own
with `ampd server`. See [Query Server](/running-amp/query-server).

## Raw dataset

A dataset that extracts one chain's data, like its blocks, transactions, and logs, through a [provider](/get-started/glossary#provider). See
[Raw Datasets](/datasets/raw-datasets).

## Registration

Storing a dataset's manifest in Amp, under a name and a version, with `ampctl dataset register`. It extracts nothing.
Contrast with [deployment](/get-started/glossary#deployment).

## Reorg

A reorganization: a chain replacing blocks it already published with different ones. Amp detects reorgs, replaces the
data from abandoned blocks, and tells streaming clients which rows to replace. See
[Reorgs](/get-started/concepts/reorgs).

## Revision

The part of a [dataset reference](/get-started/glossary#dataset-reference) after `@`, which picks a version of the dataset: a
[semantic version](/get-started/glossary#semantic-version), `latest`, `dev`, or a [manifest hash](/get-started/glossary#manifest-hash). Not to be confused with a
[table revision](/get-started/glossary#table-revision).

## RPC endpoint

The API a chain's node serves, like Ethereum's JSON-RPC API, which Amp extracts data from through a
[provider](/get-started/glossary#provider).

## Schema

The list of a table's columns, each with a name, a type, and whether it can be empty. See
[Tables](/get-started/concepts/tables#columns).

## Semantic version

A version number like `1.0.0`, which you give a dataset when you register it with `--tag`. See
[semver.org](https://semver.org) and [Versioning](/datasets/versioning).

## Service name

The name a service's traces and metrics carry, after the `ampd` command that runs it: `ampd.solo` for solo mode,
`ampd.server`, `ampd.worker`, and `ampd.controller` for distributed mode, and `ampd.migrate`. See
[Telemetry](/running-amp/telemetry#service-names).

## Solo mode

Running all of Amp's services in one process, with `ampd solo`, for development and testing. It can start and stop
PostgreSQL for you. See [Solo Mode](/running-amp/solo-mode).

## Start block

The first block a raw dataset covers, set in its manifest. It defaults to the chain's first block.

## Static dataset (In development)

A dataset whose tables are CSV files, for reference data that doesn't come from a chain. It has no blocks, and is never
deployed. See [Static Datasets](/datasets/static-datasets).

## Storage

Where Amp keeps its data, as Parquet files, along with manifests and
[provider files](/get-started/concepts/providers#provider-files): a directory, or an object store like Amazon S3,
Google Cloud Storage, or Azure Blob Storage. See [Storage](/running-amp/storage).

## Streaming query

A query that keeps running, and sends new results as the chain grows. Add `SETTINGS stream = true` to a query to stream
it. See [Streaming Queries](/querying/streaming-queries).

## Table

A named set of rows that all have the same columns. Every dataset has one or more, like `blocks`, `transactions`, and
`logs`. See [Tables](/get-started/concepts/tables).

## Table revision

One complete set of a table's files. Each table has one [active](/get-started/glossary#active-revision) revision, which queries read, and
can keep others. See [Tables](/get-started/concepts/tables#table-revisions).

## Tag

A name that points to one version of a dataset: a [semantic version](/get-started/glossary#semantic-version), [`latest`](/get-started/glossary#latest), or
[`dev`](/get-started/glossary#dev).

## Token

A secret that proves who you are to a [hosted Amp](/get-started/glossary#hosted-amp). `ampctl`, `ampsql`, and the SDKs send it with every
request, from the `AMP_AUTH_TOKEN` environment variable or an option.

## Verification (Experimental)

Checking extracted data against the chain's own cryptographic fingerprints, like Ethereum's block hashes, or Solana's
transaction signatures. See [Verification](/managing-amp/verification).

## Worker

The Amp service that runs [jobs](/get-started/glossary#job): it extracts and transforms data, and writes it to storage. Run one with
`ampd worker`. See [Jobs and Workers](/get-started/concepts/jobs-and-workers).

## Worker events (Experimental)

Messages that workers can send to Kafka as they extract data: when a sync starts, progresses, completes, or fails. See
[Worker Events](/running-amp/worker-events).
