There are a number of very fundamental concepts that crop up again and again in computer science. This is particularly true when it comes to different database products. Among these constructs are:
- B-trees (and variations)
- Locking and scheduling
- Memory management
All “big-time” relational databases, and many non-relational ones, deal with these issues. Vendors or projects may implement locking in slightly different ways, but you can be pretty sure that a relational database deals with locking. Having a strong understanding, for example, of locking techniques and how they interact will help you go a long way toward working on almost any relational database.
I’ll be adding posts on these topics in the future, but in the meantime, if you were to do nothing more than search Wikipedia for these topics, and read the articles and references contained in them, you would learn a lot about the internals of databases.