How could BinckBank give its developers an up-to-date dataset to test their code against, while avoiding the cost and effort of replicating its huge Oracle production databases into 13 test environments?
BinckBank uses IBM InfoSphere Optim to extract a representative subset of production data, including all the relevant rows from related tables, and load it into the test databases automatically.
90%reduction in Oracle database server and storage costs for test environments
Acceleratesreplication of production data, enabling weekly refreshes of test datasets
Improvestest quality by enabling developers to test against realistic production data
Business challenge story
Supporting innovation with efficient DevOps
As an online bank, BinckBank’s core IT systems do more than just support its business: they make the difference between success and failure. To maintain and grow its customer base, the bank must ensure that its online trading and asset management platforms are as intuitive, responsive and powerful as possible, and continuously enhance their capabilities to stay ahead of the competition.
For this reason, BinckBank invests heavily in technology innovation. It currently has 13 different development teams working on its core systems to deliver new functionalities and improve the online customer experience.
Frans Verduyn Lunel, Manager ICT Unix & DBA at BinckBank, explains some of the challenges of supporting such an extensive development landscape: “Most of our applications are built on top of four Oracle databases, which store information for the administration of more than 600,000 customer accounts, more than EUR 20 billion in assets under administration, approximately EUR 1.5 billion in assets under management, and 9.3 million transactions.
“The scale of these Oracle databases means that they are simply too large for us to replicate in our test environments. It would take several days to make a full copy of the data, and the impact on transactional performance would be unacceptable. Moreover, the cost of storing 13 extra full copies of the data would be significant, and we would need to invest in powerful servers to run the test databases efficiently.”
“Nevertheless, for our developers to test their code properly, they need a representative dataset to work with. We looked for an efficient, effective way to get them that data.”
Streamlined information integration and governanceGijs Logman, Database Administrator, says: “Instead of cloning the full production databases into our test environments, we decided to extract a much smaller subset of records from each database, which could be copied much more quickly.
“However, that is not as easy as it sounds. In a relational database such as Oracle, when you copy a record from one table, you also need to ensure it is referentially intact—which means that for any parent row, you also need to copy all of its related child rows. Otherwise your dataset will lack integrity and your test applications may not work properly. When you have a large, complex database with hundreds of tables, it’s almost impossible to select all the data you need manually. That’s why we decided to use InfoSphere Optim software from IBM.”
IBM InfoSphere Optim Test Data Management is a tool that allows database administrators to define a custom data model that maps both explicit and implicit relationships in a source database, and set sophisticated business rules to select an appropriate subset of records from it.
The solution then traverses the database schema and extracts all the appropriate records, together with their foreign key relationships and any other related data specified in the Optim data model—ensuring that each business object is referentially intact. Once the solution has been configured, it can be scheduled to run automatically, with no need for further manual intervention from the database team.
Frans Verduyn Lunel comments: “We started out by setting Optim to select every hundredth record in our customer account database, but over time we have begun to use it in more sophisticated ways. For example, we can specify that we want customers who have more than a certain number of transactions, or who have been active within a particular date range. The ability to add selection criteria to the data model is very powerful, and it is based on SQL syntax so it’s easy for most database administrators to use.”
Gijs Logman adds: “We’ve been using Optim for ten years with our Oracle databases, and we have never experienced any problems with it. It’s very reliable and we’re completely confident in the integrity of the datasets it generates.”
Giving developers the data they needThanks to the IBM solution, BinckBank is now able to give its development teams fresh copies of a realistic subset of production data on a weekly basis. The process runs automatically over the weekend, and in less than a day, all 13 test environments and 52 Oracle test databases are seamlessly updated, with no need for manual intervention from the DBA team.
Frans Verduyn Lunel comments: “We’re able to provide a dataset that has very similar characteristics to our production data, but is only ten percent of the size. That means we require 90 percent less storage capacity in each of our test environments, and we don’t need such powerful Oracle database servers—so the cost savings are very significant.”
Gijs Logman says: “Refreshing the test environment every week means that our developers always have realistic, up-to-date data to test their code against. This would be impossible without a tool like InfoSphere Optim, because we would never be able to take a full copy of the production databases within the weekend maintenance window, and creating a subset manually would be extremely time-consuming and difficult.”
Frans Verduyn Lunel concludes: “Above all, Optim gives us confidence that our test datasets have complete referential integrity, so the testing process runs smoothly. If we identify a defect in testing, we know it’s the code, not the data that is at fault. This helps to maintain high levels of quality and speed in our development process, and deliver innovative products and features to our customers ahead of the competition.”
BinckBank is an online bank for investors that has a market-leading position in the Netherlands and Belgium, is the third-largest online bank in France, and also has significant operations in Italy. As an online broker, BinckBank offers fast and low-cost access to all major financial markets worldwide, and supports its customers with online asset management services and savings accounts. It employs more than 600 people and its market capitalization at year-end 2015 was approximately EUR 500 million.
Take the next step
IBM Analytics offers one of the world's deepest and broadest analytics platform, domain and industry solutions that deliver new value to businesses, governments and individuals. For more information about how IBM Analytics helps to transform industries and professions with data, visit ibm.com/analytics. Follow us on Twitter at @IBMAnalytics, on our blog at ibmbigdatahub.com and join the conversation #IBMAnalytics.
View more client stories or learn more about IBM Analytics