This section contains all you need to know to operate databases hosted on Redis Enterprise Software.
When enabling Causal Consistency in CRDBs, the order of operations on a specific key will be maintained across all CRDB instances. For instance, if operations A and B were applied on the same key, and B was performed after the effect of A was observed by the CRDB Instance that initiated B, then all CRDB instances would observe the effect of A before observing the effect of B. This way, any causal relationship between operations on the same key is also observed and maintained by every replica.
CRDBs span multiple Redis Enterprise Software (RS) clusters. Overview of the steps to create a CRDB: Create a service account on each cluster as an admin. Confirm network is setup. Connect to one of your clusters and configure a new CRDB. Test writing to one cluster and reading from a different cluster. Prerequisites Two or more machines with the same version of RS installed Networking and cluster FQDN name resolution between all clusters Network time service listener (ntpd) configured and running on each node in all clusters Step 1 - Create a Service Account A local account with the Admin role is highly recommended on each cluster that will host a CRDB.
You can create as many databases as you wish in the cluster, so long as you do not exceed the available memory or the number of shards you purchased with your subscription. There are two types of Redis databases that can be created in RS. Traditional Redis databases that are sharded and distributed across a single RS cluster. The detailed instructions are covered below. Conflict-Free Replicated Database (CRDB) which is used to create a Geo-Distributed Active-Active Redis database.
In the Alerts section of the Redis Enterprise Software database page, you can designate which database events will trigger alert notifications. For instructions on configuring alerts at the cluster level, refer to Managing cluster alerts. Some alerts can only be turned on or off, such as Periodic backup failed. Some alerts require setting a threshold, such as Dataset size has reached a certain percentage of its limit. Configured alerts appear in the database Status field, in the Log page, and can also be sent by email.
When you set a database's memory limit, you define the maximum size the database can reach in the cluster, across all database replicas and shards, including: Slave shards (if database replication is enabled) Database shards (if database clustering is enabled) If the total size of the database in the cluster reaches the memory limit, the data eviction policy that was defined for the database is applied. The following examples show how different database configurations affect the total database size.
To delete a database in Redis Enterprise Software (RS): Click the relevant database row in the Databases page. The selected database page appears. Select the Configuration tab. Click Delete at the bottom of the page. Confirm the deletion.
Deleting a CRDB is a nearly identical procedure to standard Redis databases in Redis Enterprise Software, but with a critical distinction. Since CRDBs span multiple Participating Clusters, there is more extensive administrative work being done on the clusters on your behalf. When you click the button on the configuration tab to delete a CRDB, this action is an immediate, non-reversible, and has no rollback. The cluster deletes all member databases from all Participating Clusters on your behalf.
The eviction policy designates a data eviction method for Redis Enterprise Software (RS) to use when the database size reaches its limit. You can select any of the following: Policy Description noeviction Returns an error if the memory limit has been reached when trying to insert more data allkeys-lru Evicts the least recently used keys out of all keys allkeys-random Randomly evicts keys out of all keys volatile-lru Evicts the least recently used keys out of all keys with an "expire" field set volatile-ttl Evicts the shortest time-to-live and least recently used keys out of all keys with an "expire" field set.
Using the Export option, you can back up a database at any time to an FTP server, Amazon S3, or OpenStack Object Storage ("Swift"). Other cloud storage options, such as Azure Geo-Redundant Storage, SoftLayer Object Storage, and Google Cloud Storage will be added in a future release. You cannot back up to the local machine. To export data from a database: In databases, click on the database that you want to export data from.
There are times where you want to delete all database data. Warning - The flush command deletes ALL of the data in the database. This includes all data in memory and persisted to disk. We recommend that you backup your database first. flushall for Redis Enterprise Software Databases You can flush a database from the command line with the redis-cli command or with your favorite Redis client.
When you enable database replication for your database, RS replicates your data to a slave node to make sure that your data is highly available. Whether the slave node fails or the master node fails and the slave is promoted to master, the remaining master node is a single point of failure. You can configure high availability for slave shards (slave HA) so that the cluster automatically migrates the slave shards to another available node.
You can import data into a Redis Enterprise Software database from an HTTP location, FTP server, Amazon S3, or OpenStack Object Storage ("Swift"). You can either import from a single file, or from multiple files in case you are importing from a backup of a sharded database. For additional details, refer to the Backup of a sharded database section in Database backup. Note: Importing data via this method will erase all existing content in the database.
When importing data into a CRDB, there are two options: Perform a flushall to the database, thus deleting all data. Then import the data into the CRDB. Import data but merge it into the existing or add new data from the import file. When using option #2, there are special considerations to be aware of. Unlike a traditional Redis database, CRDBs have a numeric counter data type and thus require special ways to increment.
On the Database > Metrics page you can view detailed real-time graphs of various database metrics, as well as shard-related metrics. Database metrics You can choose which metrics are shown in each of the two detailed graphs at the top of the page, as follows: Below the top two graphs there is a group of smaller graphs that display all available metrics, such as CPU utilization and operations per second.
You can back up your dataset to an FTP server, Amazon S3, or OpenStack Object Storage ("Swift"), periodically, or ad-hoc. You cannot back up to the local machine. Other cloud storage options, such as Azure Geo-Redundant Storage, SoftLayer Object Storage and Google Cloud Storage will be added in a future release. The backup process creates compressed (.gz) RDB files. Note: It is your responsibility to manage the backup location; Redis Enterprise Software does not delete old backups or monitor the amount of space left in the folder.
You can change the configuration of a Redis Enterprise Software database at any time. To edit the configuration of a database: Click the relevant database row on the Databases page. The selected database page appears. Select the Configuration tab. Click Edit at the bottom of the page. The database settings appear. You can edit any of the configurable parameters. For explanation, refer to Creating a new database. Click Update. Updating CRDB configuration