hawq-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From yo...@apache.org
Subject [1/4] incubator-hawq-docs git commit: Revise section on work_mem
Date Mon, 07 Nov 2016 17:27:26 GMT
Repository: incubator-hawq-docs
Updated Branches:
  refs/heads/tutorial-proto c73dab31b -> 3254b3cae


Revise section on work_mem


Project: http://git-wip-us.apache.org/repos/asf/incubator-hawq-docs/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-hawq-docs/commit/1014d883
Tree: http://git-wip-us.apache.org/repos/asf/incubator-hawq-docs/tree/1014d883
Diff: http://git-wip-us.apache.org/repos/asf/incubator-hawq-docs/diff/1014d883

Branch: refs/heads/tutorial-proto
Commit: 1014d883684c963094286b0d19f60729c8391693
Parents: 5edd907
Author: Jane Beckman <jbeckman@pivotal.io>
Authored: Tue Oct 25 16:11:17 2016 -0700
Committer: Jane Beckman <jbeckman@pivotal.io>
Committed: Tue Oct 25 16:11:17 2016 -0700

----------------------------------------------------------------------
 bestpractices/querying_data_bestpractices.html.md.erb | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-hawq-docs/blob/1014d883/bestpractices/querying_data_bestpractices.html.md.erb
----------------------------------------------------------------------
diff --git a/bestpractices/querying_data_bestpractices.html.md.erb b/bestpractices/querying_data_bestpractices.html.md.erb
index 15fecfe..08a8e02 100644
--- a/bestpractices/querying_data_bestpractices.html.md.erb
+++ b/bestpractices/querying_data_bestpractices.html.md.erb
@@ -16,14 +16,14 @@ If a query performs poorly, examine its query plan and ask the following
questio
     If the plan is not choosing the optimal join order, set `join_collapse_limit=1` and use
explicit `JOIN` syntax in your SQL statement to force the legacy query optimizer (planner)
to the specified join order. You can also collect more statistics on the relevant join columns.
 
 -   **Does the optimizer selectively scan partitioned tables?** If you use table partitioning,
is the optimizer selectively scanning only the child tables required to satisfy the query
predicates? Scans of the parent tables should return 0 rows since the parent tables do not
contain any data. See [Verifying Your Partition Strategy](../ddl/ddl-partition.html#topic74)
for an example of a query plan that shows a selective partition scan.
--   **Does the optimizer choose hash aggregate and hash join operations where applicable?**
Hash operations are typically much faster than other types of joins or aggregations. Row comparison
and sorting is done in memory rather than reading/writing from disk. To enable the query optimizer
to choose hash operations, there must be sufficient memory available to hold the estimated
number of rows. Try increasing work memory to improve performance for a query. If possible,
run an `EXPLAIN  ANALYZE` for the query to show which plan operations spilled to disk, how
much work memory they used, and how much memory was required to avoid spilling to disk. For
example:
+-   **Does the optimizer choose hash aggregate and hash join operations where applicable?**
Hash operations are typically much faster than other types of joins or aggregations. Row comparison
and sorting is done in memory rather than reading/writing from disk. To enable the query optimizer
to choose hash operations, there must be sufficient memory available to hold the estimated
number of rows. You may wish to  run an `EXPLAIN  ANALYZE` for the query to show which plan
operations spilled to disk, how much work memory they used, and how much memory was required
to avoid spilling to disk. For example:
 
-    `Work_mem used: 23430K bytes avg, 23430K bytes max (seg0). Work_mem               wanted:
33649K bytes avg, 33649K bytes max (seg0) to lessen workfile I/O affecting 2             
 workers.`
+    `Work_mem used: 23430K bytes avg, 23430K bytes max (seg0). Work_mem wanted: 33649K bytes
avg, 33649K bytes max (seg0) to lessen workfile I/O affecting 2               workers.`
+
+The "bytes wanted" (Work_mem) message from `EXPLAIN               ANALYZE` is based on the
amount of data written to work files and is not exact.
 
 **Note**
 The *work\_mem* property is not configurable. Use resource queues to manage memory use. For
more information on resource queues, see [Configuring Resource Management](../resourcemgmt/ConfigureResourceManagement.html)
and [Working with Hierarchical Resource Queues](../resourcemgmt/ResourceQueues.html).
 
 
-    The "bytes wanted" message from `EXPLAIN               ANALYZE` is based on the amount
of data written to work files and is not exact. The minimum `work_mem` needed can differ from
the suggested value.
-
 


Mime
View raw message