03-fact-table-patterns

Classify measure additivity and design advanced fact table patterns for Gold layer modeling.

5|6|Updated Jan 26, 2026
One-click install
npx skills add https://github.com/databricks-solutions/vibe-coding-workshop-template --skill 03-fact-table-patterns
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: 03-fact-table-patterns
Source: https://github.com/databricks-solutions/vibe-coding-workshop-template/tree/main/data_product_accelerator/skills/gold/design-workers/03-fact-table-patterns
Command: npx skills add https://github.com/databricks-solutions/vibe-coding-workshop-template --skill 03-fact-table-patterns

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

This Skill addresses the complexities of designing robust fact tables in dimensional modeling, ensuring accurate aggregations and preventing silent data errors by classifying measures and applying specialized patterns.

Core Features & Use Cases

  • Measure Additivity Classification: Distinguish between additive, semi-additive, and non-additive measures to guide aggregation logic.
  • Advanced Fact Patterns: Implement factless facts, accumulating snapshots, consolidated facts, and header/line patterns for diverse business scenarios.
  • Use Case: When designing a sales fact table, use this Skill to correctly identify that revenue is additive, account_balance (if included) is semi-additive, and unit_price is non-additive, ensuring correct reporting.

Quick Start

Use the 03-fact-table-patterns skill to classify measures as additive, semi-additive, or non-additive for a new fact table.

Frequently Asked Questions about 03-fact-table-patterns

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I classify measures as additive, semi-additive, or non-additive in dimensional modeling?

Measure additivity classification distinguishes between additive measures that sum across all dimensions, semi-additive measures that sum across some dimensions, and non-additive measures that cannot be summed. This guides correct aggregation logic in fact tables.

What is a factless fact table and when do I need it in data warehousing?

A factless fact table captures relationships or events without numeric measures. It is needed in dimensional modeling when tracking coverage, attendance, or eligibility events that have no associated quantitative values to aggregate.

How do I handle late-arriving facts and dimensions in a Gold layer fact table?

Handling late-arriving facts and dimensions involves updating Gold layer fact tables when delayed source data arrives. This specialized pattern ensures historical accuracy by properly associating delayed fact records with their correct dimensional context.

What is the difference between accumulating snapshot and consolidated fact table patterns?

Accumulating snapshot fact tables track a predictable workflow with multiple date stamps, while consolidated fact tables combine multiple business processes into a single table. Both advanced patterns serve distinct dimensional modeling scenarios.

How should I handle NULL values in fact table measures during data warehousing?

NULL handling in fact table measures requires distinguishing between true zero values and missing data. Proper NULL handling in dimensional modeling prevents silent data aggregation errors and ensures accurate business reporting.

When should I use header and line fact table patterns for dimensional modeling?

Header and line fact table patterns are used when a business transaction has a summary header and multiple detail lines. This dimensional modeling approach separates grain levels to optimize query performance for both summary and detailed reporting.