Databases
Table of contents
Phase 1: SQL Proficiency
Goal: Get comfortable writing and optimizing SQL queries
Resources:
- PostgreSQL for Everybody Specialization - Complete all lessons (2 weeks)
- Neetcode - Complete all lessons (6 hours)
- LeetCode SQL Top 50 - Solve all problems (10 hours)
- Mode Analytics SQL Tutorial - Skim for advanced patterns (1 hour)
Daily commitment: 1 hour/day for 2 weeks
Phase 2: Database Fundamentals
Goal: Understand how databases work internally
Read “Designing Data-Intensive Applications” (DDIA):
- Chapter 1: Foundations (2 hours)
- Chapter 2: Data Models & Query Languages (3 hours)
- Chapter 3: Storage & Retrieval ← Critical (4 hours)
- Chapter 7: Transactions ← Critical (4 hours)
- Chapter 8: Distributed Systems Intro (3 hours)
Watch CS186 Lectures:
- Lectures 11-12: Query Optimization (4 hours)
Weekly commitment: 5 hours/week for 4 weeks
Phase 3: Time-Series Specialization
Goal: Understand financial data storage
Columnar vs Row Storage (Foundation)
Free Articles:
- AWS: Columnar Storage for Databases - Overview (15 min)
- The Basics of Column-Oriented Databases - Easy explanation (20 min)
- DDIA Chapter 3 (pages 95-104 in the book you already need to read) - Best technical explanation
Video:
- Row vs Column Oriented Databases - Visual explanation (8 min)
TimescaleDB (PostgreSQL for Time-Series)
Official Tutorials:
- TimescaleDB Docs - Introduction - Start here
- TimescaleDB Tutorial - Hands-on examples
- Time-Series Data: Why and How to Use a Relational Database - Excellent blog post (30 min)
Specific Topics:
- Hypertables Explained - Core concept
- Time-Series Queries - Practical examples
kdb+/q (Finance Industry Standard)
Free Learning Resources:
- Q for Mortals - THE definitive free book (read Chapters 1-3, 9)
- KX Academy - Free Courses - Official training (requires free account)
- Learn q in Y Minutes - Quick syntax overview (30 min)
Introductory Materials:
- Introduction to kdb+ - Official getting started
- Q Phrasebook - Quick reference for common operations
- Simple Guide to kdb+ and q - Beginner-friendly blog
Why kdb+ Matters:
- Used by major banks and HFT firms
- Extremely fast for time-series data
- In-memory columnar database
- Good to know, not required to master
Video:
- kdb+ Introduction - Basic concepts (15 min)
General Time-Series Concepts
Articles:
- Time-Series Database Fundamentals - InfluxDB blog (good concepts even if you don’t use InfluxDB)
- How to Choose a Time-Series Database - Comparison article
- Time-Series Data at Scale - Netflix engineering blog
Academic/Reference:
- Time-Series Databases: A Survey - Research paper (skim for concepts, not implementation details)
Connect to Your DolphinDB Experience
DolphinDB Resources:
- DolphinDB Documentation - Revisit with CS knowledge
- DolphinDB vs Traditional Databases - Architecture comparison
- Time-Series in DolphinDB - Streaming data
Your advantage: You already used DolphinDB - now understand WHY it’s designed that way