Glossary
Definitions of terms used in Vitess documentation
This document defines terms used throughout Vitess documentation, command-line tools, and source code.
Backup #
A tablet state indicating the tablet is currently taking a backup of its data.
Cell #
A data center, availability zone, or other failure domain. Vitess uses cells to isolate failures and route queries to geographically appropriate tablets.
Consistent Lookup Vindex #
A lookup vindex that maintains consistency without requiring two-phase commit.
Drained #
A tablet state reserved for Vitess background operations. Drained tablets do not serve queries.
Functional Vindex #
A vindex that computes the keyspace ID using an algorithmic mapping such as a hash or identity function, without consulting external data.
Global Topology #
The portion of the topology service that stores cluster-wide metadata shared across all cells.
GTID Position #
Global Transaction Identifier position. Marks a specific point in the MySQL binary log for replication tracking.
Keyrange #
The range of keyspace IDs that a shard is responsible for. Expressed in hexadecimal notation like -80 (up to 0x80) or 80- (from 0x80 onward).
Keyspace #
A logical database that maps to one or more MySQL databases. If using sharding, a keyspace spans multiple databases; otherwise it maps to a single MySQL database. Applications interact with keyspaces as if they were single databases.
Keyspace ID #
A computed value that determines which shard contains a given row. The primary vindex maps a column value to a keyspace ID.
Local Topology #
The portion of the topology service that stores metadata specific to a single cell.
Lookup Vindex #
A vindex that uses a lookup table to map column values to keyspace IDs. Enables routing queries on columns other than the sharding key.
Materialize #
A VReplication workflow that creates and maintains materialized views or realtime rollups across shards.
MoveTables #
A VReplication workflow that migrates tables from one keyspace to another.
mysqlctl #
A command-line utility for managing the lifecycle of local MySQL instances used by Vitess.
Online DDL #
Non-blocking schema changes that allow tables to remain available during migrations. Vitess supports multiple strategies including its native approach, gh-ost, and pt-osc.
Primary #
The tablet type for the MySQL primary of a shard. Handles all write operations. Formerly called "master."
Primary Vindex #
The vindex that determines row-to-shard mapping. Equivalent to the sharding key.
Rdonly #
A tablet type for read-only replicas that are not eligible for promotion to primary. Used for batch jobs, analytics, and other background operations.
Reparenting #
The process of changing which tablet serves as the primary for a shard.
Replica #
A tablet type for MySQL replicas that are eligible for promotion to primary.
Replication Graph #
Metadata that tracks MySQL primary-replica relationships within the cluster.
Reshard #
A VReplication workflow that splits or merges shards to scale horizontally.
Restore #
A tablet state indicating the tablet is restoring data from a backup.
Routing Rules #
Configuration that overrides default query routing during migrations, allowing gradual traffic shifts between keyspaces.
Secondary Vindex #
A vindex that provides additional query routing optimization beyond the primary vindex.
Shard #
A horizontal partition of a keyspace. Each shard contains a subset of the keyspace's data based on keyrange. An unsharded keyspace has a single shard named 0 or -.
SwitchTraffic #
A VReplication operation that redirects query traffic from a source to a target during workflows like MoveTables or Reshard.
Tablet #
A combination of a vttablet process and its associated MySQL instance. Tablets are the basic unit of data storage and query serving in Vitess.
Tablet Alias #
A unique identifier for a tablet in the format cell-uid, such as zone1-100.
Topology Service #
A metadata store (backed by etcd or ZooKeeper) that holds cluster configuration, replication graph, and serving state. Often abbreviated as "topo."
Unsharded #
A keyspace with a single shard, containing all data without horizontal partitioning.
VDiff #
A VReplication tool that verifies data consistency between source and target during migrations.
VEXPLAIN #
A SQL command that shows how Vitess will execute a query across shards, including the generated MySQL queries.
Vindex #
Virtual index. A mechanism that maps column values to keyspace IDs for query routing. Types include primary, secondary, lookup, and functional.
VReplication #
Vitess's streaming replication mechanism for data movement operations like MoveTables, Reshard, and Materialize.
VSchema #
Virtual schema. Configuration that defines how a keyspace is sharded, including vindexes, table definitions, and routing rules.
VStream #
A change notification service on VTGate that streams row changes to clients.
VStreamer #
The component on VTTablet that streams MySQL binary log events for VReplication and VStream.
vtbackup #
A standalone utility for taking backups of MySQL data managed by Vitess.
vtcombo #
A single-process test environment that runs all Vitess components together. Useful for local development and testing.
VTAdmin #
A web-based administrative interface for managing and monitoring Vitess clusters.
vtctl #
The legacy command-line administration tool for Vitess. Deprecated in favor of vtctldclient.
vtctld #
The Vitess control daemon. A server process that executes cluster management commands issued by vtctldclient.
vtctldclient #
The current command-line client for Vitess cluster management. Communicates with vtctld to execute administrative operations.
VTEXPLAIN #
A command-line tool for offline query analysis that shows how Vitess would route and execute queries without connecting to a live cluster.
VTGate #
A lightweight, stateless proxy that routes queries to the appropriate tablets. Applications connect to VTGate rather than directly to MySQL.
VTOrc #
Vitess Orchestrator. Provides automated failover, recovery, and tablet management for Vitess clusters.
VTTablet #
The Vitess process that manages a MySQL instance, handling query serving, replication, and schema management. Together with MySQL, it forms a tablet.
vttestserver #
A lightweight Vitess server for local development and testing that simulates a Vitess cluster.