soniahorchidan / arcon

Runtime for Writing Streaming Applications in Rust.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Arcon

A runtime for writing streaming applications with the Rust programming language.

ci Cargo License

Project Status

Arcon is in development and should be considered experimental until further notice.

Rust Version

Arcon currently requires Rust nightly (See current toolchain here).

User Guide

More detailed information about Arcon can be found here

Example

use arcon::prelude::*;

fn main() {
    let mut pipeline = Pipeline::default()
        .collection((0..100).collect::<Vec<u64>>(), |conf| {
            conf.set_arcon_time(ArconTime::Event);
            conf.set_timestamp_extractor(|x: &u64| *x);
        })
        .operator(OperatorBuilder {
            constructor: Arc::new(|_| Filter::new(|x| *x > 50)),
            conf: Default::default(),
        })
        .to_console()
        .build();

    pipeline.start();
    pipeline.await_termination();
}

More advanced examples can be found here.

Project Layout

License

This project is licensed under the AGPL-3.0 license.

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in Arcon by you shall be licensed as AGPL-3.0, without any additional terms or conditions.

About

Runtime for Writing Streaming Applications in Rust.

License:GNU Affero General Public License v3.0


Languages

Language:Rust 99.9%Language:Shell 0.1%