“The database development can be built into DevOps!”

How does DevOps fit with database development? Eero Mattila, the principal systems consultant for information management for Quest Software, has a different picture in mind. In our interview from DevOpsCon 2018 in Berlin, Mattila explains to us what you need to be aware of in this field and which tools are absolutely necessary for database development and DevOps processes.

JAXenter: Hello Eero and thank you very much for taking the time to talk with us. So, your session at DevOpsCon is about DevOps in database application development. So, which special feature should you consider before deploying DevOps in this field?

Eero Mattila: DevOps is about speed and the standardization of processes. Databases are a special kind of challenge because they require a time-out for their applications while any structural changes take place.

Some applications can be replaced with a newer version in almost no time. On the other hand, a table cannot be structurally altered during a transaction.

JAXenter: What are the necessary requirements for a successful DevOps conversion?

Eero Mattila: In order to avoid such described gaps, all processes must be automated as good as possible.

Versioning is one of these aspects. So are automatized unit tests, code reviews, synchronization of data objects, and similar things. All these things must be integrated in a CI system.

JAXenter: Let’s assume that we are at a point right now where DevOps won’t stand in the way and all participants are on the same level – where do we go from there?

Eero Mattila: Becoming faster and more productive, with a higher quality of database applications.

All jokes aside, the developer checks all his changes to the code and tables at the version control (the VCS). The CI system finds the changes in the VCS and initiates further steps. Code review and unit tests will be applied automatically, the necessary SQL scripts are generated. Last but not least, a new build will be created or a specific timeframe for its creation will be provided.

If single tests should fail, the developers and/or the DBA will be informed. Time-intensive routine work, like code reviews unit testing, schematic comparisons and script generation are therefore completely automated. Now, developers can concentrate on their code and the DBAs can focus on the processing of their databases.

JAXenter: Which tools – and thereby software – helps with a successful conversion of DevOps field in these fields?

Eero Mattila: The first requirement is a versioning system for the data objects, like tables, procedures, functions, packages and so forth. The next thing necessary is a tool for automated unit tests, code review, SQL optimization and the synchronization of DB objects. Finally, there’s the extension to continuous integration for the creation of builds.

JAXenter: What’s your core message that everyone should take with them?

One response to ““The database development can be built into DevOps!””

Couldn’t agree more with our partners at Quest that database development should NOT be left out. Without an Agile process for the entire software stack, you don’t have DevOps. Industry leaders rely on TOAD to help developers produce high quality SQL and Datical to bring safety and automation to database deployments. With this combo, teams can really start to see faster, higher quality releases.

Eero Mattila is a Principal Systems Consultant in Information Management at Quest Software in Cologne. He has been working on relational databases since 1991; since 2002, he has focused on the topic of performance management. Eero Mattila regularly speaks at conferences of the German Oracle User Group (DOAG), the Professional Association for SQL Server (PASS), and the Toad User Conference (TUK).

Prior to joining Quest in 2005, Eero Mattila worked as a database administrator and developer at the German Bundestag and as a systems consultant at Oracle Germany.