2 Oracle GoldenGate Veridata Prerequisites and System Requirements

Before you begin the installation, find out the minimum system and network requirements and what pre-installation tasks you must first complete.

This chapter includes the following sections:

2.1 General Information

Oracle GoldenGate Veridata does not require an installation of the Oracle GoldenGate replication software. If you do use that software, install Oracle GoldenGate Veridata in a different location.

2.2 Prerequisites for Installing Oracle GoldenGate Veridata

This section describes the prerequisites you must meet before you can successfully install and configure Oracle GoldenGate Veridata. The following sections explain the prerequisites:

2.2.1 Verifying Certification and System Requirements

Make sure that you are installing your product on a supported hardware or software configuration. For more information, see the certification document for your release on the Oracle Fusion Middleware Supported System Configurations page.

Oracle has tested and verified the performance of your product on all certified systems and environments; whenever new certifications occur, they are added to the proper certification document right away. New certifications can occur at any time, and for this reason the certification documents are kept outside of the documentation libraries and are available on Oracle Technology Network.

2.2.2 Install JDK on the Target Machine

Installation of a supported JDK is required for the Oracle GoldenGate Veridata installation.

DB2 for i

DB2 for i 6.# and 5.# support only Java 6 though Java 7 is recommended where it is possible.

All Other Certified Databases

Install JDK 1.8.0_101 or higher on the machine where you run Veridata instance.

For more information about installing and to download the product, go to Java SE Downloads web site:

http://www.oracle.com/technetwork/java/javase/downloads/index.html

You must set the JAVA_HOME and PATH environment variables with the JDK directory path.

Note:

On Windows, the JAVA_HOME must be set to a directory path that does not contain spaces.

2.2.3 Install Oracle WebLogic Server

After installing the certified JDK for your operating system, use the Oracle Fusion Middleware 12.2.1.2.0 Infrastructure installer to install Oracle WebLogic Server 12.2.1.2 and the Oracle Java Required Files (JRF) Infrastructure services.

You need to download the installer fmw_version_infrastructure.jar, where WLS_version represents the supported WebLogic Server version), which you can obtain from:

Note:

The Oracle WebLogic Server version is not forward compatible, which means that it doesn't work with Oracle GoldenGate Monitor 12.2.1.3 and future versions.

http://www.oracle.com/technetwork/developer-tools/adf/downloads/index.html

or from Oracle Software Delivery Cloud at:

https://edelivery.oracle.com/

For more details on obtaining Oracle Fusion Middleware Infrastructure installer, see Obtaining the Infrastructure Distribution in the Oracle Fusion Middleware Installing and Configuring the Oracle Fusion Middleware Infrastructure.

For details on installing Oracle WebLogic Server and JRF, see Installing the Infrastructure Software in the Oracle Fusion Middleware Installing and Configuring the Oracle Fusion Middleware Infrastructure Guide.

2.2.4 Install a Certified Database for Configuring Veridata Repository

If you do not already have a database where you can install the schemas, you must install and configure a certified database. Oracle GoldenGate Veridata supports the following databases:

  • Oracle

  • Microsoft SQL Server

See Repository Requirements for the Server Component for more details.

2.3 Supported Databases for Comparison

Oracle GoldenGate Veridata supports the following databases for comparisons:

  • DB2 for i, DB2 LUW, and DB2 z/OS

  • Enscribe

  • Informix

  • NonStop SQL/MP

  • Oracle

  • SQL Server

  • Sybase Adaptive Server Enterprise (ASE)

  • Teradata

  • Hive

Through its support website, Oracle provides late-breaking updates, discussions, and best practices about pre-upgrade requirements, upgrade processes, post-upgrade, compatibility, and interoperability. To find the latest information about Oracle GoldenGate Veridata release, including the list of certified database versions and operating systems, go to My Oracle Support at http://support.oracle.com.

2.4 Supported/Unsupported Databases for Repair

