What's new in InfoSphere Optim pureQuery Runtime Version 3.1 releases

Product documentation


Abstract

This document describes the new features and enhancements in InfoSphere Optim pureQuery Runtime for Linux, UNIX, and Windows and in InfoSphere Optim pureQuery Runtime for z/OS.

Content

pureQuery Runtime version:
Version 3.1.1
Version 3.1

For information about what's new in Optim pureQuery Runtime for Linux, UNIX, and Windows and Optim pureQuery Runtime for z/OS Version 2.2 releases, see http://www.ibm.com/support/docview.wss?uid=swg27016961.

Version 3.1.1

What's new in InfoSphere Optim pureQuery Runtime for Linux, UNIX, and Windows Version 3.1.1 and InfoSphere Optim pureQuery Runtime for z/OS Version 3.1.1

InfoSphere Optim pureQuery Runtime Version 3.1.1 provides key enhancements in the following categories:


SQL literal substitution

In a Java application environment, pureQuery Runtime has enhanced the SQL literals that are considered for replacement with either an untyped parameter marker or, when needed, a typed parameter marker. With this enhancement, a wider variety of SQL statements can benefit from being run statically with SQL literal substitution.

pureQuery Runtime Version 3.1.1 adds support for the following literals:

  • DATE, TIME, and TIMESTAMP literals in the JDBC escape syntax.
  • Literal values in a SELECT expression list.
  • Literal values in labeled durations.
  • Literal values in function invocations.

For pureQuery Runtime Version 3.1.1, a plus or minus sign that precedes a numeric literal is considered part of the literal. For a numeric literal that is replaced by parameter marker, the numeric literal including the plus or minus sign is replaced by a parameter marker.

Link to related information:


Limiting the number of rows returned by an SQL statement

For Java applications, pureQuery Runtime captures the value specified by the JDBC method setMaxRows when capturing SQL information. The setMaxRows value can improve performance by limiting the number rows returned by an SQL statement. To limit the number of rows returned when running SQL statements statically, pureQuery Runtime Version 3.1.1 incorporates the setMaxRows value in the SQL statement text that is bound.

Link to related information:


Controlling the end of line character in generated implementation classes

When generating implementation classes from interfaces that declare annotated methods with the pureQuery Generator utility, you can specify the line separator with pureQuery Version 3.1.1. You can adjust the line separator to match the end of line characters used by your computer and editor. For example, you can specify that classes are generated with the carriage return and line feed characters (CRLF) as the end of line characters instead of the default line feed character (LF).

Link to related information:


Bundling pureQuery Runtime with DB2 10.1 Advanced Enterprise Server Edition

To lower the total cost of ownership, the license for IBM DB2 10.1 for Linux, UNIX, and Windows, Advanced Enterprise Server Edition (DB2 AESE) now includes entitlement to InfoSphere Optim pureQuery Runtime for Linux, UNIX, and Windows. This entitlement can be used only with the DB2 data server included with DB2 AESE. Use of the pureQuery Runtime technology with any other DB2 data servers will require purchase of additional licenses for pureQuery Runtime technology.



pureQuery nested beans example

The pureQuery nested beans capability was introduced in pureQuery Runtime Version 3.1. pureQuery nested beans return data from an SQL query that contains a join predicate. The pureQuery Runtime Version 3.1.1 documentation has been enhanced with example Java classes and interface that generate nested beans. The pureQuery annotations on the class properties define the hierarchy of the nested beans. The query is used as an inline SQL Query and in an interface class. The example includes JUnit test methods for the pureQuery nested beans.

Link to related information:


Enhanced pureQuery Runtime support for .NET with IBM Data Server Driver Package V9.7 Fix Pack 6

IBM Data Server Driver Package Version 9.7 Fix Pack 6 supports additional pureQuery Runtime keywords when you enable .NET database applications with pureQuery client optimization. The keywords enhance your ability to control the capture of SQL statements and the execution of the statements issued by the application. The keywords can be specified in the connection string of the application or externally in a configuration file.

The Data Server Driver also adds support for accessing data from a pureQueryXML file that is stored in an SQL Management Repository.

Link to related information:


Version 3.1

What's new in InfoSphere Optim pureQuery Runtime for Linux, UNIX, and Windows Version 3.1 and InfoSphere Optim pureQuery Runtime for z/OS Version 3.1

InfoSphere Optim pureQuery Runtime Version 3.1 provides key enhancements in the following categories:


Creating and managing pureQueryXML files

  • When you run the Configure utility, you can specify options to perform the following actions:
    • You can replace existing database schema names or database location names in the pureQueryXML file with new schema or location names.
    • You can specify whether the Configure utility restores SQL statements that have been marked invalid in a pureQueryXML file. After the SQL statements are restored, they can be used with pureQuery Runtime to run SQL statements statically.
    • You can remove unnecessary gaps between section numbers in a statement set. Section numbers are assigned to SQL statements. When the pureQuery StaticBinder utility binds the pureQueryXML file, the unnecessary gaps between section numbers become unused section holes in the DB2 packages created by the bind operation.
  • When you create pureQueryXML files with the GeneratePureQueryXml utility:
    • You can specify an option to replace the literal values in SQL statements with parameter markers.
    • You can create pureQueryXML files from IBM InfoSphere Optim Query Workload Tuner XML files.

Link to related information:


