How can Datascale help Visualize Data Models? (3NF vs Dimensional)

A simple data modeling visualization from your DDLs

A simple data modeling visualization from your DDLs

Poom Wettayakorn

Jun 2, 2024

Jun 2, 2024

data-modeling

👋 Hi there, welcome to Datascale: SQL+Data modeling. We help create database diagrams and map out data models from existing schema and SQL queries 🌱. Find us on LinkedIn 🎉

Found a great blog post by Cassio Bolba comparing concepts, pros/cons and use cases of 3NF and Dimensional modeling.

A quick comparison of 3NF vs Dimensional

In short, 3NF is useful in operational processing because an update or insert transaction touches the database in only one place, while Dimensional data modeling addresses the problem of overly complex schemas and optimizes query performance for analytical and reporting systems.

See it in action

The blog also includes examples of DDLs for each model, which are great for understanding how each model works. So, here's how you can quickly visualize the DDLs into an ER diagram using Datascale!

3NF vs Dimensional

Check out the example DDLs and ER diagram from this link: https://datascale.cloud/sqls/3nf-vs-dimensional-modeling

How it works

At Datascale, we built a tool to parse and extract metadata from DDL (CREATE TABLE statement). The DDL needs to have the following metadata:

  1. Table name

  2. Column name and data type

  3. References (this is where we map out the relationships from your SQL)

Learn more: DDL-to-ERD

SQL to ERD

We also provide a support for both SQL and DDL in the same query. 🎉

SELECT *
FROM my_table
INNER JOIN another_table ON

This is where we can help model your database in more advanced use cases. E.g.,

-- DQL & Views
CREATE VIEW view_name AS
SELECT column1, column2
FROM table_name
WHERE 1=1;

-- Create table from another table
CREATE TABLE new_table_name AS
    SELECT column1, column2
    FROM existing_table_name
    WHERE 1=1

Learn more: SQL-to-ERD

Related blogs

Contents

Section

Model your database diagram

Datascale helps map out data models from existing schema and SQL queries

Try for free

Data Modeling for SQL

Data Modeling for SQL