Skip to content

Commit 86c0c04

Browse files
committed
touchups
1 parent 05db0e8 commit 86c0c04

File tree

3 files changed

+19
-21
lines changed

3 files changed

+19
-21
lines changed

articles/azure-cache-for-redis/cache-migration-guide.md

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -14,11 +14,11 @@ appliesto:
1414
---
1515
# Migrate to or between Azure Cache for Redis instances
1616

17-
This article describes several Azure Cache for Redis migration scenarios. You can migrate Redis caches running in private data centers, on cloud virtual machines (VMs), or in another cloud to Azure Cache for Redis.
17+
This article describes several Azure Cache for Redis migration scenarios. You can migrate open-source Redis caches running on-premises or in cloud virtual machines (VMs), or hosted caches from other cloud platforms, to Azure Cache for Redis.
1818

1919
You can also migrate one Azure Cache for Redis instance to another instance. If you only need to move an Azure Redis cache from one Azure region to another, see [Move Azure Cache for Redis instances to different regions](cache-moving-resources.md).
2020

21-
Open-source Redis can run in many compute environments, such as private on-premises data centers or cloud-hosted virtual machines (VMs). Other hosting platforms like Amazon Web Services (AWS) host Redis cache services like AWS ElastiCache. You can usually migrate these Redis caches to Azure Cache for Redis with minimal interruption or downtime.
21+
Open-source Redis can run in many compute environments, such as private on-premises data centers or cloud-hosted VMs. Other hosting platforms like Amazon Web Services (AWS) host Redis cache services like AWS ElastiCache. You can usually migrate these Redis caches to Azure Cache for Redis with minimal interruption or downtime.
2222

2323
## Migration options
2424

@@ -33,7 +33,7 @@ How you migrate from one cache to another depends on where your cache exists and
3333

3434
### Create a new cache
3535

36-
If uninterrupted operations and potential data loss aren't concerns, the easiest way to move data to Azure Cache for Redis is to create an Azure Redis cache instance and connect your application to it. This approach isn't technically a migration. For example, if you use Redis as a look-aside cache of database records, you can easily rebuild the cache from scratch.
36+
If uninterrupted operations and potential data loss aren't concerns, the easiest way to move data to Azure Cache for Redis is to create an Azure Redis cache instance and connect your application to it. For example, if you use Redis as a look-aside cache of database records, you can easily rebuild the cache from scratch. This approach isn't technically a migration.
3737

3838
General steps to implement this option are:
3939

@@ -50,20 +50,20 @@ Open-source Redis defines a standard mechanism to take a snapshot of a cache's i
5050
5151
General steps to implement this option are:
5252

