GitHub user scwf opened a pull request:
https://github.com/apache/spark/pull/7336
[SPARK-8968] [SQL] shuffled by the partition clomns when dynamic
partitioning to optimize the memory overhead
now the dynamic partitioning show the bad performance for big data due to
the GC/memory overhead. this is because each task each partition now we open a
writer to write the data, this will cause many small files and high GC. This
patch we shuffle data by the partition columns firstly so that each partition
will have ony one partition file and this also reduce the gc overhead.
GC before this patch:

GC after this patch:

the performance
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/scwf/spark
dynamic-optimize-basedon-apachespark
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/spark/pull/7336.patch
To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:
This closes #7336
----
commit d5c3a565ca01ee5a8d66472d2067cf238dfca5b4
Author: scwf <[email protected]>
Date: 2015-07-09T04:20:28Z
shuffle by partiton cols when dynamic partitioning
commit 307c3cdd86943a7aeabd81d652e02befd1965586
Author: scwf <[email protected]>
Date: 2015-07-09T06:20:45Z
Merge branch 'master' of https://github.com/apache/spark into
dynamic-optimize-basedon-apachespark
commit 10d9f6c332502c983d342f94233685623cabcb10
Author: scwf <[email protected]>
Date: 2015-07-10T01:21:29Z
code style improve
----
---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at [email protected] or file a JIRA ticket
with INFRA.
---
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]