Introduction to Data and Database Designs

Introduction to Data and Database Designs

Photo by fabio on Unsplash

Data and its usage has constituted a greater proportion of our lives and the world from a more macroscopic view. This data which is generated as a result of our activities on the web has made surfing the web seamless and smooth. It has allowed for a more personalized web experience.

Data - What does it mean?

Data is simply factual information about objects and concepts. Factual information refers to information that is based on facts or observable data, rather than opinions or subjective interpretation.

How is data stored?

Data can be stored in different ways, from storing on flat files to spreadsheets and so on. The term "database" refers to "how" data is stored.

A database is a collection of data that is organized in a specific way, allowing it to be accessed, modified, and analyzed efficiently.

There are different approaches to structuring data in a database, including the relational model, the hierarchical model, the object-oriented model, the NoSQL model, and the Network model.

Where is data stored?

The physical location where a database is stored, such as a hard drive or a server, is usually referred to as a "database management system" or "DBMS."

A Database Management System is a software system that is designed to manage and maintain a database, including tasks such as storing, retrieving, and updating data.

Database Designs

Database design is the process of creating a structured plan for a database. The structure is aimed at creating a database that is both efficient and effective at storing data.

In designing a database, several key steps are involved:

  1. Understanding the purpose of the database and what it will be used for.

  2. Identifying the types of data that will be stored in the database, such as text, numbers, dates, and so on.

  3. How the data will be organized. This may involve creating tables and relationships to ensure that data can be accessed and managed efficiently.

  4. Normalization of the data. Normalization is the process of organizing the data in a way that reduces redundancy and dependency.

  5. Test and refine the design.

Types of Database Design Patterns

  1. Hierarchical database design: This design uses a tree-like structure, with each entry or record having a single parent record and can potentially have multiple child records as well.

  2. Network database design: This is similar to the hierarchical model, but allows each record to have multiple parent records.

  3. Object-oriented database design: In this design, data is stored in the form of objects, rather than tables. Objects can have attributes and relationships with other objects and can be organized into classes and subclasses.

  4. NoSQL database design: Also known as "Not Only SQL," design is mostly meant for handling large volumes of unstructured data. Examples of unstructured data are audio and video files, images, social media post and comments, web logs etc.

  5. Relational database design: This is the most common type of database design. It is a table-based structure, with each table having rows(records) and columns(fields). Relationships can also exist between each table through the use of primary and foreign keys.

Each of these designs comes with its benefits as well as its downsides. So depending on the kind of data you intend to store, which can either be structured, semi-structured or unstructured data, that would determine which design pattern will best suit your need.