GitHub user liancheng opened a pull request:
https://github.com/apache/spark/pull/10851
[SPARK-12818] Initial implementation of count min sketch
This PR adds an initial implementation of count min sketch, contained in a
new module spark-sketch under `common/sketch`. The implementation is based on
the [`CountMinSketch` class in stream-lib][1].
As required in the [design doc][2], spark-sketch should have no external
dependency.
Two classes, `Murmur3_x86_32` and `Platform` are copied to spark-sketch
from spark-unsafe for hashing. They'll also be used in the upcoming bloom
filter implementation.
TODO:
- [ ] Javadocs
Follow-ups:
- Serialization support
- DataFrame API integration
[1]:
https://github.com/addthis/stream-lib/blob/aac6b4d23a8686b000f80baa447e0922ecac3bcb/src/main/java/com/clearspring/analytics/stream/frequency/CountMinSketch.java
[2]:
https://issues.apache.org/jira/secure/attachment/12782378/BloomFilterandCount-MinSketchinSpark2.0.pdf
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/liancheng/spark count-min-sketch
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/spark/pull/10851.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 #10851
----
commit 1eee6f30bcecd76b02188cef4a0b24572d531069
Author: Cheng Lian <[email protected]>
Date: 2016-01-18T18:23:11Z
Adds spark-sketch skeleton
commit 7a41b752a8b22af4f82fda056f967367a3ffaf40
Author: Cheng Lian <[email protected]>
Date: 2016-01-19T21:17:30Z
Moves sketch to common/sketch
commit 9ac62ed1a295aaf7bb19f09af30e275924041e7c
Author: Cheng Lian <[email protected]>
Date: 2016-01-19T21:52:10Z
Copies Murmur3_x86_32 and Platform from unsafe
commit 1a63a4c1229fe6b36a7f36edc27e931f4bbf86d8
Author: Cheng Lian <[email protected]>
Date: 2016-01-20T00:24:25Z
Initial version of CountMinSketch
commit e29e8aaf47b2d03763b84633d4ce64ea94bdce57
Author: Cheng Lian <[email protected]>
Date: 2016-01-20T20:02:08Z
Tests accuracy for all supported types
commit bb7435f1b596bebc2746dce6172a7c7503e4c8fc
Author: Cheng Lian <[email protected]>
Date: 2016-01-20T21:32:36Z
Tests mergeInPlace
----
---
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]