Most types of data stores that you deploy with ArcGIS Data Store can be deployed on a single-machine and provide another option that allows for more than one machine to deliver high availability, scalability, or both.
Each data store type has a default mode in which it is deployed. When you create a data store using the Data Store configuration wizard, the default mode is always used. To create a data store using a mode other than its default mode, you must use the configuredatastore utility.
The following table lists default modes and other options for each data store type:
|Data store type||Default mode||Other mode option||Notes|
Beginning with 11.2, a graph store can contain one or two machines.
Graph stores created in 11.1 or earlier run in single instance mode.
You cannot change modes after deploying a graph store.
Single instance mode supports a single machine. Cluster mode supports three or more machines.
You cannot change modes after deploying an object store.
Relational data store
Relational data stores can include one or two machines.
Spatiotemporal big data store
Spatiotemporal big data stores can contain a single machine or three or more machines.
Tile cache data store
A single-machine deployment is supported with either mode. When deployed in primary-standby mode, the tile cache data store can contain two machines. When deployed in cluster mode, the tile cache data store can contain three or more machines.
You can use the configuredatastore utility to change from primary-standby mode to cluster mode, but not cluster to primary-standby.
If you don't need ArcGIS Data Store to be highly available or scalable, you can create each data store using its default deployment mode.
If you deploy a data store on a single, dedicated machine, ensure that machine has a large amount of disk space and memory.
Relational and spatiotemporal big data stores can be extended beyond a single machine at any time.
Tile cache data stores can be extended beyond a single machine, but the mode of the tile cache data store affects how many machines you can add. So even if you only need one machine now, you must consider whether you may need high availability (primary-standby) or scalability (cluster) in the future.
Object stores and graph stores can also be single-machine deployments, but you cannot change their modes after you create them. Therefore, it is important to consider future needs to ensure you create them in the correct mode.
Prior to ArcGIS Data Store 11.2, only single instance mode was available for the graph store. Even when you upgrade your deployment, the graph store is still in single instance mode.
In primary-standby mode, the relational data store, tile cache data store, and graph store can each contain up to two machines. Both machines contain the same data. Hosted web layers access the data on the primary machine. If the primary machine fails, the standby machine becomes the primary machine, and hosted layers access the data on the new primary machine. This allows continuous access to the layers while you, as the ArcGIS Data Store administrator, recover or replace the machine that failed.
The first machine on which you install ArcGIS Data Store and create a relational or tile cache data store or graph store is the primary data store machine. You can install and configure one other relational or tile cache data store or graph store machine with the same GIS Server site, making this second data store machine the standby machine. Data is replicated from the primary to the standby machine. The standby becomes primary if the primary machine fails.
See Add machines to a data store for more information about implementing a primary-standby data store.
Graph stores deployed with ArcGIS Data Store 11.2 and later are deployed in primary-standby mode automatically and can be extended to two machines at any time. If you upgrade a graph store from 11.1 or earlier and require a highly available graph store, you cannot add machines to it; however, it is possible to restore the graph store to a new machine to change the graph store's mode to primary-standby. See the technical article, Re-create a graph store in primary-standby mode after upgrading ArcGIS Enterprise for instructions.
The following is a list of situations for which the standby machine becomes the primary data store. Note that the following three situations involve hardware or software failures.
- The primary data store stops working. ArcGIS Data Store attempts to restart the data store on the primary machine. If it cannot restart, the data store fails over to the standby.
- The primary's web app stops running and attempts to restart the web app on the primary machine. In the rare case that this does not work, the data store fails over to the standby machine.
- The primary machine is unavailable. This can happen if the computer crashes, is unplugged, or loses network connectivity. For relational and tile cache data stores, ArcGIS Data Store fails over to the standby machine if three consecutive attempts to connect to the primary machine fail. For graph stores, ArcGIS Data Store fails over after two unsuccessful attempts to connect to the primary machine.
The only human-initiated situations that cause a failover are if the primary data store machine is deliberately taken offline, or the ArcGIS Server site administrator runs the makePrimary REST command on the standby machine.
Shutting down an on-premises Microsoft Windows machine that is serving as the primary ArcGIS Data Store machine does not cause the data store to fail over because Windows shuts down all services before shutting down the machine. Therefore, if you need the data store to be available while that machine is offline, manually promote the standby machine to primary first and then shut down the former primary ArcGIS Data Store Windows machine.
- Primary-standby mode allows hosted layers to be highly available.
- Because scene layers can access data on both machines for read-only queries, drawing times are faster for tile cache data stores than if you use cluster mode.
- You cannot scale beyond two machines.
The cluster mode is available for object stores, tile cache data stores, and spatiotemporal big data stores to allow you to scale the deployment to include additional machines as storage needs increase.
In cluster mode, data stores should contain an odd number of machines and must contain a minimum of three machines. Therefore, install ArcGIS Data Store on three or more machines, configure the same type of data store on each machine, and be sure to specify the same hosting GIS Server site when creating the data store.
Cluster mode behavior differs for each type of data store for which it is supported. Use the links below for descriptions of cluster behavior for each data store type:
- You can add machines to the data store to meet storage needs.
- Even if one machine is lost, data is available on at least one other machine. As long as the other machine is available, the hosted layer is still usable.
- For tile cache data stores, query and drawing times are slower because scene layers have to query multiple machines for data.
- For tile cache data stores, existing scene caches are not distributed automatically to machines you add to the tile cache data store.