Oracle GoldenGate Veridata supports the following databases for repair functionality:

  • DB2 for i, DB2 LUW, and DB2 z/OS

  • Informix

  • Oracle

  • SQL Server

  • Sybase Adaptive Server Enterprise (ASE)

  • Teradata

Oracle GoldenGate Veridata doesn't support the following databases for repair functionality, but supported by Oracle GoldenGate:

  • Non Stop (Enscribe, SQL/MP, SQL/MX)

  • Big Data

Oracle provides late-breaking updates, discussions, and best practices about pre-upgrade requirements, upgrade processes, post-upgrade, compatibility, repair, and interoperability. For information about the latest release of Oracle GoldenGate Veridata, including the list of certified database versions and operating systems, go to My Oracle Support at http://support.oracle.com. For the support/certification matrix for the supported versions of databases at Oracle Support website or at http://www.oracle.com/technetwork/middleware/ias/downloads/fusion-certification-100350.html.

2.5 Oracle GoldenGate Veridata Agent System Requirements

One Oracle GoldenGate Veridata Agent must be installed for each database instance that contains data that is to be compared. At minimum, therefore, you will install two agents — one to retrieve source rows and one to retrieve target rows (unless you are comparing data within the same database instance). One agent can retrieve rows from multiple databases or schemas within a given database instance. However, one agent cannot retrieve rows from different database instances.

Comparing Multi-Byte Data

The following considerations apply when you are comparing tables with multibyte data:

  • A Java agent should be used for all platforms except NonStop, which has only a C-agent.

  • The Java agent uses the UTF-8 character for comparing character data. Out-of-sync data is written to the report file using the UTF-8 character set.

  • The Oracle GoldenGate Veridata Oracle C-Agent can be used for comparisons between Oracle databases where the source and target use the same character set and the host system uses the same byte order. An Oracle C-Agent cannot be used in a comparison with a Java agent. Character fields that contain characters that are not valid UTF-8 characters are displayed as hexadecimal in the out-of-sync reports.

2.5.1 Oracle GoldenGate Veridata Java Agent

Oracle GoldenGate Veridata provides a Java-based agent for the following databases:

  • DB2 for i, DB2 LUW, and DB2 z/OS

  • Oracle

  • SQL Server

  • Sybase ASE

  • Teradata

  • Informix

The Java agent connects to the database by using JDBC (Java Database Connectivity). The Java agent enables Oracle GoldenGate Veridata to support comparisons in a heterogeneous environment, where different kinds of databases contain similar, but not identical data types. With a Java agent, one executable supports many operating systems and databases.

You can install the Java agent on the same system as the one where the database is running, or you can install it on a different system, such as the one where Oracle GoldenGate Veridata Server is installed. When considering where to install the agent, weigh the additional and significant use of network bandwidth that will be incurred if the agent is remote from the database, versus the savings in processing resources on the database host when an agent is not running there.

2.5.1.1 Environment Requirements to Use a Java Agent

Windows, UNIX and Linux, All Supported Databases

A Java environment is required on all platforms. Download and install either the Java Developer Kit (JDK) or the Java Runtime Environment (JRE) from the Oracle website. Java version 1.8_101 or higher is preferred because of the performance improvements for Oracle GoldenGate Veridata.

DB2

A TCP/IP port must be configured and active.

Oracle

The listener must be configured and running.

SQL Server

A static TCP/IP port must be configured and enabled.

Sybase

Know the ASE listen port.

Teradata

  • Know the host name and port number of the database.

  • Download the appropriate JDBC driver from the database vendor's website before installing the Java agent. You will be prompted for the location during the installation steps in this guide.

2.5.2 Oracle GoldenGate Veridata C-Agent

