Repolode
arkflow-rs

arkflow-rs/arkflow

Kafka、MQTT、NATSなどのリアルタイムデータに対して、SQL、Python UDF、ML/LLM処理を実行するRust製ストリーム処理エンジン。

スター
1,314
フォーク
47
未解決の Issue
29
最終コミット
4 時間前

これは何?

ArkFlowは、Tokioの非同期ランタイム上で動作するRust製ストリーム処理エンジンです。ストリームはYAMLで定義し、入力、処理パイプライン、出力に加え、メッセージ処理に失敗した場合の任意のエラー出力を指定できます。入力先にはKafka、MQTT、NATS、Pulsar、Redis、WebSocket、HTTP、ファイル、SQLデータベースなどがあり、出力先にはKafka、MongoDB、InfluxDB、SQLデータベース、Qdrant、Milvus、pgvectorなどのベクトルストアがあります。

処理ステップには、SQLクエリ、Pythonのユーザー定義関数、VRL変換、JSONとProtobufの変換、バッチ処理があります。また、OpenAI互換のEmbedding APIやチャットAPIの呼び出し、ベクトル検索の実行、Redisを使ったルックアップによる行データの補完を行うプロセッサも備えています。各ストリームのWALによる耐久性を通じて、デフォルトで少なくとも1回の配信を保証し、トランザクション対応のシンクでは、任意で厳密に1回の配信を利用できます。

任意で導入できるHubとWebコンソールを使うと、複数のArkFlowノードをまとめて監視・設定できます。

主な機能

  • 01入力、プロセッサ、出力、エラー出力をYAMLで定義するストリームパイプライン
  • 02SQL、Python UDF、VRL、Protobufによる処理ステップ
  • 03Kafka、MQTT、NATS、Redis、SQLデータベースなどに接続するコネクタ
  • 04AIワークロード向けのEmbedding、LLM、ベクトル検索プロセッサ
  • 05ストリームごとのWALにより、デフォルトで少なくとも1回の配信を実現

ユースケース

  • KafkaのトピックをSQLでリアルタイムにフィルタリング・変換する
  • メッセージストリームをベクトルデータベースに書き込む前に、EmbeddingやLLMでデータを拡充する
  • MQTTからIoTセンサーデータを取り込み、InfluxDBやSQLに書き込む
  • Debezium形式のKafkaトピックからデータベース変更イベントを同期する

クイックスタート

  1. 1

    リポジトリをクローンする

    git clone https://github.com/arkflow-rs/arkflow.git
  2. 2

    プロジェクトディレクトリに移動する

    cd arkflow
  3. 3

    release モードでプロジェクトをビルドする

    cargo build --release
  4. 4

    設定ファイルを指定して ArkFlow を実行する

    ./target/release/arkflow --config config.yaml

使う前に知っておきたいこと

  • ソースからビルドするには Rust のツールチェーンが必要です。README にはパッケージマネージャーを使ったインストール方法は記載されていません。
  • 実行前に、Quick Start の設定ファイルを config.yaml として手動で作成する必要があります。

収録されている特集

トピック

よくある質問

arkflow とは?
Kafka、MQTT、NATSなどのリアルタイムデータに対して、SQL、Python UDF、ML/LLM処理を実行するRust製ストリーム処理エンジン。 ArkFlowは、Tokioの非同期ランタイム上で動作するRust製ストリーム処理エンジンです。ストリームはYAMLで定義し、入力、処理パイプライン、出力に加え、メッセージ処理に失敗した場合の任意のエラー出力を指定できます。入力先にはKafka、MQTT、NATS、Pulsar、Redis、WebSocket、HTTP、ファイル、SQLデータベースなどがあり、出力先にはKafka、MongoDB、InfluxDB、SQLデータベース、Qdrant、Milvus、pgvectorなどのベクトルストアがあります。
arkflow は無料で使えますか?ライセンスは?
arkflow は Apache-2.0 ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
arkflow は今もメンテナンスされていますか?
活発にメンテナンス中。arkflow の最終コミットは 2026年10月22日 です。
arkflow は何に使えますか?
KafkaのトピックをSQLでリアルタイムにフィルタリング・変換する メッセージストリームをベクトルデータベースに書き込む前に、EmbeddingやLLMでデータを拡充する MQTTからIoTセンサーデータを取り込み、InfluxDBやSQLに書き込む Debezium形式のKafkaトピックからデータベース変更イベントを同期する
arkflow のインストール方法は?
リポジトリをクローンする: git clone https://github.com/arkflow-rs/arkflow.git プロジェクトディレクトリに移動する: cd arkflow release モードでプロジェクトをビルドする: cargo build --release 設定ファイルを指定して ArkFlow を実行する: ./target/release/arkflow --config config.yaml
arkflow はどこで入手できますか?
ソースコードとインストール手順は GitHub にあります:https://github.com/arkflow-rs/arkflow

概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。

関連プロジェクト