You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Konstantin Orlov (Jira)" <ji...@apache.org> on 2021/12/02 13:57:00 UTC
[jira] [Commented] (IGNITE-14769) Key hash calculation.
[ https://issues.apache.org/jira/browse/IGNITE-14769?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17452421#comment-17452421 ]
Konstantin Orlov commented on IGNITE-14769:
-------------------------------------------
Here are graphs for distribution among partitions with use of affinity function from Ignite-2. Total row count is 1 000 000. On Y axis is count of keys per partition, and for the X axis is partition id. Every key consists of 3 sequentially increasing integers 0 to 99.
[^Partition count 8.svg] [^Partition count 32.svg] [^Partition count 100.svg] [^Partition count 128.svg] [^Partition count 480.svg] [^Partition count 1024.svg].
> Key hash calculation.
> ---------------------
>
> Key: IGNITE-14769
> URL: https://issues.apache.org/jira/browse/IGNITE-14769
> Project: Ignite
> Issue Type: Improvement
> Reporter: Andrey Mashenkov
> Assignee: Konstantin Orlov
> Priority: Major
> Labels: iep-54, ignite-3
> Attachments: Partition count 100.svg, Partition count 1024.svg, Partition count 128.svg, Partition count 32.svg, Partition count 480.svg, Partition count 8.svg
>
> Original Estimate: 96h
> Remaining Estimate: 96h
>
> There are next possible ways for cache calculation.
> # Update hash on every write method call as it works for now.
> # Calculate for all key chunk (hash of byte[]) - all columns including a null-map.
> Let's choose and implement the best way and along with a better hash function,
> e.g. xxHash64 [1], Murmur3 [2]released in Apache Commons, CityHash (from Google) [3], FastHash32 [4].
>
> [1][https://github.com/Cyan4973/xxHash/]
> [2]https://commons.apache.org/proper/commons-codec/jacoco/org.apache.commons.codec.digest/MurmurHash3.java.html
> [3] [https://github.com/google/cityhash]
> [4] https://github.com/rurban/smhasher/blob/master/fasthash.cpp
--
This message was sent by Atlassian Jira
(v8.20.1#820001)