Persisting Table Data to GemFire XD Disk Stores

By default, a GemFire XD distributed system persists only the data dictionary for the tables and indexes you create. These persistence files are stored in the datadictionary subdirectory of each locator and data store that joins the distributed system. In-memory table data, however, is not persisted by default; if you shut down all GemFire XD members, non-persistent tables are empty on the next startup. You have the option to persist all table data to disk as a backup of the in-memory copy, or to overflow table data to disk when it is evicted from memory.

You can use the PERSISTENT keyword with both HDFS and non-HDFS tables in order to preserve the table's in-memory data.

Note: As a best practice, set enable-network-partition-detection to true in any GemFire XD distributed system that persists data. When partition detection is disabled, network segmentation can cause subgroups of members to work on inconsistent data. Restarting those members then fails with a ConflictingPersistentDataException, because members in the subgroups persisted inconsistent data to local disk store files. See Detecting and Handling Network Segmentation ("Split Brain") and Member Startup Problems.
Note: With HDFS-persistent tables, GemFire XD does not restore the in-memory, operational table data through member restarts unless the table is created with the PERSISTENT clause. This means that if you shut down or restart a member that hosts an HDFS table, by default the in-memory data for that table is not restored. Although that data still resides in HDFS log files, GemFire XD does not provide a mechanism for restoring the data to heap or off-heap memory.