Editor's Image
As a data professional, you must learn and continue to work on your database and SQL skills. This is why.
Querying databases with SQL to answer a set of business questions may be sufficient for certain projects. However, to build solid systems and applications, you must be familiar with database internals, data models, database design, and the like.
While you can learn and practice SQL on your own, learning database concepts can be easier if you follow a structured curriculum. To make this easier for you, we have curated this list of free database and SQL courses from some of the best universities around the world.
The Introduction to Databases course taught by Prof. Trummer at Cornell University covers several important topics: from SQL basics to NoSQL and NewSQL systems. Here is an overview of the topics:
- SQL
- Storage and indexing
- Relational data processing
- Transaction processing
- Database design
- Distributed data processing
- Beyond relational data
Course link: Database Systems – Cornell University Course (SQL, NoSQL, Large Scale Data Analysis) and Part 2 of the course.
Introduction to Databases with SQL o CS50 SQL taught at Harvard University is an excellent resource for becoming familiar with SQL and the fundamentals of relational databases.
The course has seven weeks of curriculum on working with relational databases with the following modules:
- Consulting
- Relative
- Design
- Writing
- Visit
- Optimization
- Climbing
Course link: CS50 Introduction to Databases with SQL
The Databases course taught by Prof. Jennifer Widom at Stanford is now available as a series of five self-paced courses on edX, which you can audit for free.
If you are new to the world of databases, consider taking the first course that covers the basics of relational databases before moving on to courses on more advanced topics. Let's look at the individual courses and what they cover.
Databases: Relational databases and SQL Covers SQL and relational models. It is recommended that you take this first course before continuing with the following courses in this series.
Databases: advanced topics in SQL it covers:
- Query performance
- Transaction and concurrency control
- Database restrictions
- Database Triggers
- Create and update database views
Databases: OLAP and recursion covers the following topics:
- OLAP cube
- star scheme
- OLAP functions
- SQL queries with recursive relationships.
Databases: modeling and theory will teach you:
- Relationship algebra
- normal shapes
- Recursive relationships
- UML
The final course Databases: semi-structured data covers working with JSON and XML. It also covers the basics of XPath and XSLT.
Course link:
- Databases: Relational databases and SQL
- Databases: advanced topics in SQL
- Databases: OLAP and recursion
- Databases: modeling and theory
- Databases: semi-structured data
If you want to delve deeper into the internals of databases, Introduction to Database Systems and Advanced Database Systems from Carnegie Mellon University are a great set of resources.
He introduction to the database systems The course covers the following general topics:
- Relational model and algebra.
- Database storage and compression.
- Database memory management and disk I/O
- Data structures such as hash tables and B+ trees
- Index concurrency control
- Query execution
- Query planning and optimization.
- Sorting, aggregation and union algorithms.
- Database registration
- Distributed database systems
Course link: introduction to the database systems
If you are interested in specializing in database engineering, data engineering, or a related field, it will be helpful to understand the internals of modern OLAP databases. He Advanced database systems course covers precisely that.
This course is a deep dive into the internals of databases: from the components that make up OLAP systems to the internals of modern analytical data warehouses like Google BigQuery and Snowflake, this course covers a wide variety of topics that include:
- Modern OLAP databases
- Data storage and design models.
- Execution and scheduling of queries.
- Vectorized execution
- Advanced algorithms
- Internal databases from Google BigQuery, Amazon RedShift, Databricks, Snowflake and more
Course link: Advanced database systems
When you begin your career, the database systems course you take in college will usually prove to be one of the most useful. But even if you can't go to college to get a computer science degree, these courses should teach you almost everything you'd ever want to learn about databases.
If you are interested in learning SQL and enough about relational database design. Or if you want to delve deeper into the internals of databases, these courses offer it all. What happy learning!
Bala Priya C. is a developer and technical writer from India. He enjoys working at the intersection of mathematics, programming, data science, and content creation. His areas of interest and expertise include DevOps, data science, and natural language processing. He likes to read, write, code and drink coffee! Currently, he is working to learn and share his knowledge with the developer community by creating tutorials, how-to guides, opinion pieces, and more.