Apache Ignite.NET

The Apache Ignite .NET Developer Hub

Welcome to the Apache Ignite .NET developer hub. You'll find comprehensive guides and documentation to help you start working with Apache Ignite.NET as quickly as possible, as well as support if you get stuck. Let's jump right in!

Get Started    

Ignite Persistence

Apache Ignite Distributed Persistent Store

Ignite Persistent Store is a distributed ACID and SQL-compliant disk store that transparently integrates with Ignite's durable memory as an optional disk layer storing data and indexes on SSD, Flash, 3D XPoint, and other types of non-volatile storages.

With persistent store enabled, you no longer need to keep all the data and indexes in memory or warm it up after a node or cluster restart because Apache Durable Memory is tightly coupled with the Persistent Store and treats it as a secondary storage. This implies that if a subset of data or an index is missing in RAM, the durable memory will take it from disk.

A detailed overview is given in the respective Java documentation.

Usage

To enable the distributed Persistent Store, set the IgniteConfiguration.PersistentStoreConfiguration property:

var cfg = new IgniteConfiguration
{
  // Enable persistence with default settings.
  PersistentStoreConfiguration = new PersistentStoreConfiguration()
};

Ignition.Start(cfg);
<igniteConfiguration>
  <persistentStoreConfiguration />
</igniteConfiguration>

Once the Persistent Store is enabled, all the data as well as indexes will be stored both in memory and on disk across all the cluster nodes.

When Apache Ignite sees that the store is enabled, it moves the cluster from active to inactive state making sure that applications can not modify the data until allowed. This is done to avoid situations where the cluster is being restarted and applications start modifying data that might be persisted on the nodes that have not been brought back up yet. So, the general practice here is to wait while all the nodes join the cluster and call IIgnite.SetActive(true) from any node or application you have, moving the cluster to the active state.

Persistent Store Root Path

By default, all the data is persisted in the Apache Ignite working directory (IGNITE_HOME\work). Use PersistentStoreConfiguration.PersistentStorePath property to change the default directory.

Ignite Persistence

Apache Ignite Distributed Persistent Store