Search Results for

    Show / Hide Table of Contents

    Interface IClusterGroup

    Defines grid projection which represents a common functionality over a group of nodes. Grid projection allows to group Ignite nodes into various subgroups to perform distributed operations on them. All ForXXX(...)' methods will create a child grid projection from existing projection. If you create a new projection from current one, then the resulting projection will include a subset of nodes from current projection. The following code snippet shows how to create grid projections:

    var g = Ignition.GetIgnite();
    
    // Projection over remote nodes.
    var remoteNodes = g.ForRemotes();
    
    // Projection over random remote node.
    var randomNode = g.ForRandom();
    
    // Projection over all nodes with cache named "myCache" enabled.
    var cacheNodes = g.ForCacheNodes("myCache");
    
    // Projection over all nodes that have user attribute "group" set to value "worker".
    var workerNodes = g.ForAttribute("group", "worker");

    Grid projection provides functionality for executing tasks and closures over nodes in this projection using GetCompute().

    All members are thread-safe and may be used concurrently from multiple threads.

    Namespace: Apache.Ignite.Core.Cluster
    Assembly: Apache.Ignite.Core.dll
    Syntax
    public interface IClusterGroup

    Properties

    Ignite

    Instance of Ignite.

    Declaration
    IIgnite Ignite { get; }
    Property Value
    Type Description
    IIgnite

    Methods

    ClearStatistics(IEnumerable<String>)

    Clears statistics for caches cluster wide.

    Declaration
    void ClearStatistics(IEnumerable<string> caches)
    Parameters
    Type Name Description
    IEnumerable<System.String> caches

    Collection of cache names.

    EnableStatistics(IEnumerable<String>, Boolean)

    Sets statistics enabled flag globally for the caches

    Declaration
    void EnableStatistics(IEnumerable<string> cacheNames, bool enabled)
    Parameters
    Type Name Description
    IEnumerable<System.String> cacheNames

    Collection of cache names to set the flag

    System.Boolean enabled

    Enabled flag

    ForAttribute(String, String)

    Creates projection for nodes containing given name and value specified in user attributes.

    Declaration
    IClusterGroup ForAttribute(string name, string val)
    Parameters
    Type Name Description
    System.String name

    Name of the attribute.

    System.String val

    Optional attribute value to match.

    Returns
    Type Description
    IClusterGroup

    Grid projection for nodes containing specified attribute.

    ForCacheNodes(String)

    Creates projection for all nodes that have cache with specified name running.

    Declaration
    IClusterGroup ForCacheNodes(string name)
    Parameters
    Type Name Description
    System.String name

    Cache name to include into projection.

    Returns
    Type Description
    IClusterGroup

    Projection over nodes that have specified cache running.

    ForClientNodes(String)

    Creates projection for all nodes that have cache with specified name running and cache distribution mode is CLIENT_ONLY or NEAR_ONLY.

    Declaration
    IClusterGroup ForClientNodes(string name)
    Parameters
    Type Name Description
    System.String name

    Cache name to include into projection.

    Returns
    Type Description
    IClusterGroup

    Projection over nodes that have specified cache running.

    ForDataNodes(String)

    Creates projection for all nodes that have cache with specified name running and cache distribution mode is PARTITIONED_ONLY or NEAR_PARTITIONED.

    Declaration
    IClusterGroup ForDataNodes(string name)
    Parameters
    Type Name Description
    System.String name

    Cache name to include into projection.

    Returns
    Type Description
    IClusterGroup

    Projection over nodes that have specified cache running.

    ForDotNet()

    Creates grid projection for nodes supporting .Net, i.e. for nodes started with Apache.Ignite.exe.

    Declaration
    IClusterGroup ForDotNet()
    Returns
    Type Description
    IClusterGroup

    Grid projection for nodes supporting .Net.

    ForHost(IClusterNode)

    Gets grid projection consisting from the nodes in this projection residing on the same host as given node.

    Declaration
    IClusterGroup ForHost(IClusterNode node)
    Parameters
    Type Name Description
    IClusterNode node

    Node residing on the host for which projection is created.

    Returns
    Type Description
    IClusterGroup

    Projection for nodes residing on the same host as passed in node.

    ForNodeIds(Guid[])

    Creates a grid projection over a given set of node IDs.

    Declaration
    IClusterGroup ForNodeIds(params Guid[] ids)
    Parameters
    Type Name Description
    Guid[] ids

    Collection of node IDs to create a projection from.

    Returns
    Type Description
    IClusterGroup

    Projection over provided Ignite node IDs.

    ForNodeIds(IEnumerable<Guid>)

    Creates a grid projection over a given set of node IDs.

    Declaration
    IClusterGroup ForNodeIds(IEnumerable<Guid> ids)
    Parameters
    Type Name Description
    IEnumerable<Guid> ids

    Collection of node IDs to create a projection from.

    Returns
    Type Description
    IClusterGroup

    Projection over provided Ignite node IDs.

    ForNodes(IClusterNode[])

    Creates a grid projection over a given set of nodes.

    Declaration
    IClusterGroup ForNodes(params IClusterNode[] nodes)
    Parameters
    Type Name Description
    IClusterNode[] nodes

    Collection of nodes to create a projection from.

    Returns
    Type Description
    IClusterGroup

    Projection over provided Ignite nodes.

    ForNodes(IEnumerable<IClusterNode>)

    Creates a grid projection over a given set of nodes.

    Declaration
    IClusterGroup ForNodes(IEnumerable<IClusterNode> nodes)
    Parameters
    Type Name Description
    IEnumerable<IClusterNode> nodes

    Collection of nodes to create a projection from.

    Returns
    Type Description
    IClusterGroup

    Projection over provided Ignite nodes.

    ForOldest()

    Creates grid projection with one oldest node in the current projection. The resulting projection is dynamic and will always pick the next oldest node if the previous one leaves topology even after the projection has been created.

    Declaration
    IClusterGroup ForOldest()
    Returns
    Type Description
    IClusterGroup

    Grid projection with one oldest node from the current projection.

    ForPredicate(Func<IClusterNode, Boolean>)

    Creates a grid projection which includes all nodes that pass the given predicate filter.

    Declaration
    IClusterGroup ForPredicate(Func<IClusterNode, bool> p)
    Parameters
    Type Name Description
    Func<IClusterNode, System.Boolean> p

    Predicate filter for nodes to include into this projection.

    Returns
    Type Description
    IClusterGroup

    Grid projection for nodes that passed the predicate filter.

    ForRandom()

    Creates grid projection with one random node from current projection.

    Declaration
    IClusterGroup ForRandom()
    Returns
    Type Description
    IClusterGroup

    Grid projection with one random node from current projection.

    ForRemotes()

    Gets grid projection consisting from the nodes in this projection excluding the local node.

    Declaration
    IClusterGroup ForRemotes()
    Returns
    Type Description
    IClusterGroup

    Grid projection consisting from the nodes in this projection excluding the local node.

    ForServers()

    Creates a cluster group of nodes started in server mode (ClientMode).

    Declaration
    IClusterGroup ForServers()
    Returns
    Type Description
    IClusterGroup

    Cluster group of nodes started in server mode.

    ForYoungest()

    Creates grid projection with one youngest node in the current projection. The resulting projection is dynamic and will always pick the newest node in the topology, even if more nodes entered after the projection has been created.

    Declaration
    IClusterGroup ForYoungest()
    Returns
    Type Description
    IClusterGroup

    Grid projection with one youngest node from the current projection.

    GetCompute()

    Gets compute functionality over this grid projection. All operations on the returned ICompute instance will only include nodes from this projection.

    Declaration
    ICompute GetCompute()
    Returns
    Type Description
    ICompute

    Compute instance over this grid projection.

    GetEvents()

    Gets events facade over nodes within this cluster group. All operations on the returned IEvents> instance will only include nodes from current cluster group.

    Declaration
    IEvents GetEvents()
    Returns
    Type Description
    IEvents

    Events instance over this cluster group.

    GetMessaging()

    Gets messaging facade over nodes within this cluster group. All operations on the returned IMessaging> instance will only include nodes from current cluster group.

    Declaration
    IMessaging GetMessaging()
    Returns
    Type Description
    IMessaging

    Messaging instance over this cluster group.

    GetMetrics()

    Gets a metrics snapshot for this projection

    Declaration
    IClusterMetrics GetMetrics()
    Returns
    Type Description
    IClusterMetrics

    Grid projection metrics snapshot.

    GetNode()

    Gets first node from the list of nodes in this projection.

    Declaration
    IClusterNode GetNode()
    Returns
    Type Description
    IClusterNode

    Node.

    GetNode(Guid)

    Gets a node for given ID from this grid projection.

    Declaration
    IClusterNode GetNode(Guid id)
    Parameters
    Type Name Description
    Guid id

    Node ID.

    Returns
    Type Description
    IClusterNode

    Node with given ID from this projection or null if such node does not exist in this projection.

    GetNodes()

    Gets read-only collections of nodes in this projection.

    Declaration
    ICollection<IClusterNode> GetNodes()
    Returns
    Type Description
    ICollection<IClusterNode>

    All nodes in this projection.

    GetServices()

    Gets services facade over nodes within this cluster group. All operations on the returned IServices> instance will only include nodes from current cluster group.

    Declaration
    IServices GetServices()
    Returns
    Type Description
    IServices

    Services instance over this cluster group.

    In This Article
    Back to top © 2015 - 2019 The Apache Software Foundation