A new data processing system called Drasi makes it easier to identify important events in intricate infrastructures and to respond quickly in a way that is in line with corporate goals. Its features can be applied to a variety of event-driven scenarios by developers and software architects, whether they are managing complex systems, improving security protocols, or working on Internet of Things (IoT) integrations.
Event-driven architectures
Even though they are excellent at facilitating quick decisions and effective service decoupling, event-driven systems have a number of practical drawbacks. When systems expand to accommodate business requirements and events become more frequent and intricate, it can become difficult to identify pertinent changes among many components. Silos and different formats in which data is stored add to the complexity. While it is important for these systems to respond in real time, network latency, traffic, or sluggish event processing might cause processing delays.
Currently, current libraries and services seldom provide an end-to-end, unified framework for change detection and reaction, making it difficult for developers to create event-handling systems. They frequently have to piece together many tools, which leads to intricate, brittle architectures that are challenging to grow and maintain. Existing solutions, for instance, can be dependent on ineffective polling techniques or necessitate continuous data source querying, which would result in resource usage and performance bottlenecks. Furthermore, a lot of change detection technologies use batch processing, data collection, or delayed event analysis instead of having actual real-time capabilities. Even these small delays can result in lost chances or risks for organizations that require quick responses.
To put it succinctly, a complete solution that can identify and interpret crucial events with precision and trigger relevant, timely responses is desperately needed.
Announcing Drasi for event-driven systems
Drasi provides real-time actionable insights without the overhead of conventional data processing techniques, making the automation of intelligent reactions in dynamic systems simpler. Instead of moving data to a central data lake or continuously querying data sources, it adopts a lightweight approach to tracking system changes by keeping an eye out for occurrences in logs and change feeds.
Database queries are used by application developers to specify which changes to monitor and to articulate logical criteria for assessing change data. Drasi then checks to see if any modifications cause those queries’ result sets to be updated. If they do, it responds contextually and in accordance with your business requirements. This simplified procedure guarantees prompt response when the data is most pertinent, minimizes complexity, and keeps significant changes from falling between the cracks.
Three Drasi components are used in this process: Sources, Continuous Queries, and Reactions.
Sources: These establish connections with different data sources within your systems and keep an eye out for any significant changes. A source continuously collects pertinent data by monitoring system metrics, database updates, and application logs.
Continuous Queries: Drasi employs Continuous Queries, which continuously assess incoming changes in accordance with preset criteria, in place of manual, point-in-time queries. These Cypher Query Language queries can combine data from several sources without the requirement for earlier collation.
Reactions: Drasi carries out registered automated reactions upon the completion of a continuous question. Depending on your operational requirements, these reactions can update other systems, generate alerts, or carry out corrective measures.
At its two integration points, Sources and Reactions, Drasi’s architecture is built to be flexible and extensible. Apart from the readily used prebuilt Drasi Sources and Reactions such as Microsoft Dataverse, PostgreSQL, and Azure Event Grid, you have the option to design custom integrations according to specific system requirements or business demands. Because of its adaptability, Drasi can be easily customized for many types of situations.
A single instance of Drasi is used in this solution for two different purposes: one is used for Microsoft Dynamics 365 to gather maintenance records, and the other is used for telemetry streams to be connected to by Azure Event Hubs. Two Continuous Queries compare the telemetry events to predetermined maintenance criteria (e.g., the car will go 10,000 miles in the next 30 days) and critical alarms that need to be addressed right away. A single Reaction for Dynamics 365 Field Service provides data based on the Continuous Queries’ result sets in order to either generate an IoT alert for important occurrences or warn a fleet administrator when a vehicle is about to meet a maintenance milestone.
The practical application of Drasi in smart building management is another illustration of its real-world suitability. Dashboards are commonly used by facilities managers to track the comfort levels of their spaces, and they must be notified when these levels deviate. Making an always-accurate dashboard was easy with Drasi. Updates to room conditions are recorded in a Microsoft Azure Cosmos DB database that represents the building spaces.
In order to determine the comfort levels for individual rooms and to offer aggregate values for entire floors and the building itself, a Drasi Source reads the change logs from the Azure Cosmos DB database. It then delivers this change data to Continuous Queries. After receiving the results of the Continuous Queries, a Reaction for SignalR sends updates straight to a dashboard that is accessible through a browser.
Drasi: A brand-new class of information processing devices
Changing systems don’t always require difficult, error-prone change management. Drasi expedites the process by combining several data sources, keeping an eye out for pertinent developments, and initiating astute, automated responses. To identify changes, handle massive data lakes, or struggle to integrate cutting-edge detection software into preexisting ecosystems, complex systems are no longer required. Drasi makes sense of complexity through clarity, allowing your business to remain flexible and your systems to function well.
Drasi has been submitted as a Sandbox project to the Cloud Native Computing Foundation (CNCF). This indicates that, should it be approved, it will profit from the leadership, resources, governance, best practices, and advice of the CNCF community. By developing open, flexible technology for cloud and edge apps, Microsoft hopes to enable developers to create any application, using any language, on any platform. Drasi’s incubation and submission to a foundation improves on this goal. By introducing cloud-neutral, open-source initiatives like Dapr, KEDA, Copacetic, and most recently Radius, the Azure Incubations team consistently advances this goal. These projects are part of the CNCF and may be found on GitHub.
Drasi, Azure’s most recent contribution, has the potential to significantly impact cloud-native technology and progress the field.
Participate in Drasi
Drasi, an open-source project made possible under the Apache 2.0 license, demonstrates Microsoft’s dedication to encouraging creativity and teamwork in the tech industry.