Microsoft’s Azure Incubations team introduced Drasi, an open-source system that simplifies detecting critical events in complex infrastructures. Drasi offers real-time monitoring and automated responses, eliminating the need for manual event handling. With flexible components and integrations, it streamlines change detection across various data sources. Drasi is available under the Apache 2.0 license, offering developers an adaptable solution for managing event-driven systems.
Drasi addresses the challenges of scaling event-driven systems by offering an integrated solution for monitoring changes and automating appropriate reactions. It eliminates the need for developers to manually build event-handling mechanisms by providing a unified framework that reduces complexity and ensures timely responses.
At its core, Drasi operates using three primary components:
- Sources: These monitor various data points, including application logs, database changes, and system metrics. Sources track changes in real-time, capturing data without copying it to central repositories or data lakes.
- Continuous Queries: Instead of relying on traditional point-in-time queries, Drasi uses Continuous Queries that evaluate data as it arrives. These queries are written in Cypher Query Language and integrate information from multiple sources, constantly updating results without manual intervention.
- Reactions: When changes meet the criteria defined in a Continuous Query, Drasi triggers automated Reactions. These can include tasks like sending alerts, updating systems or initiating remediation efforts based on specific business needs.
Drasi’s architecture (Source: Microsoft Blog)
Drasi is designed to be flexible and extensible, allowing users to integrate custom Sources and Reactions based on their unique requirements. Prebuilt integrations with platforms like PostgreSQL, Microsoft Dataverse, and Azure Event Grid are also available.
This system offers a more efficient alternative to traditional data processing methods that rely on constant querying, polling, or batch processing. By eliminating delays and processing overhead, Drasi ensures that businesses can respond to critical events as they happen, helping to avoid missed opportunities and risks.
Allen Jones, a CTO at Microsoft, shared the following note:
Drasi is the project I have been leading in the Azure Incubations team for the last few years. It is a product I could have used so many times in my career, and it is exciting to get it out in the world, see what the community thinks of it, and understand how they will use it.
Feedback from the community has been positive. For example, Tejaswi Redkar wrote:
Drasi looks relevant for most Ops domains, where data -> insights -> actions are a norm, but connecting these 3 to automate is still a challenge.
Drasi is available for use through GitHub and licensed under Apache 2.0.