Data modeling the process of creating a simplified diagram of a software system and the data elements it contains, using text and symbols to represent the data and how it flows.
Types
Conceptual data modeling - describes tables
Logical data models - describes tables with fields.
Physical data models - describes how data will be stored in DB. Describes data types.
How it happens?
Identify the entities
Identify key properties of each entities (columns)
Identify relationships among entities (UML diagram)
Map attributes to entities completely (model reflects how the business will use the data)
Assign keys as needed, and decide on a degree of normalization that balances the need to reduce redundancy with performance requirements.
Finalize and validate the data model
Star vs snowflake schema
A star schema contains both dimension tables and fact tables in it.A snowflake schema contains all three- dimension tables, fact tables, and sub-dimension tables.
Dimension tables describe business entities—the things you model.
Fact tables store observations or events, and can be sales orders, stock balances, exchange rates, temperatures, etc.