Glossary
92 terms, in the sense this mechanism uses them. The platform glossary has every term across all mechanisms.
/
- Accumulating snapshot
- A fact table with one row per process instance, updated as milestones occur; holds milestone dates and lags.
- Activity schema
- One table, one grain: one row per activity per entity, analyzed with temporal self-joins.
- Additive measure
- A measure that can be summed across every dimension (sale amount).
- Aggregate navigation
- Choosing between a base table and a summary so that both give the same answer; a summary must be drillable to its base.
- Aggregation
- Replacing many observations with fewer numbers (a mean, a percentile). Lossy and irreversible.Combining many rows into fewer:
SUM,COUNT,AVG. Aggregation loses detail. You cannot get the individual rows back from the total. - Allocation policy
- An agreed rule for sharing one amount among several members; the weight column of a bridge table.
- Anchor modeling
- Sixth-normal-form modeling with one table per attribute, making every schema change additive.
- 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.
- As-is
- Reporting a fact using today's value of a dimension attribute.
- As-was
- Reporting a fact using the dimension value that was true when the fact happened.
- Attribute
- A descriptive column of a dimension (name, region).
- BCNF
- Boyce-Codd normal form: every determinant is a candidate key.
- Big-O notation
- O(files) means "the work grows in proportion to the number of files." O(1) means "the work is the same however many files exist."
- Blocking
- The cheap step in fuzzy matching that decides which pairs will be compared.1 other meaning →
- Boundary
- The place where one party's control ends and another's begins; no change is atomic there.1 other meaning →The place where one party's control ends and another's begins. Inside your own system you can change the writer and the reader in one deployment. At a boundary you cannot.
- Bridge table
- A table that makes a many-to-many relationship explicit, with optional weights.
- Broadcast join
- A join that copies the small side to every executor so the large side does not move.
- Bus matrix
- A grid of business processes against dimensions showing which questions are answerable.
- Cardinality
- How many rows on one side match one row on the other (1:1, 1:M, M:M).2 other meanings →How many rows on one side match one row on the other. One-to-many (1:M): one customer has many orders. Many-to-many (M:M): one order is credited to several sales reps, and each rep has many orders.
- Chasm trap
- Joining two independent one-to-many branches from a shared dimension, producing a meaningless cartesian product.
- Closure table
- A hierarchy encoding with one row per ancestor-descendant pair.
- Collector
- A background job that frees or reorganizes old versions of data.1 other meaning →
- Column
- One named field of a table.A table has rows (one record each) and columns (one named field each). A primary key is a column (or set of columns) that identifies one row. A foreign key (FK) is a column that holds the primary key of a row in another table. A join matches rows of two tables by key. Example:
order_lines.product_idis a foreign key toproducts.product_id. - Column store (columnar)
- A row store keeps each record's fields together on disk. A column store keeps each column's values together. A column store reads only the columns a query names (column pruning). Because one column holds similar values, it also compresses very well.
- Compression terms used here
- Dictionary encoding replaces each repeated value (like "Germany") by a small integer code and stores the list of values once. Run-length encoding (RLE) replaces "A A A A A" by "A × 5". Together they make a column with few distinct values almost free to store.
- Conformed dimension
- A dimension shared with one meaning across fact tables.
- Conserved costs
- One idea from earlier across the platform: when a design seems to remove a cost, it has usually moved it to another place or another person. We call this cost conservation. We will meet it again and again here, with people as the destination.
- Contract (data)
- An agreement about meaning, owner, consumers, freshness and change process for a data product.
- Coordination cost
- The cost of getting parties to agree; grows with the number of parties, not with data volume.
- Cost conservation
- The principle that costs move to another place or person instead of disappearing.
- Data Vault
- A modeling style with hubs, links and satellites, designed for many contradictory sources.
- Degenerate dimension
- An identifier at fact grain with no attributes of its own, such as an order number.
- Denormalization
- Storing a fact in more than one place, often by pre-joining.
- Deterministic matching
- Entity resolution by rules and transitive closure.
- Dictionary encoding
- Replacing each value by a small integer index into a table of distinct values.
- Dimension
- A table of descriptive attributes of things (customer, product, date).In analysis, tables are often split into two kinds. A fact table records events: one row per sale, per click, per shipment. Its numbers are called measures (amount, quantity). A dimension table records descriptions of things: customers, products, dates, stores. Its columns are attributes (name, region, category). People filter and group by dimension attributes: "revenue by region for category = Tents".
- Early binding
- Checking the format when data is written, so errors appear in the producer.Binding means fixing the structure and meaning of data. Early binding: decide at load time ("this column is the customer's region"). Late binding: store raw facts and decide at read time. Early binding makes reads simple and changes expensive. Late binding makes changes cheap and reads complex.
- Entity resolution
- Deciding that several records describe the same real-world entity when no shared key exists.
- Event sourcing
- Keeping the sequence of state changes as the record; current state is a fold over events.
- Fact
- In dimensional modeling, a record of an event (a sale, a click) with numeric measures. Fact tables hold events; dimension tables describe the things involved, which people filter and group by.In analysis, tables are often split into two kinds. A fact table records events: one row per sale, per click, per shipment. Its numbers are called measures (amount, quantity). A dimension table records descriptions of things: customers, products, dates, stores. Its columns are attributes (name, region, category). People filter and group by dimension attributes: "revenue by region for category = Tents".
- Fact table
- A table of events with measures.
- Factless fact
- A fact table with no measure, recording occurrence or eligibility.
- Fan trap
- Summing a measure after joining to a table that has several rows per measure row.
- Federated / mesh
- Each domain owns and publishes its own data, with no central model.
- Fold
- Applying events in order to produce a state.
- Foreign key
- Constraint that every value in a column exists in a column of another table.Rules a database can enforce. A primary key says each row has a unique, non-null identifier. A unique constraint says no two rows share a value. A foreign key says a value must exist in another table (for example every
orders.customer_idmust exist incustomers). A check constraint says a row must satisfy a predicate. - Functional dependency
- One column's value determines another's.
- Grain
- What exactly one row is.
- Hub
- A Data Vault table holding business keys only.
- Inferred member
- A synthetic dimension value such as "Unknown" given to a fact row with no match, so the defect is counted.
- Joins at scale
- How engines keep joins of a large fact table to small tables cheap: broadcasting the small table to every machine, and using its keys to skip files of the large table before reading them.A broadcast join copies a small table to every machine, so the big table never has to move. A runtime filter or dynamic partition pruning uses the matching keys found in the small table to skip files of the big table before reading them. Because of these, joining a big fact table to small dimension tables is cheap in modern engines.
- Junk dimension
- A small dimension of the observed combinations of several low-cardinality flags.
- Key
- A column, or set of columns, that identifies a row. A primary key identifies a row in its own table; a foreign key holds the primary key of a row in another table, which is what joins match on.2 other meanings →A table has rows (one record each) and columns (one named field each). A primary key is a column (or set of columns) that identifies one row. A foreign key (FK) is a column that holds the primary key of a row in another table. A join matches rows of two tables by key. Example:
order_lines.product_idis a foreign key toproducts.product_id. - Knot
- An anchor-modeling table for a shared small enumeration.
- Late binding
- Checking the format only when data is read, so errors appear in the consumer, far from the cause.Binding means fixing the structure and meaning of data. Early binding: decide at load time ("this column is the customer's region"). Late binding: store raw facts and decide at read time. Early binding makes reads simple and changes expensive. Late binding makes changes cheap and reads complex.
- Late binding / early binding
- Fixing structure and meaning at read time / at load time.
- Late-arriving fact / dimension change
- Data that arrives after its event time; it must join or re-key against an older version.
- Link
- A Data Vault table holding a relationship.
- Materialized view
- A stored query result that the system refreshes, with its admission declared.A query result that is saved as a table and kept up to date, instead of being recomputed each time it is read.
- Measure
- A numeric column of a fact (amount, quantity).
- Medallion layering
- Raw, clean and business layers with published guarantees at each boundary.
- Mini-dimension (Type 4)
- A small dimension holding fast-changing attributes, referenced directly from the fact.
- Natural key
- A natural key (or business key) is an identifier from the real world or the source system: an email, an order number, a VAT number. A surrogate key is a meaningless number that the warehouse invents, such as 10482.
- Nested set
- A hierarchy encoding with left/right numbers.
- Non-additive measure
- A measure that cannot be summed (ratio, percentage, unit price).
- Normalization
- Splitting tables so each fact is stored once.1 other meaning →
- OBT (One Big Table)
- A pre-joined wide table at fact grain.
- Oracle (here)
- A machine check that tells you a layer is wrong.
- Path enumeration
- A hierarchy encoding storing the path of ancestors as a string.
- Periodic snapshot
- One row per entity per period, with semi-additive measures.
- Presentation layer
- Stars or wide marts built on top of a Vault for readers.
- Reference data
- Small shared lists such as currencies and countries.
- Replay point
- A stored state from which later processing can be recomputed.
- Retraction
- Removing the effect of an earlier input, expressed as a −1 change.
- Role-playing dimension
- One dimension used in several roles, such as order date and ship date.
- Row
- A table has rows (one record each, such as one scan event) and columns (one attribute each, such as
weight_g). A table withncolumns hasnvalues in each row. - Row store
- A row store keeps each record's fields together on disk. A column store keeps each column's values together. A column store reads only the columns a query names (column pruning). Because one column holds similar values, it also compresses very well.
- Satellite
- A Data Vault table of descriptive attributes with history.
- SCD (slowly changing dimension)
- A dimension whose attributes change over time; handled by Types 1, 2, 3, 4 and 6.
- Semantic layer
- A central definition of metrics and join paths, enforced by a query compiler.
- Semi-additive measure
- Additive across some dimensions but not time (balance, stock).
- Snapshot
- A saved state that shortens replay.1 other meaning →
- Snowflake schema
- A star whose dimensions are themselves normalized.
- Star schema
- A fact table surrounded by dimension tables.A big central fact table (
orders) with foreign keys pointing to many small dimension tables (customers,stores, ...). A foreign key (FK) says that every value in a column exists in a column of another table. A unique constraint says that no value repeats. - Stock / flow
- A persisting quantity measured at a moment / an amount that happens during a period.
- Surrogate key
- A meaningless warehouse-assigned key that identifies a row (a version).A natural key (or business key) is an identifier from the real world or the source system: an email, an order number, a VAT number. A surrogate key is a meaningless number that the warehouse invents, such as 10482.
- Table
- Rows of records with named columns. Keys identify rows, and foreign keys link a row to a row in another table.A table has rows (one record each) and columns (one named field each). A primary key is a column (or set of columns) that identifies one row. A foreign key (FK) is a column that holds the primary key of a row in another table. A join matches rows of two tables by key. Example:
order_lines.product_idis a foreign key toproducts.product_id. - Table elimination
- An optimizer dropping joins to tables whose columns are not used and that cannot change row counts.
- Transaction fact
- One row per event with additive measures.
- Type 2 dimension
- An SCD that adds a new row for each change.
- Update anomaly
- A bug caused by changing only some of several stored copies of a fact.
- Weighting factor
- A per-member share in a bridge table, summing to 1 per group.