Base class for predefined affinity functions.
More...
|
virtual int | GetPartition (object key) |
| Gets partition number for a given key starting from 0. Partitioned caches should make sure that keys are about evenly distributed across all partitions from 0 to Partitions for best performance. More...
|
|
virtual void | RemoveNode (Guid nodeId) |
| Removes node from affinity. This method is called when it is safe to remove disconnected node from affinity mapping. More...
|
|
virtual IEnumerable< IEnumerable< IClusterNode > > | AssignPartitions (AffinityFunctionContext context) |
| Gets affinity nodes for a partition. In case of replicated cache, all returned nodes are updated in the same manner. In case of partitioned cache, the returned list should contain only the primary and back up nodes with primary node being always first. <pare> Note that partitioned affinity must obey the following contract: given that node More...
|
|
|
virtual int | Partitions [get, set] |
| Gets or sets the total number of partitions. More...
|
|
virtual bool | ExcludeNeighbors [get, set] |
| Gets or sets a value indicating whether to exclude same-host-neighbors from being backups of each other. More...
|
|
int | Partitions [get] |
| Gets the total number of partitions. More...
|
|
N
is primary for some key K
, if any other node(s) leave grid and no node joins grid, node N
will remain primary for key K
.
- Parameters
-
context | The affinity function context. |
- Returns
- A collection of partitions, where each partition is a collection of nodes, where first node is a primary node, and other nodes are backup nodes.
Implements Apache.Ignite.Core.Cache.Affinity.IAffinityFunction.
virtual int Apache.Ignite.Core.Cache.Affinity.AffinityFunctionBase.GetPartition |
( |
object |
key | ) |
|
|
virtual |
Note that for fully replicated caches it is possible to segment key sets among different grid node groups. In that case each node group should return a unique partition number. However, unlike partitioned cache, mappings of keys to nodes in replicated caches are constant and a node cannot migrate from one partition to another.
- Parameters
-
key | Key to get partition for. |
- Returns
- Partition number for a given key.
Implements Apache.Ignite.Core.Cache.Affinity.IAffinityFunction.
virtual void Apache.Ignite.Core.Cache.Affinity.AffinityFunctionBase.RemoveNode |
( |
Guid |
nodeId | ) |
|
|
virtual |
const int Apache.Ignite.Core.Cache.Affinity.AffinityFunctionBase.DefaultPartitions = 1024 |
virtual bool Apache.Ignite.Core.Cache.Affinity.AffinityFunctionBase.ExcludeNeighbors |
|
getset |
virtual int Apache.Ignite.Core.Cache.Affinity.AffinityFunctionBase.Partitions |
|
getset |