SYSTEM Cited by 1 source
PlanetScale Workflows¶
What it is¶
PlanetScale Workflows (docs)
is a dashboard-level operator surface on
PlanetScale that exposes
Vitess's data-motion workflow family
(MoveTables, Reshard, Materialize, LookupVindex,
Migrate) as a self-service UI rather than a
CLI/SDK/Enterprise-runbook path. At launch
(2024-11-07) the first shipped workflow is the
table-migration-to-sharded-keyspace variant of
MoveTables —
moving one
or more tables from an unsharded keyspace to a sharded
keyspace on the same PlanetScale database.
Workflows functionality is available on all PlanetScale plans, including those that previously gated sharding behind Enterprise-only access. (Source: sources/2026-04-21-planetscale-introducing-sharding-on-planetscale-with-workflows.)
Architectural shape¶
Workflows is a thin UI layer over Vitess's existing workflow primitives. The underlying mechanics (VReplication row-copy + continuous binlog replication, VDiff verification, routing-rule swap at cutover, reverse replication workflow creation for rollback) are unchanged from the CLI path. What Workflows adds is:
- A phase-named UI with buttons for each phase.
- A Validate pre-check gate before the workflow can start.
- Phase-by-phase progress monitoring (copying phase progress, replication-lag visibility).
- A Switch back button that surfaces the reverse- traffic primitive as a dashboard action rather than a CLI incantation.
- Plan-agnostic availability — sharding no longer requires Enterprise.
This is a canonical instance of patterns/ui-wrapped-workflow-primitive: take a multi-step CLI primitive, constrain it to monotonic progression, expose each step as a button, and let the customer compose entire production-grade data-motion operations without leaving the dashboard.
UI-verb to Vitess-verb mapping¶
| Dashboard verb | Vitess CLI verb | Effect |
|---|---|---|
| New workflow / Validate | pre-check | Confirms schema compatibility, VSchema validity, source binlog config, target keyspace readiness |
| Create workflow | MoveTables Create |
Provisions per-target-shard VReplication streams; enters copying phase |
| (copying phase) | VReplication row-copy + binlog tail | Source row-copy ordered by primary key, then continuous binlog replication |
| Verify data | VDiff |
Full-table consistency check using consistent snapshots at same logical time on both sides |
| Switch traffic | MoveTables SwitchTraffic |
Atomic routing-rule swap; creates reverse-replication workflow |
| Switch back | MoveTables ReverseTraffic |
Flips routing rules back to source via already-running reverse workflow |
| (implied) Complete | MoveTables Complete |
Tears down reverse workflow, cleans up routing-rule artefacts |
The verb mapping is the load-bearing wiki datum about Workflows — it makes explicit what the dashboard is and isn't doing, and shows that the safety properties of the underlying CLI flow (zero-downtime cutover, reverse- replication rollback, VDiff pre-cutover gate) are fully preserved in the UI path.
Substrate dependencies¶
- Cluster configuration is the prerequisite substrate — the sharded target keyspace must already exist with a VSchema before a workflow can move data into it. Cluster configuration
- Workflows are the two halves of PlanetScale's self-service sharding story: cluster configuration builds the topology; workflows moves the data.
- MoveTables is the underlying Vitess primitive for the first shipped workflow.
- VReplication is the data-motion substrate under MoveTables.
- VDiff is the verification substrate under the Verify-data button.
- Schema routing rules are what Switch-traffic atomically flips at cutover.
Planned extensions¶
The post names future workflows without a shipping timeline:
- Reshard — self-service shard-count change on an already-sharded keyspace. "The ability to reshard is also important to allow users to self-manage their growing database systems on PlanetScale."
- Migrate
— cross-cluster migration. "We also plan to integrate
the Migration workflow into PlanetScale to help with
migrations from outside sources." Note:
external-MySQL-to-PlanetScale imports (already shipped
as PlanetScale Database Imports since 2021) are built
on the same
MoveTablesprimitive but use a different product surface; the plannedMigrateworkflow is the Vitess-cluster-to-Vitess-cluster case.
Not explicitly named as roadmap but implied by the
enumeration: Materialize (for derived-view
maintenance) and LookupVindex (for secondary-index
tables).
Seen in¶
- sources/2026-04-21-planetscale-introducing-sharding-on-planetscale-with-workflows — canonical wiki introduction. Ben Dicken's 2024-11-07 launch post is the first public disclosure of Workflows as a first-class product surface on PlanetScale, the mapping from UI verbs to Vitess CLI verbs, the enumeration of the full Vitess workflow family, and the plan-agnostic availability claim. Positions the unsharded-to-sharded table-move as the first shipped workflow because "this is one of the most important workflows for our users, as it unlocks the ability to horizontally scale existing unsharded databases with minimal friction."
Related¶
- systems/planetscale
- systems/vitess
- systems/vitess-cluster-configuration
- systems/vitess-movetables
- systems/vitess-vreplication
- systems/vitess-vdiff
- concepts/unsharded-to-sharded-migration
- concepts/horizontal-sharding
- concepts/schema-routing-rules
- concepts/reverse-replication-workflow
- concepts/query-buffering-cutover
- patterns/ui-wrapped-workflow-primitive
- patterns/routing-rule-swap-cutover
- patterns/reverse-replication-for-rollback
- companies/planetscale