GitHub user davies opened a pull request:
https://github.com/apache/spark/pull/12278
[SPARK-14419] [SQL] improve building hashed relation with long key
(follow-up)
## What changes were proposed in this pull request?
Currently, we use java HashMap for HashedRelation if the key could fit
within a Long. The java HashMap and CompactBuffer are not memory efficient, the
memory used by them is also accounted accurately.
This PR introduce a LongToUnsafeRowMap (similar to BytesToBytesMap) for
better memory efficiency and performance.
This PR reopen #12190 to fix bugs.
## How was this patch tested?
Existing tests.
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/davies/spark long_map3
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/spark/pull/12278.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 #12278
----
commit b02b1d128fd8108a9af64e0cd7db65a7fcacca26
Author: Davies Liu <[email protected]>
Date: 2016-04-05T04:56:35Z
LongToUnsafeRowMap
commit 1b68736b72e0cc710a01ccbfd46e957b2fa5132f
Author: Davies Liu <[email protected]>
Date: 2016-04-06T00:08:47Z
update benchmark & cleanup
commit 87e32f368f775a37f9b9ad3f7c18f29ee05db12f
Author: Davies Liu <[email protected]>
Date: 2016-04-06T00:22:57Z
fix style
commit a3b45d89a04e18513ee1aa288c182632506eb761
Author: Davies Liu <[email protected]>
Date: 2016-04-09T05:32:45Z
clenaup & add comments
commit a35be8200c458336815fe3ea603fa5d4a65cbdb5
Author: Davies Liu <[email protected]>
Date: 2016-04-09T05:33:36Z
Merge branch 'master' of github.com:apache/spark into long_map2
Conflicts:
sql/core/src/main/scala/org/apache/spark/sql/execution/joins/BroadcastHashJoin.scala
commit 028eec539960b92a0b0188a8ba3d8f149230e5a5
Author: Davies Liu <[email protected]>
Date: 2016-04-09T05:35:52Z
fix style
commit 32c2165e455fc1e1dd864b60a3f1b0b16991d50b
Author: Davies Liu <[email protected]>
Date: 2016-04-09T05:53:50Z
fix style
commit 87660e24d2f3638e7cdacdc8ae106581ffa0c409
Author: Davies Liu <[email protected]>
Date: 2016-04-09T22:01:44Z
change array length to power of 2
commit 9e1a110bae674f93de89660ab42e4071c8f46fc8
Author: Davies Liu <[email protected]>
Date: 2016-04-09T20:26:46Z
improve building hashed relaton with long key
commit 8774ebc9244a9edc35c86971d239f2110cb7e13e
Author: Davies Liu <[email protected]>
Date: 2016-04-09T20:49:17Z
insert new value in the beginning of linked list in BytesToBytesMap
commit 452cc9db7d63e8db25ade61ef0860c8fe53bd9f0
Author: Davies Liu <[email protected]>
Date: 2016-04-09T22:16:25Z
Merge branch 'master' of github.com:apache/spark into long_map3
----
---
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]