Why Databases? Data, Information & the Need for DBMS
Database কেন? ডেটা, তথ্য ও DBMS-এর প্রয়োজন
1. The First Question — What Is Data, Really?
Open your phone and look at any app you used today: bKash, Pathao, Daraz, Facebook, even your university's student portal. Behind every screen there is a single, quiet hero — a database. Without it, none of those apps could remember who you are, what you ordered, how much money you have, or where the rider is right now.
Before we can talk about databases, we need to be precise about one word: data.
Data is raw, unorganised facts — a phone number, a price, a date, a name. By itself, data does not
tell you anything useful. The number 17500 is just a number. But the moment you give it
context — "Rahim's salary in BDT for October" — it becomes information.
17500। কিন্তু যখন বলবেন "Rahim-এর অক্টোবর মাসের বেতন (টাকায়) 17500" — তখনই data পরিণত হয় information-এ।
A database is just a structured place to keep data — and a DBMS (Database Management System) is the program that turns that data into reliable, queryable, multi-user information. This first module answers: why bother? Why not just use a text file or a spreadsheet?
2. Data vs Information vs Knowledge
These three words are used interchangeably in daily Bangla and English, but in computer science they mean very different things. The DIK pyramid below is the cleanest way to remember the distinction.
| Term | Definition | বাংলায় |
|---|---|---|
| Data | Raw, unprocessed facts — numbers, characters, dates with no context. | প্রসঙ্গবিহীন কাঁচা তথ্য (যেমন 17500, 'Rahim')। |
| Information | Data given context, structure, and meaning. | প্রসঙ্গসহ, অর্থপূর্ণ ডেটা। |
| Knowledge | Patterns and decisions extracted from information over time. | তথ্য থেকে পাওয়া প্যাটার্ন বা সিদ্ধান্ত। |
| Database | A structured collection of related data, stored to be retrieved efficiently. | সম্পর্কযুক্ত ডেটার একটি কাঠামোগত সংগ্রহ। |
| DBMS | The software that lets you create, query, and protect a database. | যে software দিয়ে database তৈরি, query ও সুরক্ষা করা হয়। |
3. Why Not Just Use a Text File or a Spreadsheet?
This is the most honest question a beginner can ask. After all, a CSV file works. Excel works. Notepad works. So why do bKash, Daraz, and the Election Commission not just use a giant Excel sheet?
The answer is that flat files are perfect for one user, one machine, a few hundred rows. They start to crack the moment any one of these is true:
- Two or more people need to read or write at the same time.
- Power may fail in the middle of a write.
- Data must remain consistent — no negative bKash balances, no two students with the same roll number.
- Querying must be fast on millions of rows ("show all orders from Khulna last week, by amount").
- Different users should see different parts of the data (a cashier sees totals, an analyst sees raw rows).
Imagine bKash storing balances in a CSV. Two cash-in transactions for the same wallet hit the file at the same millisecond. Both processes read the old balance (say
500), both add their amount, and
both write back. One write overwrites the other — money simply vanishes. A DBMS makes this category of
bug impossible through transactions.ভাবুন bKash যদি balance একটি CSV-তে রাখত। একই মুহূর্তে দুটি cash-in হলে দুজনই পুরোনো balance পড়ে, যোগ করে, ফিরে লেখে — একটি লেখা অন্যটিকে মুছে দেয়, টাকা হাওয়া হয়ে যায়। DBMS-এর transaction এই ধরনের বাগ পুরোপুরি অসম্ভব করে তোলে।
4. The Four Guarantees a DBMS Gives You
Every serious DBMS — SQLite, PostgreSQL, MySQL, Oracle — provides four pillars that no plain file can:
Let us see all four in a single, runnable example. Below we model a tiny bKash-style wallet table. Click Run — the DBMS creates the table, refuses to insert a negative balance (integrity), and answers a query in milliseconds.
-- Show every wallet, richest first
SELECT owner, msisdn, balance
FROM wallet
ORDER BY balance DESC;
And here is what happens if a buggy program tries to set a negative balance — the DBMS refuses, protecting the business from a class of bugs that no CSV ever could.
-- Try to overdraw — DBMS will reject it
UPDATE wallet
SET balance = balance - 5000
WHERE msisdn = '01711000001';
SELECT * FROM wallet;
5. Where Databases Live in Bangladesh (আপনার চারপাশে কোথায়)
Almost every digital service you trust runs on at least one — usually many — databases. Here are real, concrete examples from Bangladesh that you interact with every week:
প্রতিটি send-money, cash-in, merchant payment একটি database transaction।
রাইড, রাইডারের লোকেশন, ভাড়ার হিসাব সব database-এ।
প্রোডাক্ট, অর্ডার, ডেলিভারি ট্র্যাকিং — সব relational table।
১৩+ কোটি নাগরিকের তথ্য, যা পুলিশ ও ব্যাংক verify করে।
SSC/HSC ফলাফল, প্রতিটি শিক্ষার্থীর roll, GPA, subject।
প্রতিটি account, deposit, EFT — সবই ACID-compliant DB-তে।
রোগীর রেকর্ড, prescription, vaccine database।
BUET/DU-র library catalog, issue/return ট্র্যাকিং।
Even the small computer-shop in your area uses a database — usually behind a Tally or POS app — to track inventory and bills. Once you see databases this way, you stop seeing apps and start seeing tables.
6. Who Works With Databases? — Roles & Career Paths
"DBMS" is not just one job. Around any non-trivial database, three different roles cooperate. Here is how companies in Dhaka actually structure their data teams:
| Role | Daily Job | বাংলায় |
|---|---|---|
| Database Administrator (DBA) | Installs and tunes the DBMS, runs backups, sets up replication, monitors slow queries, manages users and permissions. | DBMS install, tuning, backup, replication ও permission সামলান। Server-পর্যায়ের কাজ। |
| Application Developer | Writes the SQL inside the app — every SELECT, every INSERT — and designs the schema. | App-এর ভেতরে SQL লেখেন; প্রতিটি screen-এর schema design করেন। |
| Data Analyst / BI Engineer | Writes complex read-only queries to find patterns, builds dashboards (Power BI, Metabase), reports trends to management. | Read-only জটিল query লিখে dashboard বানান, ম্যানেজমেন্টকে ট্রেন্ড দেখান। |
| Data Engineer | Builds ETL pipelines that move data between operational DBs and warehouses (BigQuery, Snowflake). | Operational DB থেকে warehouse-এ ডেটা নিয়ে যাওয়ার pipeline বানান। |
| Backend Engineer | Glues the DBMS to the API. 70% of their bugs are SQL bugs. | API ও DBMS-এর মাঝে সেতু। বাগের বেশিরভাগই SQL-এ। |
✅ Why Learn DBMS & SQL
- Used by every backend job in Bangladesh.
- SQL has not changed much in 30 years — your knowledge ages well.
- Excellent freelance market (US/UK clients).
- Foundation for data science, ML, and analytics careers.
⚠️ Common Beginner Mistakes
- Memorising syntax without learning the relational model.
- Skipping
JOINs andGROUP BY— that's where the real work is. - Ignoring transactions — many bugs are concurrency bugs.
- Believing NoSQL "replaced" SQL. It did not.
7. Quick Glossary (শব্দকোষ)
| Term | Meaning | বাংলায় |
|---|---|---|
| Database | An organised collection of related data. | সম্পর্কযুক্ত ডেটার একটি সংগঠিত সংগ্রহ। |
| DBMS | The software that creates and manages databases (SQLite, PostgreSQL, MySQL). | Database তৈরি ও পরিচালনার software। |
| SQL | The language we use to talk to a relational DBMS. | Relational DBMS-এর সাথে কথা বলার ভাষা। |
| Table | A grid of rows and columns; the unit of relational storage. | Row ও column-এর গ্রিড। |
| Row / Tuple | One record — one student, one transaction, one order. | একটি রেকর্ড। |
| Column / Attribute | One named property — name, balance, msisdn. | একটি নামকৃত বৈশিষ্ট্য। |
| Schema | The blueprint — which tables exist, which columns, which types. | Database-এর ব্লুপ্রিন্ট। |
| Query | A single SQL statement asking for or changing data. | একটি SQL বাক্য, যা ডেটা চাওয়া বা পরিবর্তন করে। |
8. Practice Problems
Each problem has a Show Answer button. Try first, then check. Several answers contain runnable SQL — click Run to see the result.
-
Give one real example from your daily life where data becomes information only after context is added.আপনার দৈনন্দিন জীবন থেকে এমন একটি উদাহরণ দিন যেখানে context যোগ করার পরই data → information হয়ে ওঠে।
✨ Show Answer (উত্তর দেখুন)
Sample answer: The number
13.5alone is just data. The phrase "13.5 km from Mirpur 10 to Motijheel" is information. The conclusion "I should leave 45 minutes early during rush hour" is knowledge.শুধু
১৩.৫হলো data। "মিরপুর-১০ থেকে মতিঝিল ১৩.৫ কিমি" হলো information। "জ্যামের সময় ৪৫ মিনিট আগে বের হতে হবে" — এটি knowledge। -
List the three biggest problems with storing a country's NID data in a single CSV file.পুরো দেশের NID ডেটা একটি মাত্র CSV ফাইলে রাখলে সবচেয়ে বড় তিনটি সমস্যা কী হবে?
✨ Show Answer (উত্তর দেখুন)
Answer: (1) Concurrency — when 10 government offices update at once, writes overwrite each other. (2) Integrity — nothing prevents two citizens from sharing the same NID. (3) Performance — searching 13 crore rows linearly is unusable; a DBMS uses indexes.
(১) Concurrency — দশটি অফিস একসাথে আপডেট করলে লেখা হারাবে। (২) Integrity — দুজনের একই NID হওয়া আটকানো যাবে না। (৩) Performance — ১৩ কোটি row লাইন ধরে খুঁজলে অচল; DBMS index ব্যবহার করে।
-
Create a table
studentwith columnsroll,name, andcgpafor three students from your class. Then list everyone with CGPA above 3.5.তিনজন শিক্ষার্থীর জন্যstudentটেবিল বানান (roll, name, cgpa) এবং CGPA ৩.৫-এর বেশি সবাইকে দেখান।✨ Show Answer (উত্তর দেখুন)
ans3.sqlSELECT roll, name, cgpa FROM student WHERE cgpa > 3.5 ORDER BY cgpa DESC; -
Build a tiny
bkash_txntable with a few transactions and list the total amount sent.কয়েকটি লেনদেন নিয়েbkash_txnটেবিল বানান এবং মোট পাঠানো টাকার যোগফল বের করুন।✨ Show Answer (উত্তর দেখুন)
ans4.sqlSELECT SUM(amount) AS total_sent, COUNT(*) AS txn_count FROM bkash_txn; -
Explain in your own words: what is the difference between a "database" and a "DBMS"?নিজের ভাষায় বলুন: "database" এবং "DBMS"-এর মধ্যে পার্থক্য কী?
✨ Show Answer (উত্তর দেখুন)
Answer: A database is the data itself — the stored facts, like the tables of bKash transactions. A DBMS is the program (SQLite, PostgreSQL, MySQL) that creates, queries, and protects that data. The database is the book; the DBMS is the librarian.
Database মানে ডেটা নিজেই — সংরক্ষিত তথ্য, যেমন bKash লেনদেনের টেবিল। DBMS হলো সেই software (SQLite, PostgreSQL, MySQL) যা ডেটা তৈরি, query এবং সুরক্ষা করে। Database হলো বই; DBMS হলো লাইব্রেরিয়ান।
-
Try to insert a transaction with a negative amount into the table below. What happens, and why?নিচের টেবিলে ঋণাত্মক amount-এর একটি লেনদেন insert করার চেষ্টা করুন। কী ঘটে এবং কেন?
✨ Show Answer (উত্তর দেখুন)
ans6.sql-- The CHECK constraint will reject this row INSERT INTO bkash_txn VALUES (99, '01711000001', '01812000002', -100);DBMS-এর
CHECKconstraint লঙ্ঘিত হয় বলে row reject হয় — এটি integrity-এর জীবন্ত উদাহরণ। CSV হলে এমন কোনো রক্ষণ থাকত না।
Summary — Module 01
Data is raw facts; information is data with context. A database stores data, and a DBMS manages the database. Plain text and CSV files break the moment we need concurrency, integrity, durability, or fast querying — and a DBMS provides all four out of the box. From bKash to NID to your university's result portal, every serious system in Bangladesh depends on a database. Understanding why is the first step in this 60-module journey.