diff --git a/content/develop/whats-new/6-2.md b/content/develop/whats-new/6-2.md new file mode 100644 index 0000000000..d9dae1474f --- /dev/null +++ b/content/develop/whats-new/6-2.md @@ -0,0 +1,55 @@ +--- +title: Redis 6.2 +alwaysopen: false +categories: +- docs +- operate +- rs +- rc +description: What's new in Redis 6.2 +linkTitle: What's new in Redis 6.2 +weight: 30 +--- + +Redis version 6.2 introduces new capabilities designed to improve data indexing, querying, and analytics. This update brings multi-value indexing, expanded wildcard query support, and a new probabilistic data structure for quantile estimation. Additionally, significant enhancements to Redis streams and time series data processing offer greater flexibility for developers working with real-time and historical datasets. Over 25 new commands have been added to Redis that address key feature requests and further extending its capabilities. +Below is a detailed breakdown of these improvements. + +## New features + +### Multi-value indexing and querying +Redis now supports indexing and querying multi-value attributes across all field types, including `TEXT`, `TAG`, `NUMERIC`, `GEO`, and `VECTOR`. Developers can define JSONPath expressions leading to arrays or multiple scalar values, overcoming the previous limitation of indexing only single scalar attributes. + +### Wildcard query support +The Redis Query Engine now enables suffix and infix wildcard searches for `TEXT` and `TAG` fields. This enhancement provides greater flexibility in data retrieval and filtering. + +### t-digest: a new probabilistic data structure for quantile estimation +Redis introduces t-digest, an advanced probabilistic data structure that efficiently estimates quantiles in large datasets or continuous data streams. This is particularly beneficial for analytics and monitoring applications where quantile calculations are required. + +### Retrieve aggregation results for ongoing time series buckets +A new feature allows users to retrieve the latest, still-open time series buckets during compaction. + +### Time-weighted average aggregator for time series +Redis now includes a time-weighted average aggregator, improving accuracy in average-over-time calculations. This feature is especially valuable for time series data with irregular sampling intervals. + +### Gap-filling for time series data +To improve time series analytics, Redis introduces gap-filling capabilities. This feature allows interpolation of missing values or repetition of the last known value for empty time buckets, ensuring continuity in time series analysis. + +## Improvements +### Existing data structures +Redis 6.2 introduces over 25 new commands, fulfilling long-standing community requests. Notably: + +- The long-awaited `ZUNION` and `ZINTER` commands now allow direct retrieval of results, unlike `ZUNIONSTORE` and `ZINTERSTORE`, which store results in a key. +- Redis streams enhancements include: + - Support for exclusive range queries, providing finer control over data retrieval. + - The ability to filter pending messages based on idle time, improving message management. + - A new mechanism to automatically claim pending messages from a stream consumer group, transferring ownership of messages that have exceeded their idle timeout to a new consumer without requiring manual acknowledgment. + +## Component versions +The Redis version 6.2 is built from the following component versions: + +- [Redis 6.2](https://github.com/redis/redis/blob/6.2/00-RELEASENOTES) +- [Search 2.6](https://redis.io/docs/latest/operate/oss_and_stack/stack-with-enterprise/release-notes/redisearch/redisearch-2.6-release-notes/) +- [JSON 2.4](https://redis.io/docs/latest/operate/oss_and_stack/stack-with-enterprise/release-notes/redisjson/redisjson-2.4-release-notes/) +- [Time series 1.8](https://redis.io/docs/latest/operate/oss_and_stack/stack-with-enterprise/release-notes/redistimeseries/redistimeseries-1.8-release-notes/) +- [Bloom 2.4](https://redis.io/docs/latest/operate/oss_and_stack/stack-with-enterprise/release-notes/redisbloom/redisbloom-2.4-release-notes/) +- [Graph 2.10](https://redis.io/docs/latest/operate/oss_and_stack/stack-with-enterprise/release-notes/redisgraph/redisgraph-2.10-release-notes/) diff --git a/content/develop/whats-new/7-2.md b/content/develop/whats-new/7-2.md new file mode 100644 index 0000000000..82ee5a14a9 --- /dev/null +++ b/content/develop/whats-new/7-2.md @@ -0,0 +1,64 @@ +--- +title: Redis 7.2 +alwaysopen: false +categories: +- docs +- operate +- rs +- rcw +description: What's new in Redis 7.2 +linkTitle: What's new in Redis 7.2 +weight: 20 +--- + +Redis version 7.2 introduces new capabilities, including improved geospatial queries, and streamlined JSON data manipulation. Performance optimizations, client-side enhancements, and behavioral refinements further improve the efficiency, security, and usability of Redis. +Below is a detailed breakdown of these updates. + +## New features + +### Geospatial queries with polygon search +Redis Query Engine now supports querying geospatial data using polygon search, enabling developers to efficiently filter and retrieve data within complex geographic boundaries. + +### Streamlined data manipulation in JSON +JSON now includes two new commands for improved data handling: + +- `JSON.MERGE`: Merges a given JSON value into matching paths, allowing more flexible updates. +- `JSON.MSET`: Sets or updates multiple JSON values simultaneously based on specified key-path-value triplets, improving efficiency when handling structured data. + +## Improvements + +### Existing data structures +Significant performance improvements have been made across Redis data types. Sorted sets, commonly used for gaming leaderboards, now see performance improvements ranging from [30% to 100%](https://redis.io/blog/introducing-redis-7-2/#:~:text=We%20made%20Redis%20more%20powerful%20for%20developers). + +Additionally, Redis stream consumer tracking has been enhanced to provide better visibility into consumer activity, and blocked stream commands now return a distinct error when the target key no longer exists. + +### Redis Query Engine improvements +The Redis Query Engine has received several updates, including optimized `SORT BY` operations and the addition of a new `FORMAT` response in RESP3, improving both efficiency and readability. + +### Script execution enhancemets +Client-side tracking now monitors actual keys read during script execution, improving key usage tracking accuracy. Additionally, blocked commands will re-evaluate security checks before execution, ensuring compliance with updated permissions. Standardized ACL failure messages and error codes now provide clearer error handling. + +### Client and replication enhancements +TLS-based replication now supports Server Name Indication (SNI) to improve compatibility with secure deployments. The `HELLO` command behavior has also been refined to modify client state only upon successful execution, ensuring more predictable client behavior. + +## Changes + +### Breaking changes +Redis 7.2 introduces several backward-incompatible changes. Lua scripts no longer support the `print()` function, blocking of `PFCOUNT` and `PUBLISH` in read-only scripts, and time sampling freezing during command execution. Error handling updates include case changes in error responses, new behavior for `ZPOPMIN/ZPOPMAX` with `count 0`, and adjustments to `XCLAIM/XAUTOCLAIM`. ACL changes affect command categorization and key access permissions, while command introspection now includes per-subcommand statistics. Redis now allows certain `CONFIG` commands during loading and tracks statistics only when commands are executed. + +For more details, see [Redis 7.2 Breaking Changes](https://redis.io/docs/latest/embeds/r7.2-breaking-changes/). + +### Expired keys are now deleted from replica indexes +Expired keys are now deleted from Redis Query Engine replica indexes, ensuring that queries return an empty array rather than `nil` when the data no longer exists. + +### Other changes +Redis Stack 7.2 no longer includes Graph capabilities. For more details, refer to the [RedisGraph End-of-Life Announcement](https://redis.io/blog/redisgraph-eol/#:~:text=After%20January%2031%2C%202025%2C%20RedisGraph,subscriptions%20until%20January%2031%2C%202024.). + +## Component versions +The Redis version 7.2 includes the following components: + +- [Redis 7.2](https://github.com/redis/redis/blob/7.2/00-RELEASENOTES) +- [Search 2.8](https://redis.io/docs/latest/operate/oss_and_stack/stack-with-enterprise/release-notes/redisearch/redisearch-2.8-release-notes/) +- [JSON 2.6](https://redis.io/docs/latest/operate/oss_and_stack/stack-with-enterprise/release-notes/redisjson/redisjson-2.6-release-notes/) +- [Time series 1.10](https://redis.io/docs/latest/operate/oss_and_stack/stack-with-enterprise/release-notes/redistimeseries/redistimeseries-1.10-release-notes/) +- [Bloom 2.6](https://redis.io/docs/latest/operate/oss_and_stack/stack-with-enterprise/release-notes/redisbloom/redisbloom-2.6-release-notes/) diff --git a/content/develop/whats-new/7-4.md b/content/develop/whats-new/7-4.md new file mode 100644 index 0000000000..091c3ba89d --- /dev/null +++ b/content/develop/whats-new/7-4.md @@ -0,0 +1,46 @@ +--- +title: Redis 7.4 +alwaysopen: false +categories: +- docs +- operate +- rs +- rc +description: What's new in Redis 7.4 +linkTitle: What's new in Redis 7.4 +weight: 10 +--- + +Redis 7.4 introduces several new features and improvements aimed at enhancing memory efficiency, performance, and ease of use for various applications. These updates include support for hash field expiration, new memory-efficient data types for AI workloads, simplified secondary indexing, and time series optimizations. Additionally, Redis 7.4 brings several behavior and component changes. +Below is a detailed breakdown of these updates. + +## New features + +### Hash field expiration support + +Redis 7.4 adds the ability to set expiration times for individual hash fields or adjust their remaining TTL. This feature, long-requested by users, improves memory efficiency and performance, especially in caching and session storage scenarios. + +### New memory-efficient data types for AI workloads +With the growing demand for AI applications, Redis 7.4 introduces `BFLOAT16` and `FLOAT16` data types. These new types reduce memory usage by up to 47% and lower latency by as much as 59% under load, making them ideal for storing and processing vector embeddings in AI-powered applications, including vector databases and Retrieval Augmented Generation (RAG) systems. + +### Time series optimization with insertion filters +Redis 7.4 introduces insertion filters for time series data, allowing sensors to ignore new measurements when the differences in time or value are minimal. This feature helps reduce the size of time series data and boosts efficiency. + +## Improvements + +### Simplified secondary indexing +The Redis Query Engine now offers a more straightforward approach to secondary indexing with the addition of the `TAG` index type. Querying tags with special characters (like `@` and `.`) is easier, as it no longer requires escaping; simply wrap query terms in double quotes. The update also includes improved handling of empty and missing fields, making the data model more flexible. Geospatial search has been enhanced with new operators, such as `INTERSECT` and `DISJOIN`, and memory usage reporting for indexes has been improved. + +## Changes + +### Behavior changes +Redis 7.4 includes behavior changes such as using jemalloc instead of libc for allocating Lua VM code. This adjustment reduces memory fragmentation and improves performance. Additionally, the `ACL LOAD` command has been modified to ensure that only clients with affected user configurations are disconnected, reducing unnecessary disruptions. + +## Component versions +The Redis version 7.4 includes the following components: + +- [Redis 7.4](https://redis.io/docs/latest/operate/oss_and_stack/stack-with-enterprise/release-notes/redisce/redisce-7.4-release-notes/) +- [Search 2.10](https://redis.io/docs/latest/operate/oss_and_stack/stack-with-enterprise/release-notes/redisearch/redisearch-2.10-release-notes/) +- [JSON 2.8](https://redis.io/docs/latest/operate/oss_and_stack/stack-with-enterprise/release-notes/redisjson/redisjson-2.8-release-notes/) +- [Time series 1.12](https://redis.io/docs/latest/operate/oss_and_stack/stack-with-enterprise/release-notes/redistimeseries/redistimeseries-1.12-release-notes/) +- [Bloom 2.8](https://redis.io/docs/latest/operate/oss_and_stack/stack-with-enterprise/release-notes/redisbloom/redisbloom-2.8-release-notes/) diff --git a/content/develop/whats-new/redis-feature-sets.md b/content/develop/whats-new/redis-feature-sets.md index c09b002371..99a12f0580 100644 --- a/content/develop/whats-new/redis-feature-sets.md +++ b/content/develop/whats-new/redis-feature-sets.md @@ -8,7 +8,7 @@ categories: - rc description: Highlights of what's new for Redis feature sets linkTitle: Redis feature sets -weight: 10 +weight: 40 --- A Redis feature set includes a specific Redis database version along with the advanced capabilities and data structures provided by compatible module versions.