EDUCBA

EDUCBA

MENUMENU
  • Free Tutorials
  • Free Courses
  • Certification Courses
  • 360+ Courses All in One Bundle
  • Login

What is Data Modeling?

By Priya PedamkarPriya Pedamkar

Home » Data Science » Data Science Tutorials » MySQL Tutorial » What is Data Modeling?

What is Data Modeling

What is Data Modeling?

The method of creating a data store model is called data processing in a database. This introduces theoretical data objects and connections between different data objects. Data modelling is a data formulation process in a standardized format in an information system. It helps to quickly analyze data, which helps to meet business needs. The data modelling process requires data modellers who work correctly with stakeholders and prospective IT users. Data modelling ends with the development of a model of data supporting the infrastructure for the business information system

Understanding Data Modeling / Scope

It occurs at three different layers:

Start Your Free Data Science Course

Hadoop, Data Science, Statistics & others

  • Physical model: It is a schema which says how data is stored physically in the database
  • Conceptual model: It is the user view of the data i.e. the high level which the user sees.
  • Logical model: It sits between the Physical model and conceptual model and it represents the data logically, separate from its physical stores.

Hierarchical Data Modeling: These models were used to replace file-based systems. The data was kept in a tree like one too many arrangements.

Relational Data Modeling: It’s true that the hierarchical model helped us to move from file-based systems which reduced complexity but still one had known the specific physical data storage employed. The relational database follows the relational model where data is stored in tables, unlike Hierarchical database where it is stored in a tree-like structure. In short, it reduced the complexity more when compared to the hierarchical model.

How does Data Modeling make work so easy/why should we use it?

It helps us in a visual representation of data and enforces business logic, regulations, policies, etc on data. It is a guide which is used by scientists and analysts in the designing and implementation of a database. So, without data modeling the job of analysts and scientists to implement the business requirements on database becomes difficult.

Why do we need Data Modeling? / What can you do with it?

The main goal of using it is:

  • To ensure that all data objects are represented correctly as if it is not done correctly we would get incorrect results.
  • It helps as stated earlier to design database at conceptual, physical and logical levels.
  • It helps to design the relational tables, primary keys, foreign keys, etc.
  • Database developers can create a better physical database with a good model as it becomes a guiding tool for them.
  • It helps to identify missing and redundant data.
  • It helps us to have a better IT infrastructure and to have easy and cheap maintenance when required in the long run though it’s time-consuming initially.

Working

Now let’s create a sample data model to understand how to work with a model. To do this we have to follow certain steps:

  • First we have to understand the requirements, In this case, we will create a model for an online store. So, keeping that in mind we need two tables a) customers b) products
  • Next step is to get the attributes of the tables or entities

a. customer table can have attributes like:

  • Id
  • Name
  • Email
  • Address

b. Product table can have attributes like:

  • Id
  • Name

In the customer table, we can have Id as Primary key and similarly Product Id in Product table will be the primary key as shown in the below diagrams.

Primary key

Now, we will design the relationship between these two tables. So to connect the customer and product table we will create a table called purchase which will be like an order table (i.e. which customer ordered which product).

connect the customer and product table

If you look in the figure above the customer-purchase reference is OK because every purchase has one customer and one customer has many purchases. So, this reference is okay. One more thing we have taken user_account_id as a foreign key (the reference to the id in customer key). Similarly product_id. There is still a problem with product-purchase reference as several products can be bought in one purchase as well several purchases can include the same product.

To overcome this we will design an intermediary table known as purchase_item which will be connected with purchase and product. In the below figure we can see the problem resolved.

intermediary table

Advantages

There are various advantages are as follow:

  • It helps business to communicate, plan across their organization.
  • It helps to recognize the correct source of data which can be used to populate the model.
  • This can be used to define relationships between different tables like primary key, foreign key, etc.

Who is the right audience for learning this technology?

It is very essential. The right audiences for learning modeling techniques are individuals who are data architects and data analysts. Most individuals start as data analysts and then move up the ladder.

Popular Course in this category
All in One Data Science Bundle (360+ Courses, 50+ projects)360+ Online Courses | 1500+ Hours | Verifiable Certificates | Lifetime Access
4.7 (3,220 ratings)
Course Price

View Course

Related Courses
MS SQL Training (13 Courses, 11+ Projects)Oracle Training (14 Courses, 8+ Projects)PL SQL Training (4 Courses, 2+ Projects)

How this technology will help you in career growth?

According to Glassdoor, the average salary in the market for modelers is projected to earn about $78,601 on an average. So you can see that it is a well-paid job. Most big companies invest in modelers as they are very essential for keeping the integrity of data.

