Skip to content
About
Main content

Glossary

83 terms, in the sense this mechanism uses them. The platform glossary has every term across all mechanisms.

Absence detection
Detecting that something that should have happened did not; needs an observer outside the failing system.
Activity
In durable execution, a call to an external system whose result is logged.
Admission control
Declining new work before any resources are committed to it.
Aging
Raising a waiting task's priority over time to prevent starvation.
Append-only
A file or log where data is only added at the end.A store where you only add new rows and never change old ones in place. Most analytical stores work this way, because rewriting data in place is expensive on large files.
At-least-once
Delivery where a message may arrive more than once; arises from processing before acking.
Atomic
A change that is either fully visible or not visible at all.A change that is either fully visible or not visible at all. Renaming a single file on one filesystem is usually atomic: other programs see the old name or the new name, never half of a rename.
Backfill
Running a workflow for past intervals by iterating over the interval key space.1 other meaning →Going back over existing data to fill in or fix a value. Example: a new column exists, and a backfill job computes it for the last three years of rows.
Backpressure
A signal from a consumer, based on its actual state, that makes the producer slow down.If a slow step cannot keep up, it tells the step before it to slow down, and that step tells the one before it, until the source stops reading. We study this in Part 8.
Blast radius
The part of the system or the number of users affected when one failure happens.How much damage one mistake or one stolen secret can cause.
Catchup
Automatically running all missed intervals when a workflow resumes or is deployed with a past start date.
Choreography
Pipelines made of stages that react to each other's events, with no central coordinator.
Compare-and-swap (CAS)
An atomic instruction that updates a variable only if it still has the expected old value.A lock or latch lets only one thread enter a piece of code or data at a time (a latch is a short lock inside a database). CAS (compare-and-swap) is one CPU instruction: "set this variable to new only if it still equals old". It either succeeds or fails and never blocks. Lock-free algorithms are built from it.
Compensating action
An action that undoes the effect of an earlier step in a saga.
Completeness signal
Evidence that all expected data has arrived: sentinel, count or timeout.
Control plane
The layer that sends commands and receives status; it moves no data.The data plane is where the real data moves (storage, Spark, the warehouse). The control plane is the layer that only sends commands and receives status. The orchestrator is a control plane.
Conway's law
Systems tend to copy the communication structure of the organizations that build them.
Cron
A tool that runs commands at times given by an expression.A classic Unix tool that runs a command at times given by an expression such as 0 2 * * * ("every day at 02:00"). Cron fires at the time and does not look at anything else.
DAG
Directed acyclic graph: tasks joined by arrows with no loops.Directed acyclic graph: boxes (tasks) joined by arrows (dependencies) with no loops. "Directed" means each arrow has a direction. "Acyclic" means you cannot follow the arrows and come back to where you started. An arrow A → B means "B may start after A finishes."
Data interval
The slice of data (for example one day) that a run covers.
Data plane
Where the real data is stored and moved.The data plane is where the real data moves (storage, Spark, the warehouse). The control plane is the layer that only sends commands and receives status. The orchestrator is a control plane.
Dataset-aware scheduling
Scheduling where tasks declare the dataset names they read and write, and the scheduler derives dependencies from the names.
Dead-man's switch
An independent process that alerts when an expected heartbeat does not arrive.
Deferrable sensor
A sensor that registers its condition with a shared poller and releases its slot while waiting.
depends_on_past
A setting that makes run N wait for run N−1 to succeed.
Deterministic
Giving the same result every time for the same input.
DST (daylight saving time)
Clock changes that make some local days 23 or 25 hours long.
Durable execution
An architecture that logs every external effect of a program and replays the program after a crash.
Event
A small message announcing that something happened.An event is a small record: "order 77 placed by user 12 at 12:03:04". A log is an append-only file or service: new events are added at the end, and old events are never changed. A topic is a named log (the word comes from systems like Apache Kafka). Every event has an offset, its position in the log (0, 1, 2, …). A reader remembers "I have read up to offset 5,000", and can go back to offset 3,000 and read again. This ability to replay is the foundation of this whole mechanism. A log keeps events for a configured time (retention), for example 7 days, then deletes the oldest ones.
Event loop
A single thread that serves many tasks and runs code only when something happens.
Exactly-once effect
Observable state changes once even though the message is delivered several times.
Exit code
The integer a process returns when it ends; 0 conventionally means success.When a program ends it returns a small integer to its caller. By convention, 0 means "I think I succeeded" and anything else means failure. The orchestrator usually sees only this integer.
Fail-closed / fail-open
On timeout, deny (closed) or proceed (open).
Fail-degraded
Keeping all work and becoming slower.Two ways to react to an error. Fail-fast: stop and report at once. Fail-degraded: continue with reduced quality (for example, show old data with a warning).
Fail-fast
Refusing some work early to stay healthy.Two ways to react to an error. Fail-fast: stop and report at once. Fail-degraded: continue with reduced quality (for example, show old data with a warning).
Fail-fast / fail-degraded
Stop on bad input, or continue with reduced correctness.
Fan-out
Splitting work into many parallel tasks.1 other meaning →
Fencing token
A growing number issued with a lock or lease; the resource rejects requests with an older number.An epoch is a number that only goes up, for example "this is leadership term 7". A fencing token is such a number attached to every request, so that a storage system can refuse a request carrying an older number than one it has already seen.
Gray failure
A partial failure that a component's own health check does not see but that clients experience.
Heartbeat
A periodic message used to detect whether the other side is alive and working.A timeout is a rule: "if no answer comes within T, assume something is wrong." A heartbeat is a small message a node sends every few hundred milliseconds to say "I am alive". Another node that stops receiving heartbeats starts to suspect the sender.
Idempotent
Doing it twice has the same effect as doing it once.An operation is idempotent if doing it twice has the same effect as doing it once. "Set the order status to SHIPPED" is idempotent. "Add 1 to the stock counter" is not. Idempotence is the main tool for living with duplicates.
Interval key
The identifier of the interval a run covers; it addresses the run and its output.
Jitter
Randomness added to waiting times to avoid synchronized clients.
Leader election
Choosing one of several copies of a component to be in charge.
Lineage
The map of which assets feed which.A map of what feeds what: table A is read by job J, which writes table B. Following the map shows what would be affected if A changes.
Little's Law
L = λW: average items in a system = arrival rate × average time in the system.Throughput is work finished per second. Latency is how long one operation takes. Little's Law links them to the number of operations in progress: L = λ × W, where λ is the arrival rate (per second), W is the average time one operation spends in the system, and L is how many are inside the system at the same time. Example: 1,000 requests per second, each taking 20 ms (0.02 s), means 1,000 × 0.02 = 20 requests in flight at any moment. This is an identity, not a design choice.
Liveness
The property that something good eventually happens, such as a leader being elected.1 other meaning →A safety property says "this bad thing never happens" (you can find a counterexample in a finite amount of time). A liveness property says "this good thing happens eventually" (no finite observation can prove it wrong). Part 3 explains why this difference is essential. For now remember: "never" can be tested, "eventually" cannot.
MERGE
A SQL statement that updates matching rows and inserts the rest.An upsert means "update the row if the key exists, insert it if it does not." MERGE is the SQL statement that does this (and can also delete).
Metadata database
The orchestrator's database of runs and task states.
Orchestration
Central coordination of when work runs and when it counts as done.
Orchestrator
The program that holds workflow definitions, decides which tasks are ready, launches them and records what happened. Its scheduler loop is different from a cluster's resource scheduler, which decides which machine runs a job.The orchestrator is the program that holds the workflow definitions, decides which tasks are ready, launches them and records what happened. Its core is a scheduler: a loop that checks "which tasks may start now?" Here "scheduler" means this ready-checking loop. A different component, the resource scheduler of a cluster, decides which machine runs which job.
Parse cost
Time the scheduler spends reading and evaluating workflow definitions.
Partition
A set of files proven to share a value; the claim that allows pruning.3 other meanings →A table in a data lake is really a set of files. A partition is a group of files that share a value, for example all files for date = 2025-03-01. Systems often store each partition in its own folder: orders/date=2025-03-01/part-0001.parquet.
Poison pill
A record that fails deterministically on every retry and can block an ordered partition.
Polling
Checking a condition repeatedly at a fixed interval.
Pool
A semaphore limiting how many tasks may use a shared resource at once.
Provenance triple
Interval key, code version and parameter set: the minimum record of how an output was made.
Pure function
A function whose output depends only on its input and that has no side effects.
Replay
Re-reading records that were already processed.
Resource scheduler
The component that assigns machines or slots to ready work.
Retry
If an ack does not arrive within some time, the sender gives up waiting (a timeout) and often sends again (a retry). Retrying is useful, but it can create duplicates, as you will see.
Retry budget
A limit that allows retries only up to a fraction of recent successful requests.
Safety
The property that nothing bad ever happens, such as two leaders acting at the same time.A safety property says "this bad thing never happens" (you can find a counterexample in a finite amount of time). A liveness property says "this good thing happens eventually" (no finite observation can prove it wrong). Part 3 explains why this difference is essential. For now remember: "never" can be tested, "eventually" cannot.
Saga
Sequence of local transactions with compensators; no atomicity, no isolation.
Scheduler
The loop at the core of an orchestrator that checks which tasks may start now. A cluster's resource scheduler, which decides which machine runs which job, is a different component.The orchestrator is the program that holds the workflow definitions, decides which tasks are ready, launches them and records what happened. Its core is a scheduler: a loop that checks "which tasks may start now?" Here "scheduler" means this ready-checking loop. A different component, the resource scheduler of a cluster, decides which machine runs which job.
Semaphore
A counter allowing at most N holders at a time.A counter that allows at most N holders at one time, like N keys to a room. A task must take a key before it enters and returns it when it leaves.
Sensor
A task whose only job is to wait for a condition.
Sentinel
A marker written last by a producer to signal completion, such as _SUCCESS.
Short-circuit
Evaluate a condition and skip the rest of the graph if it holds.
Sink
Where a pipeline writes its results.A sink is where a pipeline writes its output (a table, a dashboard, a message queue). A consumer is whoever reads that output.
SLA
Service-level agreement: a promise, here usually about the timing or freshness of data.An SLI (service level indicator) is a measured quantity, such as "fraction of requests that succeed". An SLO (objective) is the target for it, such as "99.9% over 30 days". An SLA (agreement) is an SLO written into a contract, usually with penalties.
Starvation
One class of work is never served while the system is otherwise busy.
Task
One step of a workflow.A workflow (also pipeline or DAG run) is a set of steps that must happen in a certain order. A task is one step: "run this SQL", "start this Spark job", "call this API". The orchestrator does not do the work itself. It tells another system to do it.
Task launch overhead
Fixed cost of starting a task: container start, dependency resolution and so on.
Thundering herd
Many clients acting at the same time, such as retrying or refreshing together.
Topological order
An ordering of tasks where each task follows all the tasks it depends on.
Trace ID
An identifier attached to all events of one logical run so they can be joined later.
Trigger rule
A per-task policy that says which predecessor outcomes allow the task to run.
Unknown state
A task that the database says is running but is unreachable, so dead and slow cannot be told apart.
Watermark
Declared non-decreasing lower bound on the event times of future arrivals.1 other meaning →Every event carries a timestamp of when it happened (event time), which differs from when the job sees it (processing time). Events arrive late and out of order: a phone with no signal sends its events 5 minutes after they happened. A watermark is a marker flowing through the stream that says "no event with a timestamp earlier than T should arrive any more." It is the job's best guess of how complete the input is. When the watermark passes the end of a time period, the job may treat that period as complete. Watermarks are a guess, and late events can still violate them. The rules of when it is correct to emit a result (event time versus processing time, how late is too late) are a topic of their own. In this mechanism we need only the idea above. We study the machinery that holds data until the watermark allows an answer.
Workflow
A workflow (also pipeline or DAG run) is a set of steps that must happen in a certain order. A task is one step: "run this SQL", "start this Spark job", "call this API". The orchestrator does not do the work itself. It tells another system to do it.
Write-ahead log (WAL)
Write-ahead log: ordered, append-only description of changes, forced before commit.Before a database changes its data pages, it first appends a description of the change to a sequential file called the log. If the machine crashes, the database replays the log to recover. Every serious database has one (it may be called WAL, redo log or binlog). Each position in the log has an increasing number, called an LSN (log sequence number; other systems call it SCN or GTID). In this mechanism the key fact is: the log is a complete, ordered record of every change, and it already exists..
Write-Audit-Publish
Write to staging, check with assertions, then atomically publish.