Improving Db2 Performance: Q&A with Craig S. Mullins

Despite the attention given to new big data management technologies, Db2 remains one of the most widely used database management systems in the world and a fundamental component of many enterprise data architectures.  

In a new book, titled A Guide to Db2 Performance for Application Developers, Craig S. Mullins, president and principal consultant, Mullins Consulting, provides advice and direction to Db2 application developers and programmers on writing efficient, well-performing programs.

Craig Mullins' book coverIn a recent interview, Mullins reflected on the role of Db2 in a big data world, and the need for application code that will perform optimally. “Assuring optimal performance of applications is a significant ongoing operational challenge. Every database application, at its core, requires three components in order to operate: the system, the database, and the application,” said Mullins.

In the new era of big data and cloud, where does Db2 fit in?

Craig S. Mullins: Db2 is still one of the most powerful and most used database management systems in the world. It is for the most part, the only relational DBMS used on mainframes—and mainframes still power most of the Fortune 500, including major financial institutions and banks, airlines, retailers, telcos, and more. It also has a substantial installed base on Linux, UNIX, and Windows platforms. Infoclutch estimates that more than 36,000 companies use IBM’s Db2.

From a big data perspective, organizations are looking to run analytical processes on many different types of data. That said, business transactions are usually at the top of the list of the type of big data that executives want to analyze. And Db2 runs the transactions of many of the world’s largest businesses.

Craig S. Mullins will present a session on "The New World of Database Technologies" at Data Summit 2019 on  Tuesday, May 21, at 12 noon.

What else is Db2 optimized for?

CSM: It is not just transactions that drive big data. And Db2 is well-equipped to handle, manage, and optimize many disparate types of data, including unstructured and multimedia data, JSON, XML, and even temporal data. Db2 has also been optimized to support very high-speed processing for complex Db2 queries to support business-critical reporting and analytic workloads. The Db2 Analytics Accelerator for Db2 for z/OS and Db2 BLU for Db2 for LUW provide a hybrid transaction and analytic processing (HTAP) environment that drives out cost and complexity and enables analytics on transactional data as it is generated.

And finally, keep in mind that the new NoSQL database systems are not replacing relational systems in existing applications, but are augmenting the data processing capabilities of organizations implementing applications that are not traditional relational/SQL applications. So data management today is a world of polyglot persistence—the right database systems for the right applications—and Db2 is definitely a part of this world.

What is the purpose of this book?

CSM: It is for developers and programmers and developing applications—not database and system administration. The sole purpose of the book is to provide expert guidance on application development procedures, techniques, and philosophies. The book will educate developers on how to write good application code that will perform optimally. By following the principles in this book you should be able to write code that does not require significant remedial, after-the-fact modifications by DBAs and performance analysts.

The techniques in this book are important to incorporate into your development strategies, especially in a DevOps environment, where continuous integration and delivery of application change is required. The last thing you want to do is to deliver inefficient code to production quickly, right?

Who is it targeted at?

CSM: If you write code and access data in a Db2 database, then this book is for you. The book is for all Db2 professionals; it covers both Db2 for Linux, UNIX, and Windows—and Db2 for z/OS. When there are pertinent differences between the two it will be pointed out in the text. Readers should have basic SQL knowledge. Additionally, the book will not rehash material that is freely available in Db2 manuals that can be downloaded or read online. It is assumed that the reader has access to the Db2 manuals for their environment (Linux, UNIX, Windows, z/OS).

Why is database performance so critical now?

CSM: The performance of accessing and modifying data in the database has been important ever since the invention of the first database management system. Assuring optimal performance of applications is a significant ongoing operational challenge. Every database application, at its core, requires three components in order to operate: the system, the database and the application.

To deliver performance, we must be able to monitor and tune each of these components. This is easier said than done. Of the three, the aspect that causes most performance problems is the application code. As much as 80% of all database performance problems are caused by inefficient application code—and much of that is due to inefficient and improperly coded SQL.

What can happen?

CSM: One improper SQL change can cause an application to grind to a halt. Using the wrong index (or no index at all), inefficient access paths, bad optimizations, and more can cause problems. Quite frankly, basic SQL may be simple to learn and easy to start using, but using SQL effectively and efficiently is an art that takes years to master. This book offers guidance to make it easier to write efficient SQL.

What is new in this book that is not in other Db2 books?

CSM: Most other books focus on performance as a subset of the book, whereas this book is entirely devoted to the subject. And most other books focus on the topic of performance somewhat retroactively. By this I mean that they cover performance monitoring and tuning of existing applications instead of how to write applications to perform right from the start.

Don’t get me wrong, monitoring and tuning are necessary topics, but the more we can write better applications from the very beginning, by using the techniques in this book, we can save time and effort and build better Db2 applications that deliver business value, quickly and effectively.

To access the book, go to here



Newsletters

Subscribe to Big Data Quarterly E-Edition