Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Sandbox] Drasi #296

Open
2 tasks done
NValsan opened this issue Oct 3, 2024 · 0 comments
Open
2 tasks done

[Sandbox] Drasi #296

NValsan opened this issue Oct 3, 2024 · 0 comments
Labels
New New Application

Comments

@NValsan
Copy link

NValsan commented Oct 3, 2024

Application contact emails

[email protected], [email protected], [email protected], [email protected]

Project Summary

Drasi is a change data processing platform that automates real-time detection, evaluation, and meaningful reaction to events in complex, event-driven systems.

Project Description

Drasi is engineered to identify and react in real-time to events in complex, event-driven systems. Drasi streamlines the development of change detection systems for developers and software architects by eliminating the need to integrate multiple specialized tools and services. It offers a unified solution that provides built-in capabilities to track system logs for specific events, evaluate them for relevance, and automatically initiate appropriate reactions.

It operates through three main components:
i.      Sources connect to data repositories within software systems, monitoring logs and feeds for specific events.
ii.     Continuous Queries are the central component of Drasi. They interpret monitored events by applying specific criteria and conditions to identify significant changes. Running continuously, these queries evaluate incoming events in real-time, enabling Drasi to detect and react to events promptly. Implemented using the Cypher Query Language, Continuous Queries provide Drasi with precise and customizable event analysis functionality.
iii.    Reactions trigger meaningful responses based on updates to the result sets of the Continuous Queries.

Drasi is also extendable at its two points of integration, Sources and Reactions. Beyond the currently available options, developers can easily create new Sources and Reactions, allowing them to customize Drasi for specific environments and requirements.

Org repo URL (provide if all repos under the org are in scope of the application)

http://github.com/drasi-project (github.com)

Project repo URL in scope of application

http://github.com/drasi-project/drasi-platform (github.com)

Additional repos in scope of the application

https://github.com/drasi-project/drasi-core

Website URL

https://drasi.io

Roadmap

We have not yet published a formal, public Drasi roadmap but will do so soon. Please see context below.

Roadmap context

Moving forward, we will focus on improvements that enable Drasi to support real-world, production workloads. Specific areas of investment will include but will not be limited to scalability, performance and security. We have extensibility in place for Sources and Reactions. We’re ready to accept contributions and assist the community with expanding the set of supported technologies.  Areas for improvement include:

i.     Error messaging
ii.     Resource and state cleanup after deletion of Sources, Continuous Queries, and Reactions.
iii.    Parallel parameterized processing

We will prioritize this work based on community feedback.

Contributing Guide

http://github.com/drasi-platform/CONTRIBUTING.md at main drasi-project/drasi-platform (github.com)

Code of Conduct (CoC)

http://github.com/drasi-platform/CODE_OF_CONDUCT.md at main drasi-project/drasi-platform (github.com)

Adopters

No response

Contributing or Sponsoring Org

Microsoft

Maintainers file

http://github.com/community/MAINTAINERS.md at main drasi-project/community (github.com)

IP Policy

  • If the project is accepted, I agree the project will follow the CNCF IP Policy

Trademark and accounts

  • If the project is accepted, I agree to donate all project trademarks and accounts to the CNCF

Why CNCF?

We aim to enable innovation in event-driven system management and this goal aligns closely with CNCF's focus on promoting cloud-native computing and the development of scalable, dynamic applications.

  • Drasi addresses critical needs in event-driven systems—a core aspect of cloud-native architectures—by simplifying change detection and reaction mechanisms.
  • Integrating with other CNCF projects like Kubernetes and Prometheus enhances Drasi’s functionality and provides users with a cohesive ecosystem. Additionally, Drasi's event-driven, micro services-friendly architecture fits well within the CNCF landscape, promoting best practices in cloud-native development.
  • CNCF's commitment to open-source development and community engagement mirrors our own and its vendor-neutral governance model will ensure that Drasi remains an open and community-driven project.

Benefit to the Landscape

Contributing Drasi to the CNCF landscape will bring significant benefits by enhancing the ecosystem's capabilities in real-time event detection, processing, and automated reactions within cloud-native environments.

  • Drasi fills a gap in the current cloud-native landscape by providing developers a versatile tool for building reactive, event-driven applications.
  • It introduces unique functionality for continuous querying and real-time reaction to data changes.
  • Drasi's ability to integrate with various data sources and systems makes it easier for organizations to adopt cloud-native practices without overhauling their existing infrastructure making the CNCF ecosystem more attractive to them.
  • Drasi simplifies development by providing a comprehensive solution for change detection and reaction, allowing developers to focus on core functionality rather than integrating multiple tools.

Cloud Native 'Fit'

Drasi embodies key cloud-native principles by enabling applications to be more responsive, scalable, and manageable in dynamic cloud environments.

Event-Driven Architecture:

  • Reactive Systems: Drasi is designed around an event-driven model, allowing applications to react to changes in data and system states in real-time. This aligns with the cloud-native emphasis on building reactive, responsive systems.
  • Loose Coupling: By decoupling the detection of events from the reactions, Drasi promotes a modular architecture where components can evolve independently.

Micro services-Friendly:

  • It integrates easily with other micro services, facilitating communication and coordination across a distributed application landscape.

Containerization and Management:

  • Drasi is designed to run within containers ensuring consistency across development, testing, and production environments.
  • Management of Drasi is via a CLI or API.
  • Drasi integrates with the OpenTelemetry observability framework.

Cloud-Agnostic Design:

  • Drasi is designed to be cloud-agnostic, allowing it to run on any public, private, or hybrid cloud infrastructure without significant changes.

Cloud Native 'Integration'

Drasi depends on

  • Kubernetes
  • DAPR

Drasi integrates with the following for observability:                          

  • OpenTelemetry
  • Prometheus

Cloud Native Overlap

At present, we have not identified a CNCF project that offers all the features that Drasi has as a comprehensive solution.

Similar projects

There are several event-driven automation framework CNCF projects such as Argo Events and Knative Eventing (component of Knative). While none of these projects are identical to Drasi, they offer similar functionality for event detection, processing, and automated reactions in real-time. Drasi distinguishes itself by providing an integrated platform specifically designed for change data processing, combining event monitoring, continuous queries for event assessment, and reaction mechanisms in a unified solution.

Contributing Drasi to the CNCF adds value by providing capabilities not fully addressed by existing projects, enhancing the ecosystem's capabilities in automated change detection and response.

Landscape

No. Drasi is not already listed in the CNCF landscape.

Business Product or Service to Project separation

Currently, there aren’t any managed service offerings or business products based on Drasi. If in the future this changes, the service or offering will exist separate from the upstream open-source project under CNCF governance.

Project presentations

Drasi has not been presented to a CNCF TAG. We are interested in presenting to the App Delivery TAG and will seek an opportunity to do so in the coming months.

Project champions

The Drasi team briefed Chris Aniszczyk and he's supportive of the project going through the CNCF project proposal process.

Additional information

No response

@NValsan NValsan added the New New Application label Oct 3, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
New New Application
Development

No branches or pull requests

1 participant