Corporations maintain large amounts of data in Db2 databases and it is normal to find several Db2 subsystems for production, test and development. Refreshing testbeds from production systems is a vital part of the development, testing and quality assurance life cycle. Obtaining relevant test data requires copying from one Db2 subsystem to another. The window of opportunity for copying or migrating Db2 data is constantly decreasing as the demands from 24 x 7 operations increase. Limited resources and shrinking batch windows make data delivery to QA difficult.

BCV5 copies, refreshes and replicates Db2 objects quickly and efficiently. BCV5 copies Db2 tablespaces and indexes between different Db2 subsystems, or within the same subsystem. It comes with a built-in copy tool that works directly on VSAM level and is much faster than UNLOAD/LOAD. When measured against conventional copying methods, BCV5 saves approximately 90% on elapsed copy time as well as resource consumption. One customer even cut their copy process time down from ten hours to 45 minutes by switching from UNLOAD/LOAD to the BCV5.

Copying Db2 page sets directly from the source to the target means that copy jobs complete in minutes rather than hours. DBAs are no longer forced to wait for weekend time slots and are able to run copy jobs on regular weekday shifts. Test data on demand is a dream come true for QA, development and test staff. BCV5 significantly cuts down runtime and cost.

BCV5 not only copies the physical Db2 data fast, it also takes care of all the structures. This includes all the basic objects – your databases, tablespaces, tables and indexes – and also DDL features such as views, triggers, aliases, synonyms, constraints, and many more. If your target objects already exist, it will check them for compatibility.

Thus, BCV5 reduces CPU consumption by 90% and requires less prep work by your staff.


Flexible Selection of Image Copies
BCV5 allows you to copy from either current tablespaces or image copies. You can use the most recent image copy, or an older image copy chosen by generation number, timestamp, or dataset name pattern. BCV5 automatically identifies the correct image copy datasets and uses them in the copy process. It also detects if your indexes have image copies or not, and only rebuilds the target indexes if it cannot copy them directly.

RUNSTATS Cost Time and Money
Db2 requires valid RUNSTATS information to find efficient access paths, and real time statistics (RTS) to calculate the sizes of sort work data sets. BCV5 copies these statistics directly from the source environment into the target. There is no need for a separate RUNSTATS job or to do a REORG in order to collect an RTS baseline.

Why is BCV5 so fast?
BCV5 owes its unmatched perfor-mance to its proprietary Db2 copying tool. While the UNLOAD/LOAD utilities slowly extract single rows one at a time, BCV5 copies the complete VSAM linear data sets to the target and replaces the Db2-internal OBIDs with the correct target values. BCV5 also uses parallel processing and automatic workload balancing to boost the overall copy speed. The built-in copy tool of BCV5 also copies LOB and XML data at the same rate as regular tablespaces. This all adds up to make BCV5 ten times faster than UNLOAD/LOAD.

How can BCV5 save 90% on CPU Time?
Row-wise processing consumes many more CPU cycles than VSAM copying. Clients report that BCV5 only uses about one-tenth of the service units that UNLOAD/LOAD based processes typically use. BCV5 copies data directly from the source pageset to the target pageset. This also works if the source and target are located on two different LPARs or even two different CECs since BCV5 gives you the option to copy data over a network connection. In addition, BCV5 also copies indexes directly, instead of rebuilding them each time, like the LOAD utility does.

Making the Copy Process Easy
A fast and efficient copy tool is only part of the solution, however. The BCV5 user interface is intuitive and makes it easy to set up copy processes, whether you are a seasoned DBA, an application developer, or a member of QA and testing. Those who prefer the PC environment can use BCV5’s graphical user interface. And, of course, on-line help is always one click away.

Who needs BCV5?
Anyone involved in budgeting, surely appreciates cost savings. BCV5 allows you to do more with your existing hardware, thus avoiding expensive machine upgrades and the associated increase in software cost. It can also help you lower your four-hour rolling average, which often peaks during long running LOAD jobs. Application development teams, QA groups, technical support staff, auditors and, of course, end users need the data in order to do their jobs. Being able to get current test data fast helps improve the quality of your QA processes. This is something that benefits your entire organization. On an operational level, BCV5 relieves the DBAs from the time-consuming burden of refreshing test and development environments since it provides an unmatched degree of automation. This allows them to focus on the mission critical tasks in your production environment instead.

A Quick View of BCV5
BCV5 is a faster, more efficient and manageable way to copy Db2 data. It automatically generates and executes jobs that will: Extract object definitions from the Db2 catalog of the source system; transfer the definitions to the target system, rename the objects as specified and apply them in the target Db2 system (CREATE, or DROP and CREATE); compare the source definitions with existing target objects for compatibility; copy page sets from source to target Db2; start the target objects for end user access.

BCV5 comes with two user interfaces, ISPF and workstation GUI, both pro-vide identical functionality. To create a BCV5 copy task, select the source and target Db2 subsystems (which may also be identical), and the objects
to be copied. Then define if you would like to copy from the current tablespaces or from image copies, and how to rename the objects during the copy process. You can also specify if RUNSTATS and RTS

information should be transferred to the target Db2, and if you would like to copy auxiliary objects, such as views, aliases, synonyms, labels, comments, constraints, or GRANTs. Once a copy task is defined, it can be executed at any time, either manually or using a job scheduler for periodic execution.