You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: articles/aks/tutorial-kubernetes-paas-services.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -143,7 +143,7 @@ In previous tutorials, you used a RabbitMQ container to store orders submitted b
143
143
```
144
144
145
145
2. Open the `aks-store-quickstart.yaml` file in a text editor.
146
-
3. Remove the existing `rabbitmq` Deployment, ConfigMap, and Service sections and replace the existing `order-service` Deployment section with the following content:
146
+
3. Remove the existing `rabbitmq` StatefulSet, ConfigMap, and Service sections and replace the existing `order-service` Deployment section with the following content:
Copy file name to clipboardExpand all lines: articles/azure-cache-for-redis/cache-aspnet-output-cache-provider.md
+13-5Lines changed: 13 additions & 5 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -12,15 +12,23 @@ ms.date: 04/24/2024
12
12
---
13
13
# ASP.NET Output Cache Provider for Azure Cache for Redis
14
14
15
-
The Redis Output Cache Provider is an out-of-process storage mechanism for output cache data. This data is specifically for full HTTP responses (page output caching). The provider plugs into the new output cache provider extensibility point that was introduced in ASP.NET 4. For ASP.NET Core applications, read [Response caching in ASP.NET Core](/aspnet/core/performance/caching/response).
15
+
The Redis Output Cache Provider is an out-of-process storage mechanism for output cache data. This data is specifically for full HTTP responses (page output caching). The provider plugs into the new output cache provider extensibility point that was introduced in ASP.NET 4.
16
+
17
+
For ASP.NET Core applications, see [Output Caching in ASP.NET core using Redis in .NET 8](/aspnet/core/performance/caching/output?view=aspnetcore-8.0#redis-cache&preserve-view=true).
16
18
17
19
To use the Redis Output Cache Provider, first configure your cache, and then configure your ASP.NET application using the Redis Output Cache Provider NuGet package. This article provides guidance on configuring your application to use the Redis Output Cache Provider. For more information about creating and configuring an Azure Cache for Redis instance, see [Create a cache](cache-dotnet-how-to-use-azure-redis-cache.md#create-a-cache).
18
20
19
-
## Store ASP.NET page output in the cache
21
+
## Store ASP.NET core page output in Redis
22
+
23
+
For a full feature specification, see [AS.NET core output caching](/aspnet/core/performance/caching/output?view=aspnetcore-8.0&preserve-view=true).
24
+
25
+
For sample application demonstrating the usage, see [.NET 8 Web Application with Redis Output Caching and Azure Open AI](https://github.com/CawaMS/OutputCacheOpenAI).
26
+
27
+
## Store ASP.NET page output in Redis
20
28
21
29
To configure a client application in Visual Studio using the Azure Cache for Redis Session State NuGet package, select **NuGet Package Manager**, **Package Manager Console** from the **Tools** menu.
22
30
23
-
Run the following command from the `Package Manager Console` window.
31
+
Run the following command from the `Package Manager Console` window:
@@ -43,7 +51,7 @@ The NuGet package downloads and adds the required assembly references and adds t
43
51
</caching>
44
52
```
45
53
46
-
Configure the attributes in the first c with the values from your cache in the Microsoft Azure portal. Also, configure the other values you want. For instructions on accessing your cache properties, see [Configure Azure Cache for Redis settings](cache-configure.md#configure-azure-cache-for-redis-settings).
54
+
Configure the attributes in the first column with the values from your cache in the Microsoft Azure portal. Also, configure the other values you want. For instructions on accessing your cache properties, see [Configure Azure Cache for Redis settings](cache-configure.md#configure-azure-cache-for-redis-settings).
47
55
48
56
| Attribute | Type | Default | Description |
49
57
| --------- | ---- | ------- | ----------- |
@@ -196,6 +204,6 @@ After you do these steps, your application is configured to use the Redis Output
Copy file name to clipboardExpand all lines: articles/azure-cache-for-redis/cache-overview-vector-similarity.md
+24-9Lines changed: 24 additions & 9 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -8,11 +8,15 @@ ms.topic: overview
8
8
ms.date: 04/24/2024
9
9
---
10
10
11
-
# About Vector Embeddings and Vector Search in Azure Cache for Redis
11
+
# What are Vector Embeddings and Vector Search in Azure Cache for Redis
12
12
13
-
Vector similarity search (VSS) is a popular use-case for AI-driven applications. Azure Cache for Redis can be used to store vector embeddings and compare them through vector similarity search. This article is a high-level introduction to the concept of vector embeddings, vector comparison, and how Redis can be used as a seamless part of a vector similarity workflow.
13
+
Vector similarity search (VSS) has become a popular technology for AI-powered intelligent applications. Azure Cache for Redis can be used as a vector database by combining it models like [Azure OpenAI](../ai-services/openai/overview.md) for Retrieval-Augmented Generative AI and analysis scenarios. This article is a high-level introduction to the concept of vector embeddings, vector similarity search, and how Redis can be used as a vector database powering intelligent applications.
14
14
15
-
For a tutorial on how to use Azure Cache for Redis and Azure OpenAI to perform vector similarity search, see [Tutorial: Conduct vector similarity search on Azure OpenAI embeddings using Azure Cache for Redis](cache-tutorial-vector-similarity.md).
15
+
For tutorials and sample applications on how to use Azure Cache for Redis and Azure OpenAI to perform vector similarity search, see the following:
16
+
17
+
-[Tutorial: Conduct vector similarity search on Azure OpenAI embeddings using Azure Cache for Redis with LangChain](./cache-tutorial-vector-similarity.md)
18
+
-[Sample: Using Redis as vector database in a Chatbot application with .NET Semantic Kernel](https://github.com/CawaMS/chatappredis)
19
+
-[Sample: Using Redis as semantic cache in a Dall-E powered image gallery with Redis OM for .NET](https://github.com/CawaMS/OutputCacheOpenAI)
16
20
17
21
## Scope of Availability
18
22
@@ -24,8 +28,6 @@ This table contains the information for vector search availability in different
@@ -48,9 +50,16 @@ Many machine learning models support embeddings APIs. For an example of how to c
48
50
49
51
A vector database is a database that can store, manage, retrieve, and compare vectors. Vector databases must be able to efficiently store a high-dimensional vector and retrieve it with minimal latency and high throughput. Nonrelational datastores are most commonly used as vector databases, although it's possible to use relational databases like PostgreSQL, for example, with the [pgvector](https://github.com/pgvector/pgvector) extension.
50
52
51
-
### Index method
53
+
### Index and search method
54
+
55
+
Vector databases need to index data for fast search and retrieval. In addition, a vector database should support built-in search queries for simplified programming experiences.
52
56
53
-
Vector databases need to index data for fast search and retrieval. There are several common indexing methods, including:
57
+
There are several indexing methods, such as:
58
+
59
+
-**FLAT** - Brute-force index
60
+
-**HNSW** - Efficient and robust approximate nearest neighbor search using Hierarchical Navigable Small World graphs
61
+
62
+
There are several common search methods, including:
54
63
55
64
-**K-Nearest Neighbors (KNN)** - an exhaustive method that provides the most precision but with higher computational cost.
56
65
-**Approximate Nearest Neighbors (ANN)** - a more efficient by trading precision for greater speed and lower processing overhead.
@@ -72,9 +81,15 @@ Vector similarity search can be used in multiple applications. Some common use-c
72
81
73
82
## Why choose Azure Cache for Redis for storing and searching vectors?
74
83
75
-
Azure Cache for Redis can be used effectively as a vector database to store embeddings vectors and to perform vector similarity searches. In many ways, Redis is naturally a great choice in this area. It's extremely fast because it runs in-memory, unlike other vector databases that run on-disk. This can be useful when processing large datasets! Redis is also battle-hardened. Support for vector storage and search has been available for years, and many key machine learning frameworks like [LangChain](https://python.langchain.com/docs/integrations/vectorstores/redis) and [LlamaIndex](https://gpt-index.readthedocs.io/en/latest/examples/vector_stores/RedisIndexDemo.html) feature rich integrations with Redis. For example, the Redis LangChain integration [automatically generates an index schema for metadata](https://python.langchain.com/docs/integrations/vectorstores/redis#inspecting-the-created-index) passed in when using Redis as a vector store. This makes it much easier to filter results based on metadata.
84
+
Azure Cache for Redis can be used effectively as a vector database to store embeddings vectors and to perform vector similarity searches. Support for vector storage and search has been available in many key machine learning frameworks like:
These frameworks feature rich integrations with Redis. For example, the Redis LangChain integration [automatically generates an index schema for metadata](https://python.langchain.com/docs/integrations/vectorstores/redis#inspecting-the-created-index) passed in when using Redis as a vector store. This makes it much easier to filter results based on metadata.
76
91
77
-
Redis has a wide range of vector search capabilities through the [RediSearch module](cache-redis-modules.md#redisearch), which is available in the Enterprise tier of Azure Cache for Redis. These vector search capabilities include:
92
+
Redis has a wide range of search capabilities through the [RediSearch module](cache-redis-modules.md#redisearch), which is available in the Enterprise tier of Azure Cache for Redis. These include:
78
93
79
94
- Multiple distance metrics, including `Euclidean`, `Cosine`, and `Internal Product`.
80
95
- Support for both KNN (using `FLAT`) and ANN (using `HNSW`) indexing methods.
Copy file name to clipboardExpand all lines: articles/azure-cache-for-redis/cache-web-app-aspnet-core-howto.md
+15Lines changed: 15 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -15,10 +15,25 @@ ms.date: 04/24/2024
15
15
16
16
In this quickstart, you incorporate Azure Cache for Redis into an ASP.NET Core web application that connects to Azure Cache for Redis to store and retrieve data from the cache.
17
17
18
+
There are also caching providers in .NET core. To quickly start using Redis with minimal changes to your existing code, see:
Clone the repo [https://github.com/Azure-Samples/azure-cache-redis-samples/tree/main/quickstart/aspnet-core](https://github.com/Azure-Samples/azure-cache-redis-samples/tree/main/quickstart/aspnet-core) on GitHub.
21
27
28
+
As a next step, you can see a real-world scenario eShop application demonstrating the ASP.NET core caching providers: [ASP.NET core eShop using Redis caching providers](https://github.com/Azure-Samples/azure-cache-redis-demos).
29
+
30
+
Features included:
31
+
32
+
- Redis Distributed Caching
33
+
- Redis session state provider
34
+
35
+
Deployment instructions are in the README.md.
36
+
22
37
## Prerequisites
23
38
24
39
- Azure subscription - [create one for free](https://azure.microsoft.com/free/)
> "OpenAI relies on Cosmos DB to dynamically scale their ChatGPT service – one of the fastest-growing consumer apps ever – enabling high reliability and low maintenance." – Satya Nadella, Microsoft chairman and chief executive officer
18
+
> "OpenAI relies on Cosmos DB to dynamically scale their ChatGPT service – one of the fastest-growing consumer apps ever – enabling high reliability and low maintenance."
19
+
> – Satya Nadella, Microsoft chairman and chief executive officer
19
20
20
21
Today's applications are required to be highly responsive and always online. They must respond in real time to large changes in usage at peak hours, store ever increasing volumes of data, and make this data available to users in milliseconds. To achieve low latency and high availability, instances of these applications need to be deployed in datacenters that are close to their users.
Copy file name to clipboardExpand all lines: articles/iot-hub-device-update/device-update-data-privacy.md
+5-1Lines changed: 5 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -3,7 +3,7 @@ title: Data privacy for Device Update for Azure IoT Hub
3
3
description: Understand how Device Update for IoT Hub protects data privacy.
4
4
author: eshashah-msft
5
5
ms.author: eshashah
6
-
ms.date: 01/19/2023
6
+
ms.date: 04/26/2024
7
7
ms.topic: conceptual
8
8
ms.service: iot-hub-device-update
9
9
---
@@ -29,3 +29,7 @@ Microsoft maintains no information and has no access to data that would allow co
29
29
For more information on Microsoft's privacy commitments, see the "Enterprise and developer products" section of the [Microsoft Privacy Statement](https://privacy.microsoft.com/en-us/privacystatement).
30
30
31
31
For more information about data residency with Device Update, see [Regional mapping for disaster recovery for Device Update](device-update-region-mapping.md).
32
+
33
+
**Device Update usage of Content Delivery Networks**
34
+
35
+
In order to maintain the scalability and availability of your imported updates, the Device Update for IoT Hub service distributes imported updates to select global Content Delivery Networks (CDNs). This allows your IoT devices to download your imported updates from the closest available CDN endpoint, increasing download speed and reliability. To learn more, visit [Content Delivery Networks](/azure/architecture/best-practices/cdn).
Copy file name to clipboardExpand all lines: articles/key-vault/general/security-features.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -102,7 +102,7 @@ When you create a key vault in a resource group, you manage access by using Micr
102
102
-**Resource group**: An Azure role assigned at the resource group level applies to all resources in that resource group.
103
103
-**Specific resource**: An Azure role assigned for a specific resource applies to that resource. In this case, the resource is a specific key vault.
104
104
105
-
There are several predefined roles. If a predefined role doesn't fit your needs, you can define your own role. For more information, see [Azure RBAC: Built-in roles](../../role-based-access-control/built-in-roles.md)w
105
+
There are several predefined roles. If a predefined role doesn't fit your needs, you can define your own role. For more information, see [Azure RBAC: Built-in roles](../../role-based-access-control/built-in-roles.md).
106
106
107
107
> [!IMPORTANT]
108
108
> When using the Access Policy permission model, if a user has `Contributor`, `Key Vault Contributor` or other role with `Microsoft.KeyVault/vaults/write` permissions to a key vault management plane, the user can grant themselves access to the data plane by setting a Key Vault access policy. You should tightly control who has `Contributor` role access to your key vaults with the Access Policy permission model to ensure that only authorized persons can access and manage your key vaults, keys, secrets, and certificates. It is recommended to use the new **Role Based Access Control (RBAC) permission model** to avoid this issue. With the RBAC permission model, permission management is limited to 'Owner' and 'User Access Administrator' roles, which allows separation of duties between roles for security operations and general administrative operations.
0 commit comments