SQE and CQE Engines

To fully understand the implementation of query management and processing in DB2® UDB for iSeries™ on i5/OS™ V5R2 and subsequent releases, it is important to see how the queries were implemented in releases of i5/OS previous to V5R2.

The figure below shows a high-level overview of the architecture of DB2 UDB for iSeries before i5/OS V5R2. The optimizer and database engine are implemented at different layers of the operating system. The interaction between the optimizer and the database engine occurs across the Machine Interface (MI).
Description of pre-V5R2 optimizer. The query runs through the network to the host server to the optimizer. The optimizer is above the SLIC level.

The figure below shows an overview of the DB2 UDB for iSeries architecture on i5/OS V5R3 and where each SQE component fits. The functional separation of each SQE component is clearly evident. In line with design objectives, this division of responsibility enables IBM® to more easily deliver functional enhancements to the individual components of SQE, as and when required. Notice that most of the SQE Optimizer components are implemented below the MI. This translates into enhanced performance efficiency.
Description of optimizer after V5R2. The query runs from the interface through the network to the host server. From there it goes to the optimizer and the query dispatcher. The query dispatcher determines whether the query will run through CQE or SQE. The CQE database engine exists in SLIC. The SQE optimizer also exists in SLIC, as does the SQE statistics manager and the SQE data access primitives.