Skip to content

Commit d565a04

Browse files
authored
Merge pull request #205900 from flang-msft/fxl---New-docs-page-for-Redis-Modules
Fxl---new docs page for redis modules
2 parents 55ae217 + 87e8675 commit d565a04

File tree

4 files changed

+148
-1
lines changed

4 files changed

+148
-1
lines changed

articles/azure-cache-for-redis/TOC.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -111,6 +111,8 @@
111111
href: ./security-controls-policy.md
112112
- name: Security baseline
113113
href: /security/benchmark/azure/baselines/azure-cache-for-redis-security-baseline?toc=/azure/azure-cache-for-redis/TOC.json
114+
- name: Redis modules
115+
href: cache-redis-modules.md
114116
- name: Caching architecture
115117
href: /azure/architecture/best-practices/caching?toc=%2fazure%2fredis-cache%2ftoc.json
116118
- name: How-to guides
Lines changed: 135 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,135 @@
1+
---
2+
title: Using Redis modules with Azure Cache for Redis
3+
description: You can use Redis modules with your Azure Cache for Redis instances.
4+
author: flang-msft
5+
6+
ms.author: franlanglois
7+
ms.service: cache
8+
ms.topic: conceptual
9+
ms.date: 07/26/2022
10+
ms.custom: template-concept
11+
12+
---
13+
# Use Redis modules with Azure Cache for Redis
14+
15+
With Azure Cache for Redis, you can use Redis modules as libraries to add more data structures and functionality to the core Redis software. You add the modules at the time you're creating your Enterprise tier cache.
16+
17+
For more information on creating an Enterprise cache, see [Quickstart: Create a Redis Enterprise cache](quickstart-create-redis-enterprise.md).
18+
19+
Modules were introduced in open-source Redis 4.0. The modules extend the use-cases of Redis by adding functionality like search capabilities and data structures like **bloom and cuckoo filters**.
20+
21+
## Scope of Redis modules
22+
23+
Some popular modules are available for use in the Enterprise tier of Azure Cache for Redis:
24+
25+
| Module |Basic, Standard, and Premium |Enterprise |Enterprise Flash |
26+
|---------|---------|---------|---------|
27+
|RediSearch | No | Yes | Yes (preview) |
28+
|RedisBloom | No | Yes | No |
29+
|RedisTimeSeries | No | Yes | No |
30+
|RedisJSON | No | Yes (preview) | Yes (preview) |
31+
32+
Currently, `RediSearch` is the only module that can be used concurrently with active geo-replication.
33+
34+
> [!NOTE]
35+
> Currently, you can't manually load any modules into Azure Cache for Redis. Manually updating modules version is also not possible.
36+
>
37+
38+
## Client library support
39+
40+
The standard Redis client libraries have a varying amounts of support for each module. Some modules have specific libraries that add client support. Check the Redis [documentation pages](#modules) for each module to see more detail on which client libraries support them.
41+
42+
## Adding modules to your cache
43+
44+
You must add modules when you create your Enterprise tier cache. To add a module or modules when creating a new cache, use the settings in the Advanced tab of the Enterprise tier caches.
45+
46+
You can add all the available modules or to select only specific modules to install.
47+
48+
:::image type="content" source="media/cache-how-to-use-modules/cache-add-modules.png" alt-text="Screenshot of advanced tab showing a list of modules to add to a new cache. ":::
49+
50+
> [!IMPORTANT]
51+
> Modules must be enabled at the time you create an Azure Cache for Redis instance.
52+
53+
For more information, see [Quickstart: Create a Redis Enterprise cache](quickstart-create-redis-enterprise.md).
54+
55+
## Modules
56+
57+
The following modules are available when creating a new Enterprise cache.
58+
59+
- [RediSearch](#redisearch)
60+
- [RedisBloom](#redisbloom)
61+
- [RedisTimeSeries](#redistimeseries)
62+
- [RedisJSON](#redisjson)
63+
64+
### RediSearch
65+
66+
The **RediSearch** module adds a real-time search engine to your cache combining low latency performance with powerful search features.
67+
68+
Features include:
69+
70+
- Multi-field queries
71+
- Aggregation
72+
- Prefix, fuzzy, and phonetic-based searches
73+
- Auto-complete suggestions
74+
- Geo-filtering
75+
- Boolean queries
76+
77+
Additionally, **RediSearch** can function as a secondary index, expanding your cache beyond a key-value structure and offering more sophisticated queries.
78+
79+
You can use **RediSearch** is used in a wide variety of use-cases, including real-time inventory, enterprise search, and in indexing external databases. [For more information, see the RediSearch documentation page](https://redis.io/docs/stack/search/).
80+
81+
>[!IMPORTANT]
82+
> The RediSearch module can only be used with the `Enterprise` clustering policy. For more information, see [Clustering Policy](quickstart-create-redis-enterprise.md#clustering-policy).
83+
84+
>[!NOTE]
85+
> The RediSearch module is the only module that can be used with active geo-replication.
86+
87+
### RedisBloom
88+
89+
RedisBloom adds four probabilistic data structures to a Redis server: **bloom filter**, **cuckoo filter**, **count-min sketch**, and **top-k**. Each of these data structures offers a way to sacrifice perfect accuracy in return for higher speed and better memory efficiency.
90+
91+
| **Data structure** | **Description** | **Example application**|
92+
| ---------------------|------------------------|-------------------------|
93+
| **Bloom and Cuckoo filters** | Tells you if an item is either (a) certainly not in a set or (b) potentially in a set. | Checking if an email has already been sent to a user|
94+
|**Count-min sketch** | Determines the frequency of events in a stream | Counting how many times an IoT device reported a temperature under 0 degrees Celsius. |
95+
|**Top-k** | Finds the `k` most frequently seen items | Determine the most frequent words used in War and Peace. (for example, setting k = 50 will return the 50 most common words in the book) |
96+
97+
**Bloom and Cuckoo** filters are similar to each other, but each has a unique set of advantages and disadvantages that are beyond the scope of
98+
this documentation.
99+
100+
For more information, see [RedisBloom](https://redis.io/docs/stack/bloom/).
101+
102+
### RedisTimeSeries
103+
104+
The **RedisTimeSeries** module adds high-throughput time series capabilities to your cache. This data structure is optimized for high volumes of incoming data and contains features to work with time series data, including:
105+
106+
- Aggregated queries (for example, average, maximum, standard deviation, etc.)
107+
- Time-based queries (for example, start-time and end-time)
108+
- Downsampling/decimation
109+
- Data labeling for secondary indexing
110+
- Configurable retention period
111+
112+
This module is useful for many applications that involve monitoring streaming data, such as IoT telemetry, application monitoring, and anomaly detection.
113+
114+
For more information, see [RedisTimeSeries](https://redis.io/docs/stack/timeseries/).
115+
116+
### RedisJSON
117+
118+
The **RedisJSON** module adds the capability to store, query, and search JSON-formatted data. This functionality is useful for storing document-like data within your cache.
119+
120+
Features include:
121+
122+
- Full support for the JSON standard
123+
- Wide range of operations for all JSON data types, including objects, numbers, arrays, and strings
124+
- Dedicated syntax and fast access to select and update elements inside documents
125+
126+
The **RedisJSON** module is also designed for use with the **RediSearch** module to provide integrated indexing and querying of data within a Redis server. Using both modules together can be a powerful tool to quickly retrieve specific data points within JSON objects.
127+
128+
Some common use-cases for **RedisJSON** include applications such as searching product catalogs, managing user profiles, and caching JSON-structured data.
129+
130+
For more information, see [RedisJSON](https://redis.io/docs/stack/json/).
131+
132+
## Next steps
133+
134+
- [Quickstart: Create a Redis Enterprise cache](quickstart-create-redis-enterprise.md)
135+
- [Client libraries](cache-best-practices-client-libraries.md)

articles/azure-cache-for-redis/cache-whats-new.md

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,12 +5,22 @@ author: flang-msft
55
ms.author: franlanglois
66
ms.service: cache
77
ms.topic: reference
8-
ms.date: 07/27/2022
8+
ms.date: 08/01/2022
99

1010
---
1111

1212
# What's New in Azure Cache for Redis
1313

14+
## August 2022
15+
16+
### RedisJSON module available in Azure Cache for Redis Enterprise
17+
18+
The Enterprise and Enterprise Flash tiers of Azure Cache for Redis now support the **RedisJSON** module. This module adds native functionality to store, query, and search JSON-formatted data that allows you to store data more easily in a document-style format in Redis. By using this module, you simplify common use cases like storing product catalog or user profile data.
19+
20+
The **RedisJSON** module implements the community version of the module so you can use your existing knowledge and workstreams. **RedisJSON** is designed for use with the search functionality of **RediSearch**. Using both modules provides integrated indexing and querying of data. For more information, see [RedisJSON](https://aka.ms/redisJSON).
21+
22+
The **RediSearch** module is also now available for Azure Cache for Redis. For more information on using Redis modules in Azure Cache for Redis, see [Use Redis modules with Azure Cache for Redis](cache-redis-modules.md).
23+
1424
## July 2022
1525

1626
### Redis 6 becomes default for new cache instances
66 KB
Loading

0 commit comments

Comments
 (0)