Why do I need to learn about database design?
Database is the heart of any software system, especially enterprise systems. A bad database design will eventually cause your system fail. Designing enterprise databases requires a lot of specific enterprise knowledge and in-depth understanding of structure of big databases. That’s why you need to learn about database design.
What can I do after finishing learning about database design?
You will know how to design a relational database and write SQL code PROPERLY (i.e. for specific purposes). You will know how to build a data warehouse. You will know WHEN you should use a relational database management system or WHEN you should use a NoSQL database management system and HOW they actually work.
That sounds useful! What should I do now?
Please read this Stephane Faroult and Peter Robson (2006). The Art of SQL. O’Reilly Media book first to learn how to write SQL code efficiently.
Then please read
– this W.H. Inmon (2003). Building The Data Warehouse. Wiley book and
– this Ralph Kimball and Margy Ross (2002). The Data Warehouse Toolkit: The Complete Guide to Dimensional Modeling. Wiley book and
– this Vincent Rainardi (2008). Building a Data Warehouse: With Examples in SQL Server. Apress book to learn how to build a data warehouse.
After that please read this Abraham Silberschatz et al. (2019). Database System Concepts. McGraw-Hill Education book to learn about concepts that will help you understand how distributed databases work later.
After that please read
– this Pramod J. Sadalage and Martin Fowler (2012). NoSQL Distilled: A Brief Guide to the Emerging World of Polyglot Persistence. Addison-Wesley Professional book, and
– this Martin Kleppmann (2017). Designing Data-Intensive Applications: The Big Ideas Behind Reliable, Scalable, and Maintainable Systems. O’Reilly Media book, and
– this Alex Petrov (2019). Database Internals. O’Reilly Media book
to learn how to design distributed databases and how distributed databases work.
And finally please read
– this C. J. Date (2019). Database Design and Relational Theory: Normal Forms And All That Jazz. Apress book and
– this C. J. Date (2015). SQL and Relational Theory: How to Write Accurate SQL Code. O’Reilly Media book to learn about normal forms and relational theory behind relational databases for creating more efficient logical designs for your databases.
- Relational Model
- Relational Theory
- Normal Forms
- Database Design
- Enterprise Applications
- Enterprise Systems
- Data Warehouse
- Dimensional Modeling
- Data-Intensive Applications
- Graph Databases
- Distributed Databases
- Distributed Relational Databases
After finishing the books please click Topic 16 – Advanced Software Design to continue.