EXECUTIONPARALLELISM in resource Pool
hsaxena20
Community Edition User
Whats does it mean EXECUTIONPARALLELISM? and how we can set it?
Why it is required?
0
Answers
Execution Parallelism Limits the number of threads used to process any single query issued in a resource pool. It can be set using ALTER RESOURCE POOL statement for a particular resource pool. Default is AUTO which is equal to number of cores of your system. It is used to provide more threads to a query so that it can complete quickly. However it is not ideal to increase EXECUTIONPARALLELISM to high value
if your query has a GROUP BY clause and EXECUTIONPARALLELISM is set to 8, to perform GROUP BY operation vertica will use 8 threads. Since it uses many threads it requires more memory. So you need to have enough memory available in that resource pool where the query is running.
The below blog provides a good picture of Vertica's work load management and how concurrency and parallelism effects workloads
https://www.vertica.com/blog/concurrency-workload-management/
If we can leave it as default for our user-defined pool than there should be not a problem?
Yes. You can leave it at default which is AUTO. there should not be any issue.