- Data is everywhere, but it can quickly become overwhelming.
- Think of it like exploring a new city. Without a map, you'd be lost, wandering aimlessly.
- Data modeling is like creating that map for your data.
- Simple & Practical guide to data modeling
- This repository breaks down data modeling into easy-to-understand, practical steps.
- This repository answers questions like:
- What is Data Modeling?
- Why is it important?
- Different approaches to data modeling.
- Tools and technologies to help you.
- Real-world examples and case studies.
- Practical & Useful
- Each section is designed to be beginner-friendly, with clear explanations and examples.
- Whether you're a data scientist, engineer, or just curious about data, this repository has something for you.
- Click on any link within the diagram below to go directly to navigate through the repository.
- If you are quite new to the concept of Data Modeling, you can start with the Overview of Data Modeling Concepts.
graph LR
%% Main node
DM["Data Modeling Approaches"]
style DM fill:#e5e5e5,stroke:#333,stroke-width:2px
click DM href "https://github.com/kanad13/data_modeling/blob/master/100-data_modeling_approaches/05-overview_of_data_modeling_concepts.md" "Click for more information"
%% First level connections
DM --> RDM
DM --> GDM
DM --> SDM
DM --> DDM
%% Main approaches - Parent Level 1
RDM["Relational Data Modeling"]
GDM["Graph Data Modeling"]
SDM["Semantic Data Modeling"]
DDM["Document-oriented Data Modeling"]
style RDM fill:#ffebee,stroke:#d32f2f,stroke-width:2px
style GDM fill:#e3f2fd,stroke:#1565c0,stroke-width:2px
style SDM fill:#e8f5e9,stroke:#2e7d32,stroke-width:2px
style DDM fill:#f3e5f5,stroke:#6a1b9a,stroke-width:2px
click RDM href "https://github.com/kanad13/data_modeling/blob/master/100-data_modeling_approaches/10-relational_data_modeling.md" "Click for more information"
click GDM href "https://github.com/kanad13/data_modeling/blob/master/100-data_modeling_approaches/20-graph_data_modeling.md" "Click for more information"
click SDM href "https://github.com/kanad13/data_modeling/blob/master/100-data_modeling_approaches/30-semantic_data_modeling.md" "Click for more information"
click DDM href "https://github.com/kanad13/data_modeling/blob/master/100-data_modeling_approaches/40-json_based_modeling.md" "Click for more information"
%% First level Implementations - Parent Level 2
Tables["Tables & SQL"]
NodesEdges["Nodes & Edges"]
Documents["JSON Documents"]
RDM --> Tables
GDM --> NodesEdges
DDM --> Documents
style Tables fill:#ffebee,stroke:#d32f2f,stroke-width:2px
style NodesEdges fill:#e3f2fd,stroke:#1565c0,stroke-width:2px
style Documents fill:#f3e5f5,stroke:#6a1b9a,stroke-width:2px
click Tables href "https://github.com/kanad13/data_modeling/blob/master/100-data_modeling_approaches/10-relational_data_modeling.md" "Click for more information"
click NodesEdges href "https://github.com/kanad13/data_modeling/blob/master/100-data_modeling_approaches/20-graph_data_modeling.md" "Click for more information"
click Documents href "https://github.com/kanad13/data_modeling/blob/master/100-data_modeling_approaches/40-json_based_modeling.md" "Click for more information"
%% Tools and Technologies & Semantic specifics - Parent Level 3
ERTools["ER Diagram Tools"]
UMLTools["UML Tools"]
TMFSID["TMForum SID"]
GraphTools["Graph Database Tools"]
DocumentTools["Document DB Tools"]
RDF["RDF - Resource Description Framework"]
RDFS["RDFS - RDF Schema"]
OWL["OWL - Web Ontology Language"]
Tables --> ERTools
Tables --> UMLTools
Tables --> TMFSID
NodesEdges --> GraphTools
Documents --> DocumentTools
SDM --> RDF
SDM --> RDFS
SDM --> OWL
style ERTools fill:#ffebee,stroke:#d32f2f,stroke-width:2px
style UMLTools fill:#ffebee,stroke:#d32f2f,stroke-width:2px
style TMFSID fill:#ffebee,stroke:#d32f2f,stroke-width:2px
style GraphTools fill:#e3f2fd,stroke:#1565c0,stroke-width:2px
style DocumentTools fill:#f3e5f5,stroke:#6a1b9a,stroke-width:2px
style RDF fill:#e8f5e9,stroke:#2e7d32,stroke-width:2px
style RDFS fill:#e8f5e9,stroke:#2e7d32,stroke-width:2px
style OWL fill:#e8f5e9,stroke:#2e7d32,stroke-width:2px
click ERTools href "https://github.com/kanad13/data_modeling/blob/master/120-data_modeling_tools/10-er_diagram_tools.md" "Click for more information"
click UMLTools href "https://github.com/kanad13/data_modeling/blob/master/120-data_modeling_tools/20-uml_tools.md" "Click for more information"
click TMFSID href "https://github.com/kanad13/data_modeling/blob/master/200-domain_specific_models/10-tm_forum.md" "Click for more information"
click GraphTools href "https://github.com/kanad13/data_modeling/blob/master/120-data_modeling_tools/30-graph_data_modeling_tools.md" "Click for more information"
click DocumentTools href "https://github.com/kanad13/data_modeling/blob/master/120-data_modeling_tools/50-json_based_modeling_tools.md" "Click for more information"
click RDF href "https://github.com/kanad13/data_modeling/blob/master/100-data_modeling_approaches/31-resource_description_framework.md" "Click for more information"
click RDFS href "https://github.com/kanad13/data_modeling/blob/master/100-data_modeling_approaches/32-resource_description_framework_schema.md" "Click for more information"
click OWL href "https://github.com/kanad13/data_modeling/blob/master/100-data_modeling_approaches/33-web_ontology_language.md" "Click for more information"
%% Semantic Data Modeling specifics - Deeper Level 4
Triples["RDF Triples"]
RDFSVocabulary["RDFS Vocabulary"]
SHACL["SHACL - Shapes Constraint Language"]
RDF --> Triples
RDFS --> RDFSVocabulary
OWL --> SHACL
style Triples fill:#e8f5e9,stroke:#2e7d32,stroke-width:2px
style RDFSVocabulary fill:#e8f5e9,stroke:#2e7d32,stroke-width:2px
style SHACL fill:#e8f5e9,stroke:#2e7d32,stroke-width:2px
click Triples href "https://github.com/kanad13/data_modeling/blob/master/100-data_modeling_approaches/31-resource_description_framework.md" "Click for more information"
click RDFSVocabulary href "https://github.com/kanad13/data_modeling/blob/master/100-data_modeling_approaches/32-resource_description_framework_schema.md" "Click for more information"
click SHACL href "https://github.com/kanad13/data_modeling/blob/master/100-data_modeling_approaches/34-shapes_constraint_language.md" "Click for more information"