2 Oracle GoldenGate Veridata Prerequisites and System Requirements
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, theJAVA_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:
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 Compare
Oracle GoldenGate Veridata supports the following databases for comparisons:
- Oracle, ADW, ATP, DBCS
- SQL Server
- Teradata
- BigData Hive
- DB2 for i, DB2 LUW, and DB2 z/OS
- Informix
- Non Stop (Enscribe and SQL/MP)
- Sybase Adaptive Server Enterprise (ASE)
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:
- Oracle, ADW, ATP, DBCS
- SQL Server
- Teradata
- DB2 for i, DB2 LUW, and DB2 z/OS
- Informix
- Sybase Adaptive Server Enterprise (ASE)
Oracle GoldenGate Veridata doesn't support the following databases for repair functionality, but supported by Oracle GoldenGate:
- Non Stop (Enscribe, SQL/MP)
- BigData Hive
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 |
---|---|
|
Windows |
|
HP-UX |
|
IBM AIX |
|
All other supported UNIX platforms |
2.5.3 Disk and Memory Requirements for the Agent Component
-
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, toGRANT 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 thesysdatabases
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
-
Create a user and password.
-
Specify
QUOTA UNLIMITED
on the user's default tablespace.
SQL Server
2.6.3.2 Required Environment Components for Oracle GoldenGate Veridata Server
Oracle
-
The database instance name
-
The
ORACLE_HOME
(if usingTNSNAMES
connection method) -
Default and temporary tablespaces for the repository (if you will be creating a new user for the server component during installation)
-
A login and password, if using an existing database user for the repository.
SQL Server
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
-
Google Chrome version 43
For more information, see Oracle Fusion Middleware System Requirements and Specifications.
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.