All Courses

Fundamentals of Database Engineering

Fundamentals of Database Engineering

Learn ACID, Indexing, Partitioning, Sharding, Concurrency control, Replication, DB Engines, Best Practices, and More!

Fundamentals of Database Engineering

What you’ll learn

  • Learn and understand ACID Properties
  • Database Indexing
  • Database Partitioning
  • Database Replication
  • Database Sharding
  • Database Cursors
  • Concurrency Control (Optimistic, Pessimistic)
  • B-Trees in Production Database Systems
  • Database System Designs
  • Difference between Database Management System, Database Engine, and Embedded database
  • Database Engines such as MyISAM, InnoDB, RocksDB, LevelDB, and More
  • Benefits of Using one database engine over the Other
  • Switching Database Engines with MySQL
  • Database Security
  • Homomorphic Encryption


  • Have worked with databases before but wish to get a deeper understanding
  • Basic SQL knowledge


Database Engineering is a very interesting sector in software engineering. If you are interested in learning about database engineering, you have come to the right place. I have curated this course carefully to discuss the Fundamental concepts of database engineering.

This course will not teach you SQL or programming languages. However, it will teach you skillsets and patterns that you can apply in database engineering. A few of the things that you will learn are Indexing, Partitioning, Sharding, Replication, b-trees in-depth indexing, Concurrency control, database engines, and security, and much more.

I believe that learning the fundamentals of database engineering will equip you with the necessary means to tackle challenging problems yourself. I always compare engineering to math; you never memorize specific formulas and equations; you know the basic proof and derive and solve any equation one throws at you. Database engineering is similar; you can’t possibly say MongoDB is better than MySQL or Postgres is better than Oracle. Instead, you learn your use case, and by understanding how each database platform does its trade-offs, you will be able to make optimal decisions.

One other thing you will learn in this course is the lowest database interface that talks to the OS, which is the database engine. Database engines or storage engines or sometimes even called embedded databases is a software library that database management software uses to store data on disk and do CRUD (create, update, delete). Embedded means moving everything in one software, no network client-server. In this video course, I want to go through a few popular database engines, explain the differences between them, and finally, I want to spin up a database and change its engine and show the different features of each engine.

Enjoy the course.

Who this course is for:

  • Software Engineers and Database Engineers

Fundamentals of Database Engineering

Get Course Now (Part 2)