Main entry-point for all GridGain APIs. You can obtain an instance of {@code Grid} through {@link GridGain#grid()}, or for named grids you can use {@link GridGain#grid(String)}. Note that you can have multiple instances of {@code Grid} running in the same VM by givingeach instance a different name.
Note that {@code Grid} extends {@link GridProjection} which means that it provides grid projectionfunctionality over the whole grid (instead os a subgroup of nodes).
In addition to {@link GridProjection} functionality, from here you can get the following:
- {@link GridCache} - functionality for in-memory distributed cache.
- {@link GridDataLoader} - functionality for loading data large amounts of data into cache.
- {@link GridDr} - functionality for WAN-based Data Center Replication of in-memory cache.
- {@link GridGgfs} - functionality for distributed Hadoop-compliant in-memory file system and map-reduce.
- {@link GridStreamer} - functionality for streaming events workflow with queries and indexes into rolling windows.
- {@link GridScheduler} - functionality for scheduling jobs using UNIX Cron syntax.
- {@link GridProduct} - functionality for licence management and update and product related information.
- {@link GridCompute} - functionality for executing tasks and closures on all grid nodes (inherited form {@link GridProjection}).
- {@link GridMessaging} - functionality for topic-based message exchange on all grid nodes (inherited form {@link GridProjection}).
- {@link GridEvents} - functionality for querying and listening to events on all grid nodes (inherited form {@link GridProjection}).
{@code Grid} also provides a handle on {@link #nodeLocalMap()} which provides map-like functionalitylinked to current grid node. Node-local map is useful for saving shared state between job executions on the grid. Additionally you can also ping, start, and restart remote nodes, map keys to caching nodes, and get other useful information about topology.