GitHub user MickDavies opened a pull request:
https://github.com/apache/spark/pull/3843
[SPARK-4386] Improve performance when writing Parquet files
Convert type of RowWriteSupport.attributes to Array.
Analysis of performance for writing very wide tables shows that time is
spent predominantly in apply method on attributes var. Type of attributes
previously was LinearSeqOptimized and apply is O(N) which made write O(N
squared).
Measurements on 575 column table showed this change made a 6x improvement
in write times.
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/MickDavies/spark SPARK-4386
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/spark/pull/3843.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 #3843
----
commit 892519d3bb7166ea184f0c070759b8a3b679e2c4
Author: Michael Davies <[email protected]>
Date: 2014-12-30T13:00:25Z
[SPARK-4386] Improve performance when writing Parquet files
Convert type of RowWriteSupport.attributes to Array.
Analysis of performance for writing very wide tables shows that time is
spent predominantly in apply method on attributes var. Type of attributes
previously was LinearSeqOptimized and apply is O(N) which made write O(N
squared).
Measurements on 575 column table showed this change showed a 6x improvement
in write times.
----
---
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]