DBS101 BLOGS

EXPLORING DATABASES : Insights from unit 1

Understanding Database Systems: My Learning Journey

Database

My Initial Understanding of Databases

Before starting this unit, I had a basic idea that databases were used to store and organize data. However, I did not fully understand how they worked beyond that. I had heard about SQL and database management systems (DBMS) but was unaware of how crucial they were in handling data efficiently.

What I Have Learned

1. Database vs. DBMS

One of the key takeaways from this unit was learning the difference between a database and a database management system (DBMS). I initially thought they were the same, but I now understand that a database is just a collection of organized data, while a DBMS is the software that manages and controls access to the data. This distinction helped me appreciate how databases function in large-scale applications. The major differences are stated below :

Database DBMS
A collection of related data on individuals, places, or objects is called a database. A group of programs that allow us to create, handle, and make use of a database is called a database management system (DBMS).
The databases are intended for a relatively limited number of users—ideally a select few users—who access data at various times rather than for a huge number of users who can access data simultaneously. A big number of users can access the data simultaneously due to the architecture of the database management system.
Very limited information may be changed at once when it comes to databases. A large amount of data can be modified at once in a database management system (DBMS) because several users can access it simultaneously.
Databases can be operated manually or by computers; however, they can be quite slow if SQL is not utilized to access data. Information can be retrieved quickly because a database management system uses a computer system.
When an error occurs, the databases do not guarantee that the data will still be accessible. Data availability is guaranteed by the database management system (DBMS), even in the event of system failures.

Database vs DBMS

2. Types of Data Models

Previously, I thought all databases stored data in tables, but I have now learned about different data models, including:

Entity Relationship Data Model

Fig.1. the Entity Relationship Data Model.

Relational Model

Fig.2. the Relational Model.

The relational model proposed by Edgar F. Codd, a mathematician at IBM Research in 1960’s stood out to me because it is widely used in industries and employs SQL (Sequential Query Language) for efficient data manipulation. The relational model unlike the early DBMS has separated the logical and physical layers and is easier to maintain.

3. Database Design Process

Understanding database design was particularly useful. It follows these steps:

This structured approach ensures databases are well-organized and scalable, which is something I never thought about before.

4. Data Abstraction Levels

A concept that fascinated me was data abstraction, which simplifies complex data structures into different levels:

Data Abstraction levels

Fig.3. Data Abstraction levels

This layering makes databases easier to work with, as users don’t need to understand the backend storage mechanics.

5. SQL and Database Languages

Before this unit, I thought SQL was just for retrieving data, but I learned it is divided into:

An interesting realization was that SQL is non-procedural or Declarative DML, meaning we specify what we need, not how to retrieve it unlike it’s counterpart procedural DML.

6. Database System Architecture

Database system architecture defines how a database is structured and accessed. It is mainly categorized into two types:

a. Two-Tier Architecture

b. Three-Tier Architecture

Database System Architecture

Fig.4. Database System Architecture

7. Database Engines

Another new concept for me was database engines or Embedded database, which handle data storage and processing. The main components include:

I also learned that databases interact with applications using APIs like ODBC (Open Database Connectivity), something I had never considered before.

We even discussed about the different types of database users and the key roles of Database Administrators as a part of flipped classroom followed by an interactive quiz.

Database vs DBMS

8. Different Types of Database Users

Database users are categorized based on their interaction with the database. There are seven main types:

  1. Database Administrator (DBA): Manages the database schema, user access, security, backups, and performs administrative tasks like repairing system failures and controlling data access through DCL operations.

  2. Naive / Parametric End Users: Unskilled users who interact with the database daily but have no DBMS knowledge, such as bank clerks or ticket-booking system users.

  3. System Analyst: Analyzes user requirements and ensures the database meets those needs.

  4. Sophisticated Users: Users like engineers and analysts who are familiar with databases and can write SQL queries to interact with the database.

  5. Database Designers: Responsible for designing the database structure, including tables, indexes, and constraints, to meet user requirements.

  6. Application Programmers: Develop back-end code for database applications, typically using programming languages like C or Java.

  7. Casual Users: Occasionally access the database, often for new information, such as middle or senior managers.

Each user type interacts with the database in unique ways, depending on their technical expertise and role.

Real-Life Applications and Reflections

This unit made me realize how databases are everywhere, used in banking, social media, online stores, and even in personal projects. I now understand why businesses need well-structured databases to manage vast amounts of data efficiently. I also found SQL to be a powerful tool and plan to learn how to work with it to solidify my understanding. I could also have a better knowledge of the different types of database users

Conclusion

Looking back, I see a huge improvement in my understanding of databases. Instead of just seeing them as storage systems, I now recognize them as well-designed structures that ensure data integrity, security, and efficiency. Moving forward, I am eager to explore relational modeling and ER diagrams in the next unit!


Stay tuned for more insights as I continue my learning journey!