posted Oct 31, 2014, 6:26 AM by Sachchida Ojha
These GUCs are useful for queries that finish within less than 5 seconds and recommended to be used for OLTP-like workloads. Specifically helpful for systems that have large number of segments. Need to be tuned carefully in a high concurrency system. A system is high concurrency if resource queues are configured to run 50 or more queries concurrently. 1) gp_connections_per_thread
- A value larger than or equal to the number of primary segments means that each slice in a query plan will get its own thread when dispatching to segments
- Lower values will use more threads, which utilizes more resources on the master
- Reducing this value improves the performance of queries that run for a couple of seconds
2. gp_enable_direct_dispatch
- Enables or disables the dispatching of targeted query plans for queries that access data on a single segment
- This significantly reduces the response time of qualifying queries as there is no interconnect setup involved
- Direct dispatch requires more CPU utilization on the master
- Improves performance of queries that have a filter on the distribution keys
- This needs to be accounted for when deciding on distribution keys for tables
- Specially helpful in high concurrency environments
3. gp_cached_segworkers_threshold
- A higher setting may improve performance for power-users that want to issue many complex queries in a row
- Helpful in high concurrency environments
|
|