Database concepts: why, how and which one
Through examples you learn why data lives in databases rather than files, how relational, document and key-value models differ and how to choose the right engine for a job.
Level 101 · 15 lessons · 12 practice labs
Lessons
Core ideas
- Why databases: the limits of files
- Tables, rows and columns
- Keys and relationships
- A first look at SQL
- Short task: turn a CSV file into a table
Kinds of models
- The relational model
- The document model
- The key-value model
- Time series, graph and search engines
- Short task: show the same data in three models
Choosing and caring
- Client-server and embedded databases
- An introduction to transactions and ACID
- Choosing an engine for the job
- Data responsibility: backups, access and privacy
- Capstone: a data plan for a café chain
Practice labs
- Turn a messy CSV into a table: Load Çınaraltı Kafe's hand-kept customer CSV into a table with properly chosen columns.
- Stop duplicate rows with a key: Defne Kitabevi's member list holds the same person three times; choose a primary key and clean out the duplicates.
- Split one file into related tables: Split Bereket Fırını's table that mixes order and customer data into two related tables and query the same result.
- Write the same product as a document: Turn one of Lale Market's product rows into a JSON document with nested fields and note the differences.
- Pick a key-value model for session data: Design Pusula Turizm's session data as key-value pairs and write down which questions it cannot answer.
- Compare sensor data in three models: Model Nehir Enerji's meter readings as relational, document and time-series data and ask all three the same question.
- Watch a half-finished transfer: Interrupt a transfer between two accounts midway and show what breaks without a transaction.
- Wrap a stock update in one transaction: Fix Gökkuşağı Oyuncak's bug where an order is saved but stock is not reduced by using a single transaction.
- Verify data after a crash: Kill the process during writes, reopen the database and prove committed rows survived while uncommitted ones vanished.
- Choose a database type for three apps: Choose a suitable database type with reasons for a mobile notes app, an accounting system and a cache.
- Decide when to leave an embedded database: Kestane Mobilya's single-file database struggles with concurrent users; measure it and justify a move to a server engine.
- Write a data responsibility plan: Prepare a one-page plan for Yakamoz Otel's guest data covering backup frequency, access roles and retention period.
About this course
Through examples you learn why data lives in databases rather than files, how relational, document and key-value models differ and how to choose the right engine for a job.
What you will learn
- Core ideas
- Kinds of models
- Choosing and caring
Prerequisites
No prior knowledge is needed; the course starts from zero.
Lab environment
Lessons run in your own Kali Linux terminal that opens in the browser. Nothing to install; the lab starts clean in every lesson.
Frequently asked questions
- Is this course right for my level?
- The course is at beginner level; every term is explained where it first appears.
- Is there anything to install?
- No. Every lesson runs in your own lab environment that opens in the browser.
- How do lessons work?
- Each lesson has 8 to 10 steps and a short quiz. Early steps show the command to type, later steps give less help; if two attempts fail, the solution opens.
- Can I try it for free?
- Yes. The first three lessons of every course are free.