53-
1. Save a snapshot of the existing Redis cache. You can [configure Redis to save snapshots](https://redis.io/topics/persistence) periodically, or save manually using the [SAVE](https://redis.io/commands/save) or [BGSAVE](https://redis.io/commands/bgsave) commands. The RDB file is named *dump.rdb* by default and is located at the path specified in the *redis.conf* configuration file.
53+
1. Save a snapshot of the existing Redis cache. You can [configure Redis to save snapshots](https://redis.io/topics/persistence) periodically, or save one manually using the [SAVE](https://redis.io/commands/save) or [BGSAVE](https://redis.io/commands/bgsave) commands. The RDB file is named *dump.rdb* by default and is located at the path specified in the *redis.conf* configuration file.
5454
1. Create a new Premium-tier Azure Cache for Redis instance that's at least as large as the existing cache.
5555
1. Copy the RDB file to an Azure storage account in the region where your new cache is located. You can use `AzCopy` for this task.
5656
1. [Import](cache-how-to-import-export-data.md#import) the RDB file into the new cache. You can also use the PowerShell [Import-AzRedisCache](/powershell/module/az.rediscache/import-azrediscache) cmdlet.
5757
1. Update your application to use the new cache instance.
5858

5959
> [!NOTE]
60-
> To migrate data from another Azure Redis instance, first [export](cache-how-to-import-export-data.md#export) the RDB file from that instance, or use the PowerShell [Export](/powershell/module/az.rediscache/export-azrediscache) cmdlet.
60+
> To migrate data from another Azure Redis instance, first [export](cache-how-to-import-export-data.md#export) the RDB file from that instance, or use the PowerShell [Export-AzRedisCache](/powershell/module/az.rediscache/export-azrediscache) cmdlet.
6161
6262
### Write to two Redis caches during migration
6363

64-
Rather than moving data between caches, you can temporarily set your application to write data to both an existing cache and a new one. The application reads data from the existing cache initially. When the new cache has enough data, you switch the application to that cache and retire the old one.
64+
Rather than moving data between caches, you can temporarily set your application to write data to both an existing cache and a new one. The application reads data from the existing cache initially. When the new cache has enough data, you can switch the application to that cache and retire the old one.
6565

66-
For example, suppose you use Redis as a session store and the application sessions expire after seven days. After writing to both caches for seven days, you know the new cache contains all nonexpired session information and you can safely rely on it from that point on.
66+
For example, suppose you use Redis as a session store and the application sessions expire after seven days. After writing to both caches for seven days, you know the new cache contains all nonexpired session information and you can safely rely on it from that point on. You can then retire the old cache.
6767

6868
General steps to implement this option are:
6969

articles/azure-cache-for-redis/cache-retired-features.md

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -17,8 +17,7 @@ appliesto:
1717

1818
On June 30, 2023, Redis version 4 was retired for Azure Cache for Redis instances. All new Azure Redis instances are version 6.
1919

20-
21-
All existing Azure Redis instances were upgraded automatically to version 6. Redis version 6 is compatible with version 4 and applications continued to function seamlessly after the version upgrade.
20+
Existing Azure Redis instances were upgraded automatically to version 6. Redis version 6 is compatible with version 4 and applications continued to function seamlessly after the version upgrade.
2221

2322
During the upgrade process, the replica node of the cache was first upgraded to run Redis version 6. The upgrade replica node then took over as the primary cache node while the former primary node rebooted to take on the role of replica. This process was exactly like the patching process described in [How does patching occur?](cache-failover.md#how-does-patching-occur)
2423

@@ -28,8 +27,8 @@ During the upgrade process, the replica node of the cache was first upgraded to
2827

2928
- Cache instances that had geo-replication enabled had to unlink the caches before upgrade, upgrade both caches, and relink them after the upgrade.
3029

31-
- Cache instances that were affected by Cloud Service retirement couldn't upgrade to Redis 6 until after they migrated to a cache built on Virtual Machine Scale Set. Otherwise the automatic migration required around 30 minutes of downtime and full data loss on the cache.
30+
- Caches that were affected by Cloud Service retirement had to migrate to a caches built on Virtual Machine Scale Set, or undergo an automatic upgrade requiring 30 minutes of downtime and full cache data loss.
3231

33-
For more information about upgrading Redis versions in Azure Cache for Redis, see [How to upgrade the version of your Redis instance](cache-how-to-upgrade.md). The upgrade process can be triggered through REST API, Azure CLI, or PowerShell command. Also see [Best practices for connection resilience](cache-best-practices-connection.md).
32+
The Redis version upgrade process can be triggered through REST API, Azure CLI, or PowerShell command. For more information about upgrading Redis versions in Azure Cache for Redis, see [How to upgrade the version of your Redis instance](cache-how-to-upgrade.md). Also see [Best practices for connection resilience](cache-best-practices-connection.md).
3433

3534
To check the Redis version of your cache instance, select **Properties** from the left navigation menu of your cache page in the Azure portal.

articles/azure-cache-for-redis/cache-troubleshoot-data-loss.md

Lines changed: 9 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -36,8 +36,7 @@ Azure Cache for Redis removes a key automatically if the key is assigned a timeo
3636

3737
To get statistics on how many keys have expired, use the [INFO](https://redis.io/commands/info) command. The `Stats` section shows the total number of expired keys. The `Keyspace` section provides more information about the number of keys with timeouts and the average timeout value.
3838

39-
```console
40-
39+
```output
4140
# Stats
4241
4342
expired_keys:46583
@@ -51,9 +50,9 @@ db0:keys=3450,expires=2,avg_ttl=91861015336
5150

5251
Azure Cache for Redis requires memory space to store data and purges keys to free up available memory when necessary. When the `used_memory` or `used_memory_rss` values approach the configured `maxmemory` setting, Azure Redis starts evicting keys from memory based on [cache policy](https://redis.io/topics/lru-cache).
5352

54-
You can monitor the number of evicted keys by using the [INFO](https://redis.io/commands/info) command:
53+
You can monitor the number of evicted keys by using the [INFO](https://redis.io/commands/info) command.
5554

56-
```console
55+
```output
5756
# Stats
5857
5958
evicted_keys:13224
@@ -63,7 +62,7 @@ evicted_keys:13224
6362

6463
Redis clients can issue the Redis [DEL](https://redis.io/commands/del) or [HDEL](https://redis.io/commands/hdel) commands to explicitly remove keys from Azure Redis. You can track the number of delete operations by using the [INFO](https://redis.io/commands/info) command. If `DEL` or `HDEL` commands were called, they're listed in the `Commandstats` section.
6564

66-
```console
65+
```output
6766
# Commandstats
6867
6968
cmdstat_del:calls=2,usec=90,usec_per_call=45.00
@@ -75,7 +74,7 @@ cmdstat_hdel:calls=1,usec=47,usec_per_call=47.00
7574

7675
Standard or Premium tier Azure Cache for Redis instances are configured with a primary node and at least one replica. Data is copied from the primary to a replica asynchronously by using a background process.
7776

78-
The [redis.io](https://redis.io/topics/replication) website describes how Redis data replication works in general. For scenarios where clients write to Redis frequently, partial data loss can occur because replication isn't guaranteed to be instantaneous.
77+
[Redis replication](https://redis.io/topics/replication) on the Redis website describes how Redis data replication works in general. For scenarios where clients write to Redis frequently, partial data loss can occur because replication isn't designed to be instantaneous.
7978

8079
For example, if the primary goes down after a client writes a key to it, but before the background process has a chance to send that key to the replica, the key is lost when the replica takes over as the new primary.
8180

@@ -93,7 +92,7 @@ If most or all keys disappear from your cache, check the following possible caus
9392

9493
Azure Redis clients can call the Redis [FLUSHDB](https://redis.io/commands/flushdb) command to remove all keys in a single database or [FLUSHALL](https://redis.io/commands/flushall) to remove all keys from all databases in a Redis cache. To find out whether keys were flushed, use the [INFO](https://redis.io/commands/info) command. The `Commandstats` section shows whether either `FLUSH` command was called.
9594

96-
```console
95+
```output
9796
# Commandstats
9897
9998
cmdstat_flushall:calls=2,usec=112,usec_per_call=56.00
@@ -103,15 +102,15 @@ cmdstat_flushdb:calls=1,usec=110,usec_per_call=52.00
103102

104103
### Incorrect database selection
105104

106-
Azure Cache for Redis uses the `db0` database by default. If you switch to another database such as `db1` and try to read keys from it, Azure Redis doesn't find them. Every database is a logically separate unit and holds a different dataset. Use the Redis [SELECT](https://redis.io/commands/select) command to look for keys in other available databases.
105+
Every database is a logically separate unit and holds a different dataset. Azure Cache for Redis uses the `db0` database by default. If you switch to another database such as `db1` and try to read keys from it, Azure Redis doesn't find them. Use the Redis [SELECT](https://redis.io/commands/select) command to look for keys in other available databases.
107106

108107
### Redis instance failure
109108

110-
Redis is an in-memory data store that keeps data on the physical or virtual machines (VMs) that host the Redis cache. A Basic-tier Azure Cache for Redis instance runs on only a single virtual machine (VM). If that VM is down, all data that you stored in the cache is lost.
109+
Redis keeps data in memory on the physical or virtual machines (VMs) that host the Redis cache. A Basic-tier Azure Cache for Redis instance runs on only a single virtual machine (VM). If that VM goes down, all data that you stored in the cache is lost.
111110

112111
Caches in the Standard and Premium tiers offer higher resiliency against data loss by using two VMs in a replicated configuration. When the primary node in such a cache fails, the replica node takes over to serve data automatically.
113112

114-
These VMs are located on separate domains for faults and updates, to minimize the chance of both VMs becoming unavailable at once. If a major datacenter outage happens, however, both VMs could still go down together. In these rare cases, your data is lost. Consider using [Redis data persistence](https://redis.io/topics/persistence) and [geo-replication](cache-how-to-geo-replication.md) to improve data protection against infrastructure failures.
113+
These VMs are located on separate domains for faults and updates, to minimize the chance of both VMs becoming unavailable at once. If a major datacenter outage happens, however, both VMs could go down. In these rare cases, your data is lost. Consider using [data persistence](cache-how-to-premium-persistence.md) and [geo-replication](cache-how-to-geo-replication.md) to improve data protection against infrastructure failures.
115114

116115
## Related content
117116

0 commit comments

Comments
 (0)