Running SQL statements statically

  • You can specify StaticBinder utility options that control how the utility handles SQL statements in a pureQueryXML file when the bind process returns an error for the statement. The utility can mark the statement as invalid or remove it from the file. If a statement is marked invalid, the statement remains in the file but it is treated as if its isBindable attribute is set to false.
  • You can specify Configure utility options to restore or remove SQL statements that have been marked invalid by the StaticBinder utility. For information about Configure utility enhancements, see Creating and managing pureQueryXML files.
  • For Java applications that use the pureQuery API, you can control bind options at the interface level. You control the bind options with the pureQuery interface-level @Group annotation and options when you run the pureQuery Generator and StaticBinder utilities.
  • You can specify pureQuery Generator utility options to control how the Java Interface name and Java package name are used to create a DB2 package name.

Links to related information:



SQL literal substitution

  • You can enable SQL statement literal substitution for Java or CLI applications by specifying only the pureQuery Runtime property sqlLiteralSubstitution and without specifying a pureQueryXML file. pureQuery Runtime replaces literal values in SQL statements with parameter markers before running the statement.
  • When you create a pureQueryXML file with the GeneratePureQueryXml utility, you can specify whether the utility replaces literal values in SQL statements with parameter markers. For information about enhancements for creating pureQueryXML files, see Creating and managing pureQueryXML files.

Links to related information:



pureQuery client optimization

Enhancements for applications that are enabled with pureQuery client optimization:

  • You can specify a value for the captureMode property to control the information that is captured. You can use the capture modes to capture SQL statements while reducing the overhead associated with capturing statistical and stack trace information.
    • You can specify that only new SQL statements are captured without statistical or stack trace information. Only the time of the first capture and maximum observed execution time are captured.
    • You can specify that a reduced amount of statistical or stack trace information is captured with SQL statements.
  • You can enable SQL statement literal substitution for Java or CLI applications by specifying only the pureQuery Runtime property sqlLiteralSubstitution and without specifying a pureQueryXML file.

Links to related information:



SQL management repository support

  • The pureQuery Runtime for Linux, UNIX, and Windows installation directory contains sample command line script files that perform repository management functions. The scripts perform functions such as creating a repository, uploading and extracting data from a repository, and managing runtime groups. The scripts also merge and configure pureQueryXML files, and use the StaticBinder utility to perform bind operations with pureQueryXML files. The scripts run the pureQuery Runtime utilities Configure, ManageRepository, Merge, and StaticBinder.
  • When you generate a repository report with the ManageRepository utility, you can specify a long or a short version of the report. The short version of the report does not contain information about packages associated with the statement sets and SQL statements.
  • pureQuery DB2 CLI applications can retrieve pureQuery information from a repository. For information about enhancements for DB2 CLI applications, see DB2 CLI applications.

Link to related information:




pureQuery API

  • When creating a Java application that runs SQL queries that contain joins, you can create a set of nested beans with pureQuery annotations that represents the data returned from the SQL query. The hierarchy of the beans reflects the relational structure of the tables and data in the database. The annotations automate the creation and the populating of Java objects that return results from SQL queries.
  • For the pureQuery @Handlers annotation, the RowHandlerWithParameters element provides access to the SQL statement input parameters that were passed on method invocation.
  • You can use pureQuery @Group annotation to control the pureQuery Generator and StaticBinder utility options for interfaces. You specify group names for interfaces with the @Group annotation. You can specify pureQuery Generator and StaticBinder utility options that apply to SQL statements that appear in the interfaces of a named group. For information about enhancements for running SQL statements statically, see Running SQL statements statically.
  • Sample command line scripts for the pureQuery Generator utility are installed with IBM Data Studio Version 3.1. The scripts and a readme file are in the directory dsdev\bin\sample_generator_scripts in the Data Studio installation directory.

Links to related information:




pureQuery logging and tracing

  • For Java applications, you can control log levels for different pureQuery components such as pureQuery Runtime API, pureQuery client optimization, and CMX monitoring.
  • Database log events that are monitored by pureQuery Runtime can be sent to an SQL management repository.

Link to related information:



Hibernate applications

The pureQuery auto-tuning for Hibernate feature automates the process of optimizing the database access patterns of Hibernate in each use-case of the application. For information about the pureQuery feature for auto-tuning pureQuery Hibernate applications, see the Developer Works article "Accelerate Hibernate and IBATIS applications using pureQuery, Part 3: Auto-tune data fetch strategies in Hibernate applications with pureQuery."



DB2 CLI applications

pureQuery support of DB2 CLI applications enabled with pureQuery client optimization has been enhanced in the following areas:

  • A DB2 CLI application enabled with pureQuery client optimization can retrieve the pureQueryXML file data from a repository that was created in a database.
  • You can enable SQL statement literal substitution for Java or CLI applications by specifying only the pureQuery Runtime property sqlLiteralSubstitution and without specifying a pureQueryXML file. pureQuery Runtime replaces literal values in SQL statement with parameter markers before running the statement.

Links to related information:

Cross reference information
Segment Product Component Platform Version Edition
Information Management Optim pureQuery Runtime for z/OS z/OS 3.1
Information Management InfoSphere Optim pureQuery Runtime for z/OS z/OS 3.1
Information Management InfoSphere Optim pureQuery Runtime for Linux- UNIX and Windows AIX, HP-UX, Linux, Linux pSeries, Linux zSeries, Solaris, Windows 3.1

Rate this page:

(0 users)Average rating

Add comments

Document information


More support for:

InfoSphere Optim pureQuery Runtime for Linux, UNIX and Windows

Software version:

3.1, 3.1.1

Operating system(s):

AIX, HP-UX, Linux, Linux pSeries, Linux zSeries, Solaris, Windows

Reference #:

7022472

Modified date:

2012-06-01

Translate my page

Machine Translation

Content navigation