Oracle GoldenGate Veridata also provides a C-code based agent for the following databases:

  • The C-agent is required for NonStop SQL/MP and Enscribe databases running on the NonStop platform. This agent can be installed in a Guardian environment.

  • The C-agent is supported for the Oracle database, but as of release 11.2.1.0.0, it will no longer be enhanced.

  • You must install the C-agent on the same system as the one that hosts the database.

  • For Oracle, a dynamically linked C-agent is available. If you use this agent, you must set the following environment variables:

Environment Variables for Dynamically Linked C-Agents

Variable Operating System

PATH=Oracle_libraries

Windows

SHLIB_PATH=Oracle_libraries

HP-UX

LIBPATH=Oracle_libraries

IBM AIX

LD_LIBRARY_PATH=Oracle_libraries

All other supported UNIX platforms

2.5.3 Disk and Memory Requirements for the Agent Component

  • The agent requires at least 1GB of RAM.

  • The disk space requirements for the Oracle GoldenGate Veridata Agent vary by platform, but up to 200 MB may be required. On UNIX and Linux, additional space might be required to install the Java environment (if not already installed).

  • The main consumers of processing resources are the row sorting operations that are required during a comparison. To improve performance, you might need to increase the temporary memory space in the database if the columns that are being used as keys are not a native unique index or primary key. You specify the columns to use as keys when configuring Oracle GoldenGate Veridata.

  • Using server-side sorting instead of database sorting might reduce the load on the database server and improve comparison performance, depending on the number of rows, the indexes defined, the keys used, and the way the database is tuned. See Disk and Memory Requirements for the Server Component.

2.5.4 Database Privileges for the Agent Component

Oracle GoldenGate Veridata Agent makes use of a database login, which must be created before you can run comparisons. You provide the login and password when you configure connection objects in the Oracle GoldenGate Veridata Web interface. The following are the database privileges that are required for the database user.

Required database privileges for Oracle GoldenGate Veridata Agent

DB2

  • SELECT privileges on the tables that will be compared.

Oracle

  • GRANT CONNECT

  • GRANT SELECT on the tables to be compared. It is recommended, but not necessary, to GRANT SELECT ANY TABLE.

  • SELECT_CATALOG_ROLE

NonStop SQL/MP and Enscribe

  • Read access to the SQL/MP system catalog (for queries to CATALOGS table).

  • Read access to the SQL/MP catalogs that you want Oracle GoldenGate Veridata to use.

  • Read access to the DDL dictionaries that you want Oracle GoldenGate Veridata to use.

  • Read access to the Enscribe and SQL/MP tables that will be compared.

  • Read, write, create, purge permissions for the Oracle GoldenGate Veridata report and trace files, and access to the sub volumes where they are installed.

SQL Server

  • db_datareader or the equivalent on the tables to be compared.

  • VIEW DEFINITION in the databases to be compared.

  • The database must allow SQL Server authentication.

Sybase ASE

  • Access to the databases to be compared.

  • SELECT privileges on the tables to be compared.

  • SELECT privileges on the sysdatabases system table in the master database to view the list of databases available in the server.

Teradata

  • SELECT privileges on the tables to be compared.

Required Database Privileges for Using the Repair Feature

For all databases, the database user must have the UPDATE, INSERT, and DELETE privileges on the tables to be repaired.

For Sybase database, if the table has triggers and suppression of triggers enabled, the database user must have the replication_role privilege.

For SQL Server database, If the table being repaired has 'identity columns', the Repair User specified must be either the table owner, or should have ALTER permission on the table that is being repaired.

2.6 Oracle GoldenGate Veridata Server System Requirements

This section describes the installation location, additional programs, disk, memory, and repository requirements for Oracle GoldenGate Veridata Server.

2.6.1 Location for the Server Component

The server and web user interface components are installed from one installation program on Windows, UNIX, and Linux systems. The installer includes all files that are needed to run those programs. One installation can be used for comparisons among all of the supported databases, but multiple installations can be used as needed.

Do not install the server and web user interface components on a NonStop system. To use Oracle GoldenGate Veridata for NonStop databases:

  • Install the server and web user interface components on a supported Windows, UNIX, or Linux system.

  • Make certain that this system has access over high-speed network connections to the NonStop systems.

