It’s the 40th anniversary of Db2, IBM’s family of data management products, which was first released in 1983 as DB/2 (Database 2). IBM Db2 was a successor to IBM’s first relational database IMS, and as a response to competition from Oracle’s database, which was launched in 1979.
Db2 might be considered one of the brainchildren of mathematician Edgar F. Codd, who worked at IBM in the 1970s. He introduced the relational model in his seminal paper “A Relational Model of Data for Large Shared Data Banks,” whereby a relational database is one that organizes data into tables. This may seem simple, or even intuitive, now. But, its value of such a filing system has been confirmed by the success it has met from its origin to the present.
This model is based on the relationships between data, which are presented in tabular form, i.e., as a set of tables each made up of rows and columns. Structured Query Language, or SQL, was introduced along with the relational model. It is this language, which allows for the management of data through sentences that contain keywords taken from the ‘normal’ language (such as English or the other languages on offer). Relational databases quickly became popular with other versions coming along around the same time but IBM’s Db2 is perhaps the best known. Each software has its own characteristics, and the widespread adoption of relational databases led the inventor of the model to define, in 1985, a series of rules (“the 12 rules” by Codd), with which a database management system (DBMS) must comply in order to be considered Relational.
If Db2 is still being used today after four decades, it’s because it offers many benefits. It’s highly reliable and efficient, making it a suitable choice for critical applications. Over the years, IBM has continually updated and improved on Db2, which has become a popular choice for organizations that need to manage large amounts of data. Db2 offers a number of features that still make it a powerful system today thanks to its high performance and scalability, which have made it suitable for large databases. It also offers several data security features, including encryption and authentication, supporting a variety of programming languages, such as Java, C# and Python. Initially exclusive to mainframes, since 1987, Db2 has also supported Windows, Linux and Unix operating systems; Db2 can be hosted on cloud, physical server or both simultaneously, and works with both SQL and NoSQL data models. It offers several licenses, one free (Community), and two commercial (Standard and Advanced).
Db2 may appear outdated; and many articles present it—sometimes without even a hint of irony—as a dinosaur. But, Db2 has remained versatile, supporting various operating systems and enabling a variety of functions such as accessing, sharing, and analyzing data of any type whether it is structured, semi-structured or unstructured. Db2 is available in English, Spanish, French, German, Russian and Japanese. The Db2 family includes Db2 Database, Db2 Warehouse, Db2 on Cloud/Db2 Hosted, Db2 Warehouse on Cloud, Db2 Big SQL and Db2 Event Store. Db2 also supports the merging of Eclipse and Visual Studio integrated development environments.
SQL and Db2: Isn’t there something better?
Db2 is not without its limitations. It is expensive and requires a high level of technical expertise to set up and manage. And, in that respect, Db2 has alternatives, including such open-source alternatives such as MySQL, PostgreSQL and MariaDB. Additionally, cloud-based services such as Amazon RDS and Microsoft Azure SQL Database have introduced cost-effective ways to manage large databases in the cloud. Nevertheless, while Db2 has its share of competitors, it continues to enjoy a strong market presence.
In a world of constantly evolving technologies, it stands to reason that something that has been a computer standard for half a century should already have its successors. Many solutions have tried to threaten the supremacy of SQL and Db2. This is an important issue, given the decision that budding programmers will have to make about whether it’s worth learning SQL or not—effectively deciding whether the DBMS approach that Db2 represents will survive another four decades—or even just one. The closest to dethroning SQL has been NoSQL.
So why not learn NoSQL instead of SQL?
SQL was first developed by IBM in the 1970s to allow access to databases using an easy-to-learn, English-like language. It was quickly adopted by other software vendors and soon became the industry standard for working with relational databases. SQL is simple to learn, whether or not you have previous computer experience. SQL emerged at a pivotal moment in computer history. Originally, computers were huge (and very expensive) devices based on tube technology. In the 60s, thanks to the arrival of semiconductors, they became smaller and cheaper. However, only governments and big companies could afford them. The hardware was still very expensive. By comparison, the programmers who developed the software were cheap.
Then came the microchip. Suddenly, hardware prices dropped dramatically and the computer industry framework turned upside down; software development became the major expense while hardware got cheaper. Obviously, a way had to be found to make the software reusable and easier to develop. Cheaper hardware also meant that computers were capable of storing huge amounts of data, prompting a revolution in the software industry itself, and the very way data is used.
Relational databases became even more important as they made it easier to access and control data. SQL, and by extension the related DBMS, is one of the pillars of this revolution: it allowed developers and database administrators to easily create, manage, and analyze massive amounts of data. It also enabled individual organizations, through their own data analysts—to easily explore and aggregate data to meet their information needs, facilitating and accelerating their business decisions. In that regard, considering that the microchip still exists (and that it’s long from being surpassed by possible solutions such as Software Defined Hardware)—even as it undergoes further miniaturization and computing power capacities, which are also expected to drive quantum computers—there’s little practical reason for SQL, and therefore Db2, to fade into the cybernetic limelight.
Both SQL and Db2 are still here and doing the work. Proponents of non-relational databases argue that they are easier to use, more easily scalable, and faster when working with huge data sets. However, the issue is not whether one type of database management system is better than the other; rather, it is which DBMS is best for the job at hand. If the data being analyzed fits easily in rows and columns then a Db2 database is best. Alternatively, if the data requires a more flexible approach, then maybe a non-relational database might be more suitable. Therefore, NoSQL and SQL, and even more niche offerings such as ODBMS (Object Database Management System) can comfortably co-exist in the market. They’re not competing directly, as each solution has a different purpose. And so, for now, Db2 remains relevant, and in fact still manages much of the data of the world’s largest IT organizations, and will continue to do so for the foreseeable future.