By Allen Brown
When you Google the definition of "data modeling" you are treated to a series of circular statements that leave you no wiser as to what it actually is. Simply put, data modeling is an expression of relationships between variables.
The variables can have one-to-one connections to each, one to many connections, or many to many connections.
Data modeling makes it easier to see what types of relationships or connections the variables in your business have with each other.
Let us say you own a retail clothing store. Over time, this store is liable to generate thousands of pieces of data: customer data, product data, and revenue data among others. You want to find out which customers buy which products so you can more effectively target them with your marketing.
In such a situation, data modeling would be:
There are many ways the above business information can be represented. There are several data modeling techniques that will allow you to create referenceable, easy-to-understand visualizations of it. These are:
The data is represented in a parent-child relationship. One is usually subordinate to the other. This normally takes on a tree-like appearance with one data "child" having a relationship with only one data "parent". Data parents can have many relationships with data children. This is considered to be one of the simplest modeling techniques.
In the network modeling technique, there can be more complex representations of the data, as data children can have relations with many data parents.
This modeling technique displays the relationship between pieces of data in tables.
This data modeling technique is used to show more complex relationships between data that the others listed above may not be able to.
This data modeling technique comprises entities, attributes, and the relationships between them. An entity is a thing about which data is stored, for example, a customer. Each entity has attributes. An attribute more fully describes an entity, for instance, a customer must have a name. A name, therefore, would be an attribute.
The whole point of data modeling is to make critical business information, needed for decision making, easily accessible to the people who need it when they need it.
Data management can be an onerous task because of the sheer volumes of data that can be generated by even the smallest enterprises.
Even when you transfer the records you kept on paper into a suitable data model, you can find yourself with the same problems as when they were kept in a disorganized filing cabinet.
For one thing, the data is always being added to. If you're not careful, you can find yourself with a fancy data model that is ineffective because nobody bothered to update the information in it. The data is also practically useless if it cannot be accessed in a form that is easily understandable by the viewer.
How do you fix this?
The amount of data your business generates, your business intelligence needs, the level of sophistication of your data model among other things will change over time.
Therefore, the data model you initially set up, should be capable of evolving with your needs.
There is no point in creating a data model if it doesn't help the business by providing information the actors within it (management, employees, etc) need to answer questions. The only way you will get relevant answers to questions is to collect and store relevant data in the first place.
To get relevant data, those setting up the model must have detailed knowledge of what the business' goals and objectives are. Going back to our example of a retail clothing store, the store wants to know how best to improve its marketing efforts targeting regular buyers.
The marketing department should be able to easily pull up customer data, as well as data on revenue earned from those customers and the types of items they bought. Other data would be irrelevant for their purposes.
A data model that supplies irrelevant information in response to questions the business actually needs answers to is a poor one. Knowing what type of business intelligence your business will need is a way your data modeling can be improved.
Usually, having questions like the one above answered only require certain pieces of data and not all the data that could potentially be stored about the customer.
In the above example, marketing would only need the customer's name, what their purchases, and the revenue generated from them over time were. It would complicate the data model to include items like address and age. This will eventually lead to storage space issues as well as cause the model to return incorrect search results.
No one wants to have to stare at row after row and column after column of data. Human nature is such that we are drawn to color and shapes.
Data visualizations that understand this tendency will make use of these elements to describe data and the relationships between them. User interface and user experience in the eventual database should be taken into account when doing your data modeling.
If your company does not need to define complex relationships between data sets then you can use a simpler data modeling technique, like hierarchical data modeling. However, if your data have complex relationships with each other, a data modeling technique that can represent this is best.
When you begin data modeling, you always want to start with the simplest items and build to more complex models. This way, you can ensure there are no errors as you build your model out into your database.
As "big data" becomes an indelible part of business, data modeling will become more and more necessary for businesses of all sizes. Make sure you have the knowledge and tools to create the best models for your business.
No comments on this item Please log in to comment by clicking here