database-design
Installation
SKILL.md
Data Modeling & Design Maintenance
๐ฏ Purpose
To design, implement, and maintain high-quality data models that ensure data integrity, performance, and ease of use for downstream analytics and machine learning.
๐๏ธ Design Principles
1. Architectural Standards
- Modular Design: Use a layered approach (e.g., Bronze/Silver/Gold or Staging/Intermediate/Mart).
- Star Schema Preference: For BI layers, prioritize Fact and Dimension tables to optimize join performance and readability.
- Idempotency: Every transformation must be repeatable. If run multiple times with the same input, it must produce the same output.
2. Technical Requirements
- Primary Keys: Every table must have a defined Primary Key (composite or surrogate).
- Naming Conventions: Use snake_case. Prefix tables based on layer (e.g., stg_, fct_, dim_).
- Data Types: Use the most efficient types possible (e.g., INT vs BIGINT) and ensure consistent timestamp formats (UTC preferred).