In the tutorials so far, we’ve focused on the functionality of a database and how to interact with a database. What is just as important is to understand why we need databases in the first place. To understand this, we must first see that data is used in pretty much everything that we do and interact with. Try to consider how you interact with databases just in your day and how you consume and produce data. Think about what those companies are, where the data is stored and how the information is used. For companies to use this data, they must use databases so that they can store, manage and retrieve that data quickly. Pretty much any current information system, eCommerce site, or app that is used will rely on databases to manage that data and information.
There’s a lot of planning involved to ensure that we have that accurate data and information. Data management is a discipline that does require us to focus on the creation, storage, and retrieval of data. As this is an important aspect to ensure that data is handled correctly, there’s a big focus on data management in any organization. As part of that, we make use of a database management system as a collection of programs that will help manage the database structure and control access to the data in the database. This is precisely what database management systems like PostgreSQL, MySQL, Oracle, and MS Access are.
It is important that we separate out data, information, and knowledge when it comes to databases. A database, at a high level, stores a few different items. It has the end-user data that you have been interacting with. Metadata is data about data where it describes the data characteristics or relationships of the data. For example, this could define the data types and sizes of the columns in a table. They could also define the relationships and constraints that we have set in the database. The metadata describes the complete picture in the database or the schema as we looked at in a prior tutorial.
Data consists of the raw facts that don’t have any meaning behind them yet. Think of the database that we have been using so far. Things like the employee name or customer address are just raw data elements. There is not much that can be done with this raw data unless we start to transform the data through those SQL queries that we have been using.
Information on the other hand is when we take that raw data and process it to give it meaning to questions that we have. To give it meaning, information does require context about the criteria. This could be as simple as reordering rows of data with an ORDER BY or as complex as joining multiple tables and providing summaries of purchase trends. That result from those SQL queries given a specific question that we have would confirm that raw data to information. That raw data is the foundation to generate and give meaning through information by processing the data.
Knowledge can then be built from the body of information and facts about a specific topic. The knowledge implies that we have some pre-existing understanding and familiarity of the information as it applies to the topic. This could be as simple as understanding the organization or business processes.