# Infosys Whitepaper 
Title: Leveraging Database Virtualization for Test Data Management 
Author: infosys Limited 
Format: PDF 1.7 

---

  Page: 1 / 8  

---

 WHITE PAPER LEVERAGING DATABASE  VIRTUALIZATION FOR TEST DATA  MANAGEMENT Vikas Dewangan, Senior Technology Architect,  Infosys Abstract Database virtualization is an emerging trend in test data  management (TDM) and is all set to bring about a revolution in  the provisioning of non-production data. These tools offer efficient  virtual cloning of production databases for software application  development and testing, without having to physically replicate the  entire database. Coupled with powerful features like taking point-in- time snapshots, write backs to the source database, and rolling back  changes; these tools have the potential to bring in significant cost  savings and efficiency improvements. In this paper, we explore the  concept of database virtualization, industry tool features, and how  these tools can be leveraged to improve TDM.<|endoftext|>

---

  Page: 2 / 8  

---

 Introduction Virtualization technologies have been  around for a while and were first  introduced in the era of mainframe  systems. However, it is only in the recent  past, due to advances in technology,  that virtualization has been gaining  popularity. The term ‘virtualization’ refers  to encapsulating a particular hardware  or software resource so that multiple  systems can make use of it. By means of  virtualization, hardware resources can  be utilized more effectively through  consolidation, resulting in significant cost  savings. Further, virtualization leads to  savings in hardware costs; thus resulting  in decreased energy consumption and  increased green technology. Given these  advantages, virtualization will continue  to see a trend of increasing adoption in  the years to come. There are a number  of popular virtualization technologies  today, such as server, storage, database  and desktop virtualization. Out of these,  database virtualization  is the focus of this  paper.<|endoftext|>The field of test data management (TDM)  concerns itself with provisioning of  production-like data in non-production  environments, such as those used for  application development and testing  and is thus a related area. Database  virtualization is an emerging trend in TDM,  with the potential of offering significant  cost advantages. In this paper we will  explore how database virtualization can  be optimally leveraged to increase TDM  effectiveness.<|endoftext|>External Document © 2018 Infosys Limited 

---

  Page: 3 / 8  

---

 Traditional approach  The common approach taken by most  enterprises today is to have physical copies  of the production database in each non- production environment. Non-production  environments include environments for  software development, testing, and training.<|endoftext|>It is not uncommon to find even 10 – 12  such production copies in most enterprises.  These physical copies may contain  either an entire copy or a subset of the  production database. With each additional  environment needed there is an increase  in physical storage requirements, database  administration needs and the time required  to setup these databases. Refreshing these  non-production databases is a time- consuming and costly exercise. Often, due to  contentions, the availability of development  and test environments becomes a  bottleneck in the software development  life cycle and can lead to increased overall  turnaround times. In summary, the  traditional approach is complex and costly.<|endoftext|>Database virtualization – a  better approach With the coming of age of database  virtualization, a gamut of opportunities  for optimization of non-production  environments has opened up. Several  enterprises have started taking cognizance  of this trend and are actively exploring how  best they can leverage this technology for  deriving maximum business value.  So what exactly is database virtualization  and how does it work? In the case of a  database virtualization-based approach,  the virtualization engine creates multiple  virtual clones of the production database.  These virtual copies of the database can  be utilized in the same way as the actual  physical copies. They will be transparent  to the applications in these environments  and will continue to function with these  virtual database instances in exactly the  same manner as they did with the physical  non-production databases. There is no need  to create subsets of production data and  entire datasets can be made available to the  relevant applications.<|endoftext|>Presented below is a simplified view of the  traditional data refresh process for non- production environments compared with a  database virtualization-based approach. It  should be noted that in some cases there  may be an intermediate database between  the production and non-production  environments, which may be used for  masking or sub-setting purposes.<|endoftext|>Test Environment 2  Test Environment 3 Dev Environment 1 Production  Database Virtual Clone 2 Virtual Clone 3 Virtual Clone 1 Traditional ETL approach for non-production environments Database virtualization approach for non-production environments Database ETL / sub-settingutility Involves creating physical copies of the production database Production Database Database virtualization engine Involves creating virtual clones of the production database Key features of database  virtualization tools Today, there are a number of vendors  offering products in the database  virtualization space. Let us take a look at  some of the important features and benefits  that these products (though not all) provide: 1.  Provision database clones: The  functionality of rapidly provisioning  virtual database clones is at the heart of  all database virtualization tools. These  virtual clones can typically be created in  a matter of hours, as opposed to physical  databases, which may take up to several  days to setup and load data  2.  Resource segregation: Each virtual  database instance is a private copy and  is unaffected by changes made to other  virtual clones (‘Ring fencing’)  3.  Lower resource utilization: Database  virtualization tools implement highly- optimized compression algorithms to  minimize the in-memory footprint of  each cloned database instance. Usually  data that is duplicate across clones is  maintained as a common block across  instances, while modified data is stored  privately for each clone, leading to  optimization of the memory footprint 4.  Ease of refresh: Unlike refreshing  physical databases, refreshing an  existing virtual database clone with  the latest production data is relatively  simple and straightforward. The clones  being in-memory instances, the refresh  process is much faster and efficient  as there are no physical writes. Most  database virtualization engines will  refresh the virtual instance with changes  only, rather than purging and refreshing  the entire database  5.  Point-in-time snapshots: Often, in  test environments, there is a need to  take snapshots of multiple databases  at the same point in time to ensure  consistency of the test data. In the  traditional approach, extracting data  from multiple databases seldom  happens simultaneously and there  is some time difference between  data extraction processes. This leads  to referential integrity issues across  databases (as several transactions  may have taken place during this time  difference), which have to be fixed in  non-production environments. With  database virtualization engines, it  is possible to obtain a virtual clone  of each source database against a  specific point-in-time. This results in  maintaining the referential integrity  and consistency of data across the  provisioned virtual database instances.<|endoftext|>External Document © 2018 Infosys Limited 

---

  Page: 4 / 8  

---

 6.  Synchronization with source  database: The updates made to the  virtual database clones can be written  back to the intermediate database  if required. For example, this might  be required if the data in the virtual  clone has been augmented for testing  purposes and a need arises to replicate  this to other test environments. This  feature can also be used to help  maintain a ‘gold copy’ of the database.<|endoftext|>7.  Self-service: Virtualization tools,  once setup, are easy to use and can  reduce the dependency on database  administrators (DBAs) when compared  to the traditional approach where the  physical copy of the database needs  to be refreshed. Further, the TDM team  as well as developers and testers, can  be provided the facility to obtain, via  self-service, virtual copies of the given  source databases.<|endoftext|>8.  Roll back to a previous state:  Most database virtualization tools  provide a feature for rolling back the  database state to a previous date. This  is especially useful for testing teams.  Often, test data gets corrupted or  changed after a test cycle. By using the  roll back feature, the test data can be  restored to a previous consistent state  to enable another round of testing.<|endoftext|>9.  Roll forward: After rolling back, some  database virtualization tools provide  the facility to roll forward, if required,  to a specified date in the database  timeline.<|endoftext|>10.  Ease of administration: Database  virtualization products offer  centralization of all administrative tasks  leading to ease of administration. There  is no need to account for differences  in environment configurations in each  non-production environment where  the target database is to be deployed.