Improving AWT Throughput with SQL Array Processing

The CacheAWTMethod connection attribute setting determines whether to use the PL/SQL processing method or SQL array processing method for asynchronous writethrough propagation when applying changes to the Oracle database.

  • PL/SQL processing method: AWT bundles all pending operations into a single PL/SQL collection that is sent to the Oracle database server to be performed. This processing method is appropriate when there are mixed transactions and network latency between TimesTen and the Oracle database server. It is efficient for most use cases when the workload consists of mixed INSERT, UPDATE, and DELETE statements to the same or different tables. By default, TimesTen uses the PL/SQL processing method (CacheAWTMethod=1).

  • SQL array processing method: Consider changing CacheAWTMethod to 0 when the changes consist of mostly repeated sequences of the same operation (INSERT, UPDATE, or DELETE) against the same table. For example, SQL array processing is very efficient when a user does an update that affects several rows of a table. Updates are grouped together and sent to the Oracle database in a single batch.

The PL/SQL processing method transparently falls back to SQL array processing mode temporarily when it encounters one of the following:

  • A statement that is over 32761 bytes in length.

  • A statement that references a column of type BINARY FLOAT, BINARY DOUBLE and VARCHAR/VARBINARY of length greater than 4000 bytes.

Note:

You can also set this value with the ttDBConfig built-in procedure with the CacheAwtMethod parameter. See ttDBConfig in the Oracle TimesTen In-Memory Database Reference.

See CacheAWTMethod in Oracle TimesTen In-Memory Database Reference.