User Guide > Push-Based Incremental Caching > Requirements for Push-Based Incremental Caching > Installing and Configuring Oracle GoldenGate
 
Installing and Configuring Oracle GoldenGate
GoldenGate monitors the Oracle tables for changes, and sends change notification messages to the TIBCO EMS queue so that dependent queries can be updated, and subscribed clients can be notified when data table changes might impact their view.
Access to your Oracle GoldenGate server depends on your implementation environment, and it might require use of an SSH utility like PuTTY or WinSCP. The server address, login, password, and port used are all environment- and implementation-dependent. In the example scripts, parameter files, and code given, the GoldenGate installation directory, $GGHOME, is /opt/oracle/ggs/, but that is configurable.
The three *.prm file parameters, GETUPDATEBEFORES, NOCOMPRESSUPDATES, and NOCOMPRESSDELETES, must be included, because these settings control the format of the change notification messages so that they are sent in the format expected by TDV.
If any of the parameters are omitted, then the message content and message format might be malformed, and all incrementally maintained caches might be marked as invalid to prevent use of bad data. Malformed change messaging from the GoldenGate instance can force the Change Management Service on the Central Event Server to shut down, so that the system can be corrected prior to end-use.
Most of the messaging errors result in invalidation of the caches and termination of CMS until the messaging can be corrected. Error messages are recorded in the cs_server.log.
To configure GoldenGate
1. Install GoldenGate co-located with the Oracle data source that is to be monitored. Refer to the GoldenGate documents for a description of the requirements and installation considerations.
2. Copy the composite_cdc.jar file from the TDV installation directory to the directory:
<$GoldenGateHome>/GGIEJ_304/javaue/resources/lib
 
The TDV CDC JAR inserts a header into the GoldenGate messages and includes the SCN value for the transaction classpath of the Java UE.
3. Log in to the Oracle GoldenGate server and navigate to: $GGHOME/dirprm.
4. Using the GGSCI command line utility, create an EXTRACT group.
GGSCI (comp-name)
1> ADD EXTRACT <ExtractGroupName>, TRANLOG, BEGIN NOW
 
The string <ExtractGroupName> cannot be more than eight characters.
5. Create as many extracts as required for the monitoring of data source tables. Each extract is run as a separate process that can be set to monitor a different set of tables. Groups of extracts can be started and stopped from an .obey file or by a batch or shell script collectively. See the GoldenGate Administrator Guide for details.
6. Extract a trail file by entering the following at the GGSCI command prompt:
GGSCI (comp-name)
2> ADD EXTTRAIL <C:\sub-dir\…\$GGHOME\dirdat\XX>, EXTRACT <ExtractGroupName>
 
XX is the two-character name of the exttrail filename group. All trail files have this prefix with a six-digit incrementing numeral, and they are placed in the $GGHOME/dirdat directory. The GGSCI utility creates a new exttrail and an extract parameter file. This file defines the table resources for monitoring and extraction.
7. Edit the <ExtractGroupName>.prm parameter file, using a text editor, with the following command:
GGSCI (comp-name)
3> EDIT PARAMS <ExtractGroupName>
 
8. Save the parameter file in the /dirprm subdirectory.
Example Parameter File
In this example:
EXTGROUP is the <ExtractGroupName>;
EG is the two character name of the EXTTRAIL file name group
TRANLOGOPTIONS controls transaction log options such as the Automatic Storage Management User login to set SQL execution options.
WILDCARDRESOLVE sets the default explicitly. SQL EXEC sets the NLS_DATE_FORMAT handling so that date data type handling is consistent with the TDV system.
extract EXTGROUP
userid UserName, password password
exttrail ./dirdat/EG
TRANLOGOPTIONS ASMUSER sys@VAULTREPO_ASM, ASMPASSWORD password333
WILDCARDRESOLVE DYNAMIC
SQLEXEC "ALTER SESSION SET NLS_DATE_FORMAT='YYYY-MM-DD HH24:MI:SS'"
-- The following parameters explicitly set the defaults:
EOFDELAYCSECS 1
FLUSHCSECS 1
--GROUPTRANSOPS 10
REPORTCOUNT EVERY 1 SECONDS, RATE
-- The following three parameters are required to ensure compatibility with CMS:
GETUPDATEBEFORES
NOCOMPRESSUPDATES
NOCOMPRESSDELETES
 
-- Monitored tables are listed here. The following tables are used as examples.
table qacntrial.address;
table qacntrial.bid;
table qacntrial.category;
table qacntrial.creditcard;
table qacntrial.favoritesearch;
table qacntrial.item;
table qacntrial.sale;
table qacntrial.users;