citusdata / citusdata/citus_docs
EXPLAIN ANALYZE improvements
- Dominant language
- CSS
- Stars
- 58
- Forks
- 60
- PR merge metrics
- No merged PRs in 30d
Description
## Why are we implementing it? (sales eng)
### What are the typical use cases?
Improvements that were added:
1. Fix several EXPLAIN ANALYZE issues that was caused by executing queries twice: https://github.com/citusdata/citus/pull/3890. I don't think this needs any documentation.
2. Showing CTE statistics in EXPLAIN ANALYZE: https://github.com/citusdata/citus/pull/3864
3. Showing worker queries in EXPLAIN ANALYZE: https://github.com/citusdata/citus/pull/3891
4. Showing amount of bytes received from workers: https://github.com/citusdata/citus/pull/3901
No GUCs were added.
## Communication goals (e.g. detailed howto vs orientation)
### Good locations for content in docs structure
"Query Performance Tuning"
I suggest following additions:
1. Users can see intermediate result file size for CTEs if they do EXPLAIN ANALYZE. They can also see where the data was pushed to. Examples in tests:
* https://github.com/citusdata/citus/blob/7c52c6edb01270f44f04c3ed769332ccd9eb7d54/src/test/regress/expected/multi_explain.out#L2015
* https://github.com/citusdata/citus/blob/7c52c6edb01270f44f04c3ed769332ccd9eb7d54/src/test/regress/expected/multi_explain.out#L2097
2. Users can use the VERBOSE flag (`EXPLAIN (ANALYZE true, VERBOSE true) ...`) to see the worker queries, which can be used to tune workers. Examples in tests:
* https://github.com/citusdata/citus/blob/7c52c6edb01270f44f04c3ed769332ccd9eb7d54/src/test/regress/expected/multi_explain.out#L314
3. Tuple data received from nodes is shown automatically for tasks. Example in tests:
* https://github.com/citusdata/citus/blob/df98fa8f9e519134bd8b0f451ff6c57e4b73e994/src/test/regress/expected/local_shard_execution.out#L294
Contributor guide
Assessment
This issue has not been assessed yet.