Topics: |
This section describes the OnRamp operational details.
As of Version 3.14, the Ramp Quality Gate service creates a QUALITY_GATE work order which flags erroneous records in a ramp batch, so they are not included in Omni-Gen work order processing. A new column, rec_quality, on the _r tables captures the error and warning status detected by the Quality Gate.
The service has the following three parameters, all of which are required:
The QUALITY_GATE work order does the following:
Note: The measures of this work order show three values:
When the work order completes, click the System Messages menu item on the work order to see the warnings and errors.
At this time, all flagged records should be fixed, and the rec_quality column should be set to NULL before the batch is submitted for processing. This applies even to those records marked with a warning, because NATIVE_SQL loads can only trim spaces.
The following image shows an example of the parameters for Ramp Quality Gate.
The Relational OnRamp will process batches for different top-level subjects concurrently. Multiple batches for the same top-level subject will be processed serially unless Parallel Processing is enabled.
Omni-Gen supports the following methods of launching an OnRamp batch:
You can add a row to os_ramp_control, setting the following columns.
The os_ramp_control can be monitored to follow the status of a ramp batch.
The following are possible values of the state field:
Note: This information is also available in the RampControl section of the Omni Console.
This section describes the ProcessRamp web services that can be used to launch a ramp batch.
V4 Web Service
https://server_host:server_port/server/api/v1/server/processRamp.v4
The HTTP PUT request accepts the parameters listed and described in the following table.
Parameter |
Type |
Description and Values |
---|---|---|
batchId |
string |
Batch to execute. |
subject |
string |
Subject to process as part of the batch. |
sourceName |
string |
Restrict the source system to participate in the batch. |
batchType |
string |
Mode corresponding to the batch_type:
|
The following table provides the batch options (sub directives) for the process ramp service and the corresponding batch_options column in os_ramp_control.
Name |
Type |
Description and Values |
---|---|---|
dataTransferMode |
string |
Overrides the default data transfer mode runtime configuration setting.
Note: NATIVE_SQL generates a runtime error for unsupported databases. For information on the Batch Split Size setting, see Batch Split. |
changeDetection |
string |
Determines whether or not to eliminate duplicates from further processing (data quality operations).
Note: ChangeDetection = IGNORE replaces batch option FORCE_REPROCESS. |
upsertNullHandling (previously addUpdateNullHandling) |
string |
UPSERT only. Governs how to handle missing values on an update.
|
truncateBeforeInsert |
boolean |
Truncate data before an INSERT_ONLY operation. Used for a full replacement of the data set. Applies only to transactional subjects.
Note: Is an error unless loadType is INSERT_ONLY. |
As of Version 3.14, the Batch Split feature allows for more optimized database resource usage and for the progress of the load to be visible to the user.
This is only applicable to loads of a transactional subject, where the Data Transfer Mode is NATIVE_SQL. In addition, the batch process must be bound to a single source
If the set of instances in a work order is too large, resource constraints can result in a batch processing failure. Using the Batch Split Size setting, multiple NATIVE_SQL operations are executed, each targeting a subset of the batch. The Measures are updated when each operation completes, showing how many records were processed and how many records were new or updated.
When Batch Split is off, all the records in the batch are processed by a single NATIVE_SQL operation and the measures are only updated when the operation is complete.
The default value of Batch Split Size is -1, which means not to process in chunks. If this value is greater than 0, the batch will be processed in Batch Split Size chunks. For example, if there are 10 million records in the table and the size is set to 1 million, approximately one million rows will be processed at a time.
The following image shows the measures updating while ramp to instance is processing. This only happens with Batch Split. Otherwise, measures are updated once they are completed.