[ 
https://issues.apache.org/jira/browse/IGNITE-3018?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15964431#comment-15964431
 ] 

Taras Ledkov commented on IGNITE-3018:
--------------------------------------

Tables below contains average count of partitions to rebalance (new assignment 
contains a node that doesn't exist in the previous assignment)
(2 backups, 1024 partitions)
|| Nodes ||      Fair          ||    Rendezvous     ||
| *3*  | 988.3 | 729.3 |
| *4*  | 790.7 | 638.3 |
| *6*  | 408.3 | 447.0 |
| *8*  | 322.8 | 380.2 |
| *10* | 270.8 | 314.1 |
| *64* | 47.2  | 135.1 |

(2 backups, 10240 partitions)
|| Nodes ||      Fair          ||    Rendezvous     ||
| *100* | 324.7| 570.5|
| *200* | 157.6| 547.2|
| *300* | 114.7| 935.7|
| *400* | 79.2 | 336.3|
| *500* | 63.0 | 277.3|
| *600* | 54.0 | 175.8|


> Cache affinity calculation is slow with large nodes number
> ----------------------------------------------------------
>
>                 Key: IGNITE-3018
>                 URL: https://issues.apache.org/jira/browse/IGNITE-3018
>             Project: Ignite
>          Issue Type: Bug
>          Components: cache
>            Reporter: Semen Boikov
>            Assignee: Yakov Zhdanov
>              Labels: important
>             Fix For: 2.0
>
>         Attachments: 003.png, 004.png, 008.png, 016.png, 064.png, 100.png, 
> 128.png, 200.png, 256.png, 400.png, 600.png, balanced.003.png, 
> balanced.004.png, balanced.008.png, balanced.016.png, balanced.064.png, 
> balanced.100.png, balanced.128.png, balanced.200.png, balanced.256.png, 
> balanced.400.png, balanced.600.png
>
>
> With large number of cache server nodes (> 200)  RendezvousAffinityFunction 
> and FairAffinityFunction work pretty slow .
> For RendezvousAffinityFunction.assignPartitions can take hundredes of 
> milliseconds, for FairAffinityFunction it can take seconds.
> For RendezvousAffinityFunction most time is spent in MD5 hash calculation and 
> nodes list sorting. As optimization we can try to cache {partion, node} MD5 
> hash or try another hash function. Also several minor optimizations are 
> possible (avoid unncecessary allocations, only one thread local 'get', etc).



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Reply via email to