Databases / DBMS’s
So much data, so little time! So what is a database? More specifically what is a DBMS? Well I suppose at their core DBMS’s (database management systems) are essentially giant digital filing cabinets that facilitate us with the ability to store, retrieve and arrange data. Perhaps the most common DBMS you may encounter is SQL, SQL is what’s referred to as a domain-specific language. It is used for managing data held within a relational database management system (more on relational databases coming up).
There are a few different breeds of databases, SQL perhaps being the most prominent, however, each one has its own unique pros, cons and suitability depending on the application. There are a variety of different database options just some are; Oracle Database, MySQL, MongoDB, SQLite among many others.

Three common types of DBMS’s (database management systems)
- Relational Databases (Databases which store related data in tables, for example, a school may have a table each for a student year, class, age/gender/address and so on). Relational databases are among the most widely used DBMS’s. Some examples of relational DBMS’s are SQL, Oracle Database and MySQL.
- Object-Oriented databases Object orientated databases as expected have their ties with object-orientated languages such as Java Ruby and C++. OOD’s are designed with the capability of accepting complex data types via methods written in an object-orientated language, unlike relational databases that don’t facilitate this compatibility. Sounds great right? sadly these types of databases have their downfalls, they can often be costly to implement particularly if a relational database is already established in a system. Some examples of object orientated DBMS’s are PostgreSQL, Cache and ConceptBase.
- Hierarchical Databases As you would correctly assume are arranged in hierarchies, these databases are arranged kind of like a tree with a central root, branches, and leaves (The tree being the parent, the nodes being the branches and the leaves being the children). The Apache Directory is a good example of a DBMS made with hierarchical databases in mind, in some scenarios hierarchical databases are formatted with XML.
As these databases are each individually broad subjects I won't be covering them in great detail in this article alone. However, there are some great learning resources out there if you look hard enough, I hope to cover them in more detail in the near future. For more information and a more in-depth explanation of other database types check out this helpful article I stumbled across here…
If it all still seems a little abstract please also check out the videos I found above, the authors did a great job of solidifying these concepts in a brief explanation.
Thanks for reading and have a great day!