v.24.2Experimental Feature
Support for LEFT JOIN, ALL INNER JOIN, and Subqueries in Parallel Replicas
SupportLEFT JOIN,ALL INNER JOIN, and simple subqueries for parallel replicas (only with analyzer). New settingparallel_replicas_prefer_local_joinchooses localJOINexecution (by default) vsGLOBAL JOIN. All tables should exist on every replica fromcluster_for_parallel_replicas. New settingsmin_external_table_block_size_rowsandmin_external_table_block_size_bytesare used to squash small blocks that are sent for temporary tables (only with analyzer). #58916 (Nikolai Kochetov).
Why it matters
This feature enables more flexible and efficient distributed query execution across parallel replicas by supporting common join types and subqueries. It solves the problem of choosing between local and globalJOIN execution strategies, improving query performance and resource utilization. Squashing small blocks for temporary tables reduces overhead during data transfer between replicas.How to use it
To use these features, ensure all tables involved exist on every replica in thecluster_for_parallel_replicas. Enable or configure the join strategy with the parallel_replicas_prefer_local_join setting to prefer local or global JOIN execution. Adjust min_external_table_block_size_rows and min_external_table_block_size_bytes to control the block sizes for temporary tables sent between replicas when using the analyzer for parallel replica queries.