Fact Checked

What Is a Logical Data Model?

Alex Newth
Alex Newth

In systems engineering and database development, creating a logical data model (LDM) is the second step in creating the entire data model, coming after the conceptual data model (CDM) and proceeded by the physical data model (PDM). In the logical data model, engineers target the important data for the business and show the entire database’s relationship from one section to another. The LDM diagram will show different tables with data titles, but the actual data will not be present. For example, if a date table is made, the LDM diagram will show titles such as “Month” and “Year,” but the actual month and year values will not be present.

When it comes to data mapping, the first model is the CDM. This diagram is a simple concept that starts off the data modeling. There will be several tables, without any titles in them, and there may be some lines to show relationships.

Man holding computer
Man holding computer

After the conceptual model, the logical data model is made. This model is much more detailed in terms of both titles and relationships. The blank tables are filled with arbitrary values so engineers know what data is important. For example, the conceptual model will have a table named “Store,” while the LDM will fill the table with titles such as “Store Description” and “Store Name.” The data is not implemented at this stage, which intends only to let the engineers know what information is required for a functioning database.

The relationships between the different tables also are detailed, so engineers will know how to make them interact. There is usually one central table, to which all other tables connect. Between the ancillary tables, there are sometimes interconnections, showing that these tables cannot function independently of one another. Lines connecting one table to another show these relationships.

A logical data model is needed for many reasons. It clarifies what information the business is collecting and how all the data are related. This also makes it easier for management to look through the draft and see if more information is needed. The information is diagramed, so the engineers will need less time to create the data model, because the plan is detailed and there is no guesswork.

After the logical data model, the PDM is created. This is the real and physical implementation of the database. In this model, all the arbitrary values are filled with real values, such as “Year” being filled with “2011,” and the data are actually used and being collected.

You might also Like

Discussion Comments


@Mammmood - I’ve never seen a conceptual data model myself. I guess the manager does this before the project is handed off to me. I think if the project goes awry they will point to the conceptual data model first to make sure everything is set up correctly.

Then they will look at the logical data model. I believe these two models serve as a blueprint for the database. You certainly can’t build a solid structure without a blueprint of some kind.


@David09 - I totally agree. I started out with Microsoft Access and didn’t do my models correctly at first.

I didn’t even build proper relationships like I knew I was supposed to (and Access makes building and documenting relationships easy) and my database was a mess. It had lots of data integrity issues and was not streamlined in any way.

Now, I always plan out and model my data, even if it means a delay in development. It pays off down the road.


I am a firm believer in data modeling before building the database. There really is no excuse not to do it, since there are so many data modeling tools that you have at your disposal which can assist you with the process.

However, the reality is that many novice database developers skip this very important step. How do I know this? Because I was one such novice database developer myself, and I found modeling to be boring and a waste of time (so I thought) in the same way that many programmers don’t flow chart their code even though they know they should. Programmers want to dive into the “fun” stuff.

However, let me tell you what’s not fun. Months later when your database is a mess because you didn’t properly model the data, that’s not fun. Often you have to start over. Why not model it from the beginning and save yourself the hassle?

Post your comments
Forgot password?
    • Man holding computer
      Man holding computer