Conclusion

In conclusion, we can say that the model created by modelers ensure consistency in naming conventions, integrity, and security of data. because good data will enable the business in the correct efficient utilization of their data.

Recommended Articles

This has been a guide to What is Data Modeling. Here we have covered the definition, scope, working, skills, along with advantages and career growth in Data Modeling. You can also go through our other suggested articles to learn more –

  1. What is Agile Project Management?
  2. Data Warehousing Interview Questions
  3. What is SAS?
  4. What is Big Data Technology?
  5. Guide to Data Model in Cassandra

All in One Data Science Bundle (360+ Courses, 50+ projects)

360+ Online Courses

1500+ Hours

Verifiable Certificates

Lifetime Access

Learn More

0 Shares
Share
Tweet
Share
Primary Sidebar
MySQL Tutorial
  • Database
    • What is Data Modeling
    • What is Data Processing
    • DBMS Architecture
    • DBMS Keys
    • Careers in Database Administration
    • What is MySQL Database
    • MySQL Relational Database
    • How to Connect Database to MySQL
    • MySQL Database Repair
    • RDBMS Interview Questions
    • DBMS Interview Questions
  • Basic
    • Introduction to MySQL
    • What is MySQL
    • Is MySQL Programming Language
    • MySQL Server
    • How To Install MySQL
    • MySQL Versions
    • MySQL OpenSource
    • MySQL GUI Tools
    • MySQL Commands
    • MySQL Operators
    • What is MySQL Schema
    • Wildcards in MySQL
    • MySQL Constraints
    • MySQL Administration
    • MySQL Data Type
    • MySQL ENUM
    • MySQL Default Port
    • Cheat Sheet MySQL
  • Queries
    • MySQL Queries
    • MySQL Query Commands
    • SELECT in MySQL
    • MySQL INSERT IGNORE
    • MySQL having
    • ORDER BY in MySQL
    • MySQL GROUP BY
    • MySQL GROUP BY Count
    • MySQL GROUP BY month
    • MySQL WHERE Clause
    • MySQL WITH
    • MySQL FETCH
    • MySQL DDL
    • MySQL DML
    • MySQL WHERE IN Array
  • Functions
    • MySQL Aggregate Function
    • MySQL String functions
    • MySQL Date Functions
    • MySQL Window Functions
    • MySQL Math Functions
    • MySQL Boolean
    • Cursor in MySQL
    • Condition in MySQL
    • MySQL BETWEEN
    • Insert in MySQL
    • MySQL count()
    • MIN() in MySQL
    • MySQL avg()
    • MySQL MAX() Function
    • MySQL BIN()
    • MySQL Concat
    • MySQL DECODE()
    • MySQL REGEXP_REPLACE()
    • MySQL TRUNCATE()
    • MySQL ROW_NUMBER()
    • NOT in MySQL
    • MySQL IN Operator
    • LIKE in MySQL
    • ANY in MySQL
    • MySQL NOT IN
    • MySQL CHECK Constraint
    • MySQL DISTINCT
    • MySQL ALL
    • MySQL UNION ALL
    • MySQL EXISTS
    • MySQL ON DELETE CASCADE
    • MySQL REGEXP
    • MySQL Index
    • MySQL Add Index
    • MySQL REINDEX
    • MySQL UNIQUE INDEX
    • MySQL Clustered Index
    • Table in MySQL
    • ALTER TABLE MySQL
    • MySQL Temporary Table
    • MySQL Clone Table
    • MySQL Repair Table
    • MySQL Lock Table
    • TRUNCATE TABLE MySQL
    • MySQL Table Dump
    • MySQL Update Set
    • MySQL ALTER TABLE Add Column
    • MySQL RANK()
    • MySQL CTE
    • MySQL LAG()
    • MySQL GROUP_CONCAT()
    • MySQL EXTRACT()
    • MySQL REPLACE
    • MySQL AUTO_INCREMENT
    • MySQL SYSDATE()
    • MySQL NULLIF()
    • MySQL Substring
    • MySQL SUBSTRING_INDEX()
    • MySQL LOWERCASE
    • MySQL Row
    • MySQL NOW
    • MySQL CEIL
    • MySQL Alias
    • MySQL Trigger
    • MySQL SHOW Triggers
    • MySQL UPDATE Trigger
    • MySQL DELETE Trigger
    • MySQL Stored Procedure
    • ROLLUP in MySQL
    • MySQL INSTR()
    • MySQL Subquery
    • MySQL Timestamp
    • MySQL Hour()
    • MySQL MOD()
    • MySQL DATE_FORMAT()
    • ALTER Column in MySQL 
    • MySQL Rename Column
    • MySQL Interval
    • MySQL CURDATE
    • MySQL BIT
    • MySQL Binlog
    • MySQL Average
    • MySQL TEXT 
    • MySQL SHOW
    • MySQL Offset
    • MySQL Timezone
    • mysql_real_escape_string
    • MySQL Datetime
    • MySQL DATE_SUB()
    • MySQL FULLTEXT
    • MySQL DATE_ADD()
    • MySQL sum()
    • MySQL Merge
    • MySQL BigInt
    • MySQL ROUND
    • MySQL VARCHAR
    • MySQL Decimal
    • MySQL Limit
    • MySQL today()
    • MySQL WEEKDAY
    • MySQL Split
    • MySQL Create Function
    • MySQL BLOB
    • MySQL encode()
    • MySQL Primary Key
    • MySQL Foreign Key
    • Unique Key in MySQL
    • MySQL Drop Foreign Key
    • MYSQL Database
    • Delete Database MySQL
    • MySQL Root
    • MySQL Root Password
    • MySQL Client
    • MySQL Users
    • MySQL User Permissions
    • MySQL add user
    • MySQL List User
    • MySQL Show Users
    • MySQL User Password
    • MySQL Cardinality
    • MySQL Workbench
    • MySQL Backup
    • MySQL REVOKE
    • MySQL Dump
    • MySQL COALESCE
    • MySQL Cluster
    • MySQL Full Text Search
    • MySQL Admin Tool
    • MySQL Export Database
    • MySQL Export to CSV
  • Joins
    • Joins in MySQL
    • MySQL Outer Join
    • Left Outer Join in MySQL
    • MySQL Self Join
    • Natural Join in MySQL
    • MySQL DELETE JOIN
    • MySQL Update Join
    • MySQL Cross Join
  • Advanced
    • MySQL Formatter
    • MySQL Flush Privileges
    • MySQL super Privilege
    • MySQL Character Set
    • MySQL Log File
    • MySQL Flush Log
    • Grant Privileges MySQL
    • MySQL WHILE LOOP
    • IF Statement in MySQL
    • MySQL CASE Statement
    • MySQL IF Function
    • MySQL UUID
    • Views in MySQL
    • MySQL Replication
    • MySQL Partition
    • Toad for MySQL
    • Navicat for MySQL
    • MySQL Performance Tuning
    • MySQL Transaction
    • MySQL sort_buffer_size
    • MySQL Sync
    • MySQL Query Cache
    • MySQL Collation
    • MySQL ODBC Driver
    • MySQL InnoDB
  • Interview Questions
    • MySQL Interview Questions

