Skip Headers
Oracle® GoldenGate Veridata Administrator's Guide
11g Release 2 (11.2.1.0.0)

Part Number E29092-01
Go to Documentation Home
Home
Go to Book List
Book List
Go to Table of Contents
Contents
Go to Index
Index
Go to Feedback page
Contact Us

Go to previous page
Previous
Go to next page
Next
PDF · Mobi · ePub

11 Oracle GoldenGate Veridata Server Configuration Parameters

This chapter describes parameters that adjust different aspects of the sort memory configuration when using server-side sorting.

This chapter includes the following sections:


Section 11.1, "Overview of the Server Memory"
Section 11.2, "Estimating Memory Usage"
Section 11.3, "How to Set a Parameter"
Section 11.4, "Parameter Descriptions"

11.1 Overview of the Server Memory

Oracle GoldenGate Veridata Server uses virtual memory in the following ways:

The amount of memory that can be used by the sort process cannot be greater than the minimum of:

11.2 Estimating Memory Usage

The maximum amount of memory available to Oracle GoldenGate Veridata is specified by the Java boot option -Xmx. When server-side sorting is used, a large portion of this memory is reserved for sorting during comparisons. This reserved amount is controlled by the server.max_sort_memory configuration parameter.

When a comparison is run, two buffers are allocated from the reserved sort memory. Each of these is equal to the size specified as Maximum Memory Usage (MB). To access this setting click the Edit option from the Profile Configuration screen, then Sorting Method from the Profile settings categories.

To Estimate Memory based on the Number of Concurrent Comparisons

The maximum amount of memory that can be used for any comparison is set by the parameter server.max_comparison_sort_memory. The -Xmx Java boot option should be set large enough to allow the desired number of concurrent comparisons.

The maximum number of concurrent comparisons is defined by the server.max.concurrent_comparison_threads configuration parameter. Therefore the maximum amount of sort memory can be as large as:

server.max_comparison_sort_memory * server_max_comparison_threads

For example, if you set server.max_concurrent_comparison_threads to allow 10 concurrent comparisons and leave server.max_comparison_sort_memory set to the default value of 100 MB, you will need 1 GB of available memory.

To Estimate the Amount of Memory Used per Row

Refer to Section 2.4.2, "Disk and Memory Requirements for the Server Component" for the calculation to estimate the amount of memory used per row.

11.3 How to Set a Parameter

To set a parameter, edit its entry in the veridata.cfg file. This file is stored in the shared/conf directory within the Oracle GoldenGate Veridata Server installation directory.

Note:

You should back up the conf directory prior to changing the server configuration or Tomcat users.

Open an Oracle service request before changing these parameters. For more information, go to http://support.oracle.com.

11.4 Parameter Descriptions

This section describes the parameters that can be set in the veridata.cfg file.

11.4.1 server.max_sort_memory

Sets the maximum amount of sort virtual memory that is available to all running comparisons that use server-side sorting. The default amount is the Java boot option -Xmx maximum memory setting less the 200 MB needed for basic tasks. You can limit this amount to make more memory available for the Oracle GoldenGate Web User Interface.

If a comparison cannot get enough virtual memory when it starts, it fails or tries again depending on the setting of the server.sort_waiting_threshold parameter. If a comparison does get enough virtual memory, the currently available sort virtual memory gets decremented by the amount that the comparison reserves. When a comparison completes, it increments the amount of available sort virtual memory by the amount of sort virtual memory that it had reserved.

Syntax

server.max_sort_memory {default | number{M | m}}
  • default allows Oracle GoldenGate Veridata to define a maximum value that is dependent on the operating system.

  • number{M | m} specifies a value in megabytes. For example, 1000M means a limit of 1000 megabytes. If this number exceeds the amount of available memory, the value will be reduced to the amount of available memory.

11.4.2 server.max_concurrent_comparison_threads

Sets the maximum number of concurrent comparisons that can be executed. In general, the amount configured by the server is the optimal value, given the machines resources. You can lower this number to reduce the impact of the server on your system. When this limit is reached, no new comparisons will start until an active comparison completes.

Syntax

server.max_concurrent_comparison_threads {default | number}
  • default allows Oracle GoldenGate Veridata to compute the maximum number of concurrent threads based on the server.max_comparison_sort_memory and available resources. The default value is the server.max_sort_memory divided by server.max_comparison_sort_memory.

  • number is a positive integer that sets the maximum number of concurrent comparison threads.

11.4.3 server.max_comparison_sort_memory

Sets the maximum amount of virtual memory that can be reserved by a single comparison that is using server sorting. A comparison that tries to reserve more than this amount will fail, even if it is configured to retry.

The amount set for this property limits the amount that can be set in the Oracle GoldenGate Web User Interface Profile.

If the value of this parameter is changed, it might cause the concurrent comparisons that use server-side sorting to fail or retry, depending on the sorting parameters defined in the profile that is being used.

Syntax

server.max_comparison_sort_memory {default | number{ M | m }}
  • default is 100 MB.

  • number{M | m} specifies a value in megabytes. For example, 600M sets the limit for any comparison to be 600 megabytes.

11.4.4 server.sort_waiting_threshold

Sets a threshold above which new jobs will fail if there are too many comparisons waiting to retry a virtual memory reservation.

Syntax

server.sort_waiting_threshold {default | number}
  • default is zero; if memory cannot be allocated the job will not be allowed to run.

  • number sets the number of comparisons that can be waiting before new jobs will fail. For example, a value of 100 means that if there are 100 comparisons waiting to retry a memory reservation, and there is a job that is ready to begin execution, this job will not be allowed to run.