8000 GitHub - lispking/fluxus: Fluxus Stream Processing Engine
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

lispking/fluxus

< 8000 /div>

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

99 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Fluxus Logo

Fluxus Stream Processing Engine

Crates.io Documentation License: Apache 2.0 build status Ask DeepWiki

Fluxus is a lightweight stream processing engine written in Rus 8000 t, designed for efficient real-time data processing and analysis.

Fluxus Architecture

Features

  • High-performance stream processing
  • Flexible windowing operations (Tumbling, Sliding, Session windows)
  • Parallel processing support
  • Rich set of stream operations (map, filter, aggregate)
  • Type-safe API
  • Easy to use and extend

Project Structure

  • crates/fluxus - Main crate containing the Fluxus engine and its dependencies
  • crates/fluxus-api - Core API definitions and interfaces
  • crates/fluxus-core - Core implementations and data structures
  • crates/fluxus-runtime - Runtime engine and execution environment
  • crates/fluxus-sinks - Sink implementations for different data sinks (e.g., Kafka, Console)
  • crates/fluxus-sources - Source implementations for different data sources (e.g., Kafka, Console)
  • crates/fluxus-transforms - Transformations for stream processing (e.g., map, filter, aggregate)
  • crates/fluxus-utils - Utility functions and helpers
  • examples - Example applications demonstrating usage

Examples

The project includes several example applications that demonstrate different use cases:

Word Count

Simple word frequency analysis in text streams using tumbling windows.

cargo run --example word-count

Temperature Sensor Analysis

Processing and analyzing temperature sensor data with sliding windows.

cargo run --example temperature-sensor

Click Stream Analysis

Analyzing user click streams with session windows.

cargo run --example click-stream

Network Log Analysis

Processing network logs with sliding windows and aggregations.

cargo run --example network-log

Remote CSV Data Processing

Processing CSV data from remote sources like GitHub.

cargo run --example remote-csv

View Available Examples

To see all available examples and options:

cargo run --example

Using Fluxus in Your Project

To use Fluxus in your project, add it as a dependency using cargo:

cargo add fluxus --features full

This will add Fluxus with all available features to your project. After adding the dependency, you can start using Fluxus in your code. Check out the examples section below for usage examples.

Getting Started

  1. Clone the repository:
git clone https://github.com/lispking/fluxus.git
cd fluxus
  1. Build the project:
cargo build
  1. Run the examples:
cargo run --example [example-name]

Development

Prerequisites

  • Rust 1.75+
  • Cargo

Building

cargo build

Testing

cargo test

License

This project is licensed under the Apache License 2.0 - see the LICENSE file for details.

Star History

Star History Chart

Thank you for your support and participation ❤️

0