Related Courses

MS SQL Certification Courses

Oracle Certification Courses

PL/SQL Certification Courses

Footer
About Us
  • Blog
  • Who is EDUCBA?
  • Sign Up
  • Corporate Training
  • Certificate from Top Institutions
  • Contact Us
  • Verifiable Certificate
  • Reviews
  • Terms and Conditions
  • Privacy Policy
  •  
Apps
  • iPhone & iPad
  • Android
Resources
  • Free Courses
  • Database Management
  • Machine Learning
  • All Tutorials
Certification Courses
  • All Courses
  • Data Science Course - All in One Bundle
  • Machine Learning Course
  • Hadoop Certification Training
  • Cloud Computing Training Course
  • R Programming Course
  • AWS Training Course
  • SAS Training Course

© 2020 - EDUCBA. ALL RIGHTS RESERVED. THE CERTIFICATION NAMES ARE THE TRADEMARKS OF THEIR RESPECTIVE OWNERS.

EDUCBA Login

Forgot Password?

EDUCBA
Free Data Science Course

Hadoop, Data Science, Statistics & others

*Please provide your correct email id. Login details for this Free course will be emailed to you
Book Your One Instructor : One Learner Free Class

Let’s Get Started

This website or its third-party tools use cookies, which are necessary to its functioning and required to achieve the purposes illustrated in the cookie policy. By closing this banner, scrolling this page, clicking a link or continuing to browse otherwise, you agree to our Privacy Policy

EDUCBA

*Please provide your correct email id. Login details for this Free course will be emailed to you
EDUCBA
Free Data Science Course

Hadoop, Data Science, Statistics & others

*Please provide your correct email id. Login details for this Free course will be emailed to you

Special Offer - All in One Data Science Bundle (360+ Courses, 50+ projects) Learn More