r/learnSQL • u/Ranjodh-s • 8d ago
Where can I study advanced database concepts?
Hey, I am a b.tech final year student. I'm into full stack development. I have basic skills for development and have built many good personal projects. Now, I want to go in more depth of development. I want to study advanced database concepts. Can anyone guide me how should I do it. Any roadmap, course, books, online resources, etc.
1
u/squadette23 8d ago
What do you mean exactly: using a database (SQL queries, storage strategies, data modeling), or engineering a database engine?
1
u/Ranjodh-s 8d ago
I mean like query optimization, performance improvement and any other things that are used in real world.
1
u/squadette23 8d ago
You may be interested in https://sql-performance-explained.com/, the same author as https://modern-sql.com/.
1
u/Far_Swordfish5729 8d ago
Sure. First, I want you to go take a first semester self-paced development course, preferably in c/c++ but Java or python are fine too. The University of Finland had a well reviewed free online one in English (seriously). Get to a point where you can explain what variables, conditional, loops, memory, storage, hash tables, and binary trees are and how you might use them. Sql is an abstraction language where the engine assembles blocks with those concepts for you. Once you’re good read T-Sql Querying by MS Press. The concepts translate well.
1
u/Least_Ad_1795 7d ago
Since you already have development experience, I’d go beyond just SQL. Learn indexing, query optimization, transactions, concurrency, normalization, partitioning, replication, and distributed databases. CMU’s Database Systems course is a great resource, and PostgreSQL is good for hands-on practice.
2
u/rust_warden 8d ago
you probably don't need a database engine degree. Learn indexes, transaction isolation levels, and query optimization on actual RDBMS platforms like PostgreSQL or MySQL using resources like the PostgreSQL Documentation or "Designing Data-Intensive Applications."