Getting started with Azure Cognitive Search in C#

Getting started with Azure Cognitive Search in C#

Azure Cognitive Search is a search service in Azure that gives you as a developer the tools for building search experiences over private data in your enterprise, web and mobile applications. Common use cases for search can include any scenario that surfaces text to users, such as searching a product catalog, or searching documents within your organization. Azure Search provides you with a bunch of cool capabilities, including: Full text and vector search over search indexes containing your content. Indexing, with optional AI enhancement for extracting and transforming your content. Query syntax for text search, autocomplete, geo-search, vector queries and more. Access to search via SDKs and REST APIs Integration with Azure AI services. In this article, I’ll cover what Azure Cognitive Search is, what components make up Azure Search, and where it can fit within your architecture. We’ll then create a Cognitive Search service using Bicep along with a storage account that we will pull our data from into the index. Once that’s deployed, we’ll start to work with our Cognitive Search service using C#, creating our data source for our indexer, creating the index and then querying our index with some simple queries. ...

September 27, 2023 · 15 min · Will Velida
Azure Functions using a Azure SQL Trigger

Working with Azure SQL Triggers in Azure Functions

Azure SQL triggers for Azure Functions came into public preview for C# Functions last month. When you enable Change Tracking on a table in Azure SQL Database, Managed Instance or SQL Server (yes, on-prem SQL Server), you can create a function that will be triggered every time a row is created, updated or deleted. In this article, we’ll dive into the details of SQL Trigger Functions, how Change Tracking works and how we can configure our Functions to listen to SQL Change Tracking. We’ll finish off by discussing how we can monitor how our functions scale as more changes are being processed using the scale controller logs. ...

December 15, 2022 · 8 min · Will Velida
Building an event streaming app with Azure Functions, Event Hubs and Azure Cosmos DB

Building an event streaming app with Azure Functions, Event Hubs and Azure Cosmos DB

Back in 2020, I wrote an article on how you can build a simple streaming app using Azure Functions, Event Hubs and Azure Cosmos DB. I’ve been meaning to update some old samples that I created while I was an MVP, so the long weekend seemed like a good time to update this one. Again, this is a relatively simple sample that I’ve created here. Previously, I developed all of this locally and created all my Azure resources via the portal. In this post, we’ll be doing things a little differently. In this article we will: ...

April 24, 2022 · 22 min · Will Velida
Queues and Topics in Azure Service Bus

Working with Queues and Topics in Azure Service Bus

Azure Service Bus is a message broker that we can use to send messages to queues or publish messages to topics so that consumers can subscribe to those topics to receive those messages. In the article, I’ll explain what the differences are between queues and topics in Azure Service Bus, how we can provision Service Bus namespaces with either queues or topics using Bicep and then I’ll show you how we can send and receives messages from our queue or topic. ...

April 18, 2022 · 9 min · Will Velida
Cosmos DB, Managed Identities, Functions logo

Using Managed Identities to authenticate with Azure Cosmos DB

In Azure, Managed Identities provide our Azure resources with an identity within Azure Active Directory. We can use this identity to authenticate with any service in Azure that supports Azure AD authentication without having to manage credentials. In Azure Cosmos DB, we can use managed identities to provide resources with the roles and permissions required to perform actions on our data (depending on what role we provide the identity) without having to use any connection strings or access keys to do so. ...

March 24, 2022 · 8 min · Will Velida