Distributed Query Processing (DQP) improves performance in IQ multiplex configurations by distributing query processing work across multiple nodes in the logical server.
DQP occurs automatically for qualifying queries. Queries that do not qualify for parallelization are not considered for DQP;
therefore, any query that does not run in parallel on pre-15.3 versions of Sybase IQ will not be distributed in 15.3.
DQP introduces the concept of leader and worker nodes.
Note: Do not confuse leader and worker nodes with multiplex coordinator, writer, and reader nodes.
Query processing work passes from leader nodes to worker nodes and is performed by threads that run on the leader and worker nodes. The leader node can be any node in the logical server
where a query originates. A worker node can be any node in the logical server capable
of accepting DQP work. The
sp_iqcontext system stored procedure provides information about these distributed query processing threads.
In the HTML query plan, DQP eligibility is represented by 3 bars connecting nodes in the plan.
Some query portions are never distributed. Be aware of these DQP limitations:
Query Portion |
Distributed? |
Read-write query portions (including DDL, INSERT, LOAD, UPDATE, and DELETE).
|
No |
Query portions that reference temporary tables.
|
No |
Query portions that reference SYSTEM dbspace tables. |
No |
Query portions that reference proxy tables.
|
No |
Query portions that reference nondeterministic functions, such as NEWID. |
No |
See these topics in the Sybase IQ documentation:
- Using Sybase IQ Multiplex > Distributed Query Processing
- Reference: Building Blocks, Tables, and Procedures > System Procedures > System Stored Procedures > sp_iqcontext procedure
- Using Sybase IQ Multiplex > Multiplex Reference > SQL Statements > ALTER LOGIN POLICY