2.6.2 Disk and Memory Requirements for the Server Component

The server component uses about 200 MB of fixed virtual memory for basic tasks. The remaining virtual memory is used for comparisons. The main consumers of processing resources on the Oracle GoldenGate Veridata machine are the row sorting operations of the initial comparison step when using server-side sorting.

Enough combined disk space and virtual memory is needed to store all of the rows that are sent for comparison from the source and target systems. To estimate the amount of memory per row:

((number of cols in key + 1) * 4) + 16 + (comparison width of a key col)

Where:

comparison width of a key col depends on the comparison format that is selected by Oracle GoldenGate Veridata (or a user override) to use for a comparison.

Comparison format data sizes:

Comparison Format Data Size

Numbers

One byte for each significant digit. Leading zeros and trailing zeros after the decimal point (such as the right most zeros in 1234.500) are not counted.

Timestamp

19 to 32 bytes depending on the fractional precision.

Date

10 bytes.

Time

8 to 18 bytes depending on the fractional precision.

String

1 to 4 bytes per character for the UTF-8 encoding of the Java agent. The NonStop agent and the Oracle C agent use the database native character set.

Binary

The bytes as stored in the database.

For example, the number 109998877, if compared as a decimal float, would require:

((1 + 1) * 4) + 16 + 9 = 33 bytes of memory for this row

Note:

This assumes that all non-key columns are compared by using a hash, not literally. More space is needed for literal comparisons

Oracle GoldenGate Veridata uses an external merge sort to sort the data. As data is received from the agent, the rows are sorted in memory. When a memory buffer is full, the sorted rows are written to disk.

In order to sort the data, the sort process matches the initial data set size for temporary storage space. The required amount of temporary space is determined by the number of rows, the row size, and the amount of available sort memory. The following cases illustrate the different modes of the sort depending on the available resources.

  • In-Memory Sort: This sorts the data entirely in memory and is the fastest method, but the memory requirements may exceed what is available. The sort memory must be approximately 2.5 times larger than the size of the data set.

  • One Disk Pass: This sorts data and writes to the disk only once. It requires sort disk space equal to the size of the data set. This process is almost as fast as the in-memory sort and the memory requirements are lower. In general the Oracle GoldenGate Veridata server can write the rows to disk faster than the agent can read them from the database.

  • Two Disk Passes: This sorts and writes to the disk twice, requiring sort disk space twice the size of the data set. Although the disk requirement is greater, very large data sets can be sorted with a reasonable amount of memory.

  • Three or More Disk Passes: After all of the rows have been received from the agent, additional sorting may be required before the rows are ready for the final write to disk. If it is necessary to access the disk three or more times, the required sort space will be three or more times the data set size. This is slow and should be avoided.

Beyond this allocation, memory is required for storing rows during the second step of processing, the confirmation step. This can be up to 20 MB if you expect a large number of rows to require confirmation, as is usually the case when replication latency is very high. These rows are staged in the main memory before they are confirmed.

On 64-bit systems, more memory can be addressed, so more data can be stored in main memory instead of on slower disk devices. The memory that is used in the initial comparison step is not necessarily all released at once to be available for the confirmation step. Consequently, some memory will be shared between processes. When the sort cannot hold all of the rows in memory, it uses disk storage.

When deciding how much memory to allocate, be aware of the following ways that you can manage it with parameter settings within the Oracle GoldenGate Veridata application:

  • The temporary space should be located on a reasonably fast file system. A network file system located on a remote server may slow the comparison processing.

  • You can increase disk I/O performance by specifying multiple temporary directories with profile settings. For maximum benefit, put the directories on different physical disks.

  • You can use a profile setting to terminate the confirmation step after a given number of out-of-sync rows, to work around resource limitations.

  • Additional memory properties can be controlled with server parameters. See Oracle GoldenGate Veridata Server Configuration Parameters in Administering Oracle GoldenGate Veridata.

2.6.3 Repository Requirements for the Server Component

Oracle GoldenGate Veridata Server requires a database to serve as a repository for objects that store the information and environment preferences that users create when using Oracle GoldenGate Veridata Web interface.

Use the Repository Creation Utility (RCU) to create the repository. See Creating the Oracle GoldenGate Veridata Repository Schema.

You can use the following databases as a repository:

  • Oracle

  • SQL Server

2.6.3.1 Required Database Privileges for Oracle GoldenGate Veridata Server

Oracle

  1. Create a user and password.

  2. Specify QUOTA UNLIMITED on the user's default tablespace.

SQL Server

  1. Create a database and login that is a user of the database where you will be installing the repository.
  2. Grant this login sufficient privileges to perform the following operations:
    • CONNECT to the database

    • CREATE, ALTER, DROP TABLE in the database

    • CREATE and DROP INDEX in the database

    • INSERT, UPDATE, DELETE from tables in the database

    • SELECT from tables in the database

    • ALTER SCHEMA of the login's default schema

2.6.3.2 Required Environment Components for Oracle GoldenGate Veridata Server

Oracle

  1. The database instance name

  2. The ORACLE_HOME (if using TNSNAMES connection method)

  3. Default and temporary tablespaces for the repository (if you will be creating a new user for the server component during installation)

  4. A login and password, if using an existing database user for the repository.

SQL Server

  1. The SQL Server instance must be configured to use a static port number. This port is stored in a configuration file so that it can be referenced to make JDBC connections to the database.
  2. A login and password (or integrated authentication), if using an existing database user for the repository.

2.7 Oracle GoldenGate Veridata Web User Interface Requirements

This section describes the Java package, browsers, screen resolution, security, and ports recommended or required for the Oracle GoldenGate Web User Interface.

2.7.1 Location for the Web Component

See Location for the Server Component. One installer program installs both Oracle GoldenGate Veridata Web Server component and Oracle GoldenGate Veridata Web User Interface.

2.7.2 Java Environment for the Web User Interface

JDK 1.8.0_101 or higher is required for the Veridata Web User Interface installation.

Note:

The Veridata Web User Interface cannot be installed on DB2 for i because it does not support JDK 1.7.

2.7.3 Supported Browsers for the Web User Interface

  • Microsoft Internet Explorer version 11 or higher

  • Mozilla Firefox version 38 or higher

  • Google Chrome version 43

  • Apple Safari version 8 or higher

2.7.4 Recommended Screen Resolution for the Web User Interface

Minimum of 1024 x 768

2.7.5 Port Numbers for the Web User Interface

  • The Oracle GoldenGate Veridata Web application interacts with Oracle WebLogic Server. Oracle WebLogic Server is installed with Oracle GoldenGate Veridata Server on default ports. You can change the port numbers if needed.

  • Oracle GoldenGate Veridata Web makes use of the default port 8830.

2.7.6 Security for the Web User Interface

The web server provides user security roles that control access to certain pages of the Oracle GoldenGate Veridata Web interface. To create users and define user roles, use the Oracle WebLogic Server Administration Console. For more information, see Securing Access to Oracle GoldenGate Veridata by Defining User Roles in Administering Oracle GoldenGate Veridata.

2.8 SQL/MP Data Exclusions

On SQL/MP tables with clustered keys, the right-most portion of the primary key is a timestamp added by the file system. For compare pairs composed of such tables, the timestamp will be different on the source and target systems. As a result, it must be excluded from the comparison, because Oracle GoldenGate Veridata compares keys to ensure that the correct rows are compared.

If, after the timestamp portion of a key is eliminated, the remaining key columns do not produce a unique key value, then those tables must have a unique index or other columns that can be specified to create a unique value. Otherwise, they cannot be compared with Oracle GoldenGate Veridata.