For batch processing workflows, the strongest matches are powerjob/powerjob (PowerJob is a distributed workflow orchestration engine that provides), apache/incubator-airflow (Apache Airflow is a comprehensive workflow orchestration platform that) and ouqiang/gocron (This is a distributed task scheduling and management system). azkaban/azkaban and hatchet-dev/hatchet round out the shortlist. Each is ranked by relevance to your query, popularity and recent activity.
Explore the best open-source batch processing frameworks. Compare top-rated tools by activity and features to find the best fit for your workflows.
Enterprise job scheduling middleware with distributed computing ability.
PowerJob is a distributed workflow orchestration engine that provides DAG-based task scheduling, built-in retry policies, and a web-based dashboard for monitoring, making it a comprehensive solution for managing complex data processing jobs.
This project is a Python workflow orchestration platform and programmatic data pipeline engine used to author, schedule, and monitor complex data pipelines. It functions as a directed acyclic graph manager and scheduler, allowing users to define data movement and transformation tasks as code to ensure precise execution order and maintainability. The platform distinguishes itself by treating workflows as code, enabling pipelines to be versioned and tested through a standard programming language. It utilizes a system of extensible operators to encapsulate integration logic and employs a templat
Apache Airflow is a comprehensive workflow orchestration platform that uses DAGs to define, schedule, and monitor complex data pipelines with robust support for distributed execution, state persistence, and error handling.
定时任务管理系统
This is a distributed task scheduling and management system that supports sequential dependencies, retries, and multi-node execution, making it a capable tool for orchestrating batch jobs despite its cron-centric design.
Azkaban is a distributed workflow manager and DAG-based job orchestrator designed as an enterprise batch processor. It serves as a Java-based workflow engine that schedules and executes complex job sequences across a cluster of executor servers, with specific functionality for managing big data workloads on Hadoop clusters. The system distinguishes itself through a distributed executor model that coordinates state via a shared database to ensure high availability. It employs a plugin-based architecture that allows for custom job types and system functionality extensions, including the ability
Azkaban is a dedicated workflow orchestrator that natively supports DAG-based scheduling, distributed execution, and robust error handling, making it a comprehensive solution for managing complex data processing pipelines.
Hatchet is an open-source durable workflow engine and task orchestration platform. It provides a framework for building and executing fault-tolerant, multi-step pipelines as directed acyclic graphs (DAGs), with automatic retries, scheduling, and real-time observability. The system is built around durable task checkpointing, which persists execution state after each step so work can resume from the last checkpoint after a worker crash or restart, and it supports event-driven task resumption that pauses a task until a matching external event arrives. The platform distinguishes itself through it
Hatchet is a durable workflow engine that natively supports DAG-based task scheduling, distributed execution, and state persistence, making it a comprehensive solution for orchestrating complex data processing pipelines.
Luigi is a Python framework designed for building and managing complex batch data pipelines. It functions as a workflow orchestration engine that organizes tasks into directed acyclic graphs, ensuring that jobs execute in the correct logical order based on their dependencies. By utilizing a centralized scheduler, the system coordinates task execution across distributed environments, tracks global workflow state, and prevents redundant processing by verifying the existence of output targets before triggering any work. The project distinguishes itself through a robust state-tracking mechanism t
Luigi is a comprehensive workflow orchestration engine that natively supports DAG-based task scheduling, distributed execution, and robust state persistence for managing complex data pipelines.
Light Task Scheduler is a distributed job scheduling and workflow orchestration platform designed for managing background processing across scalable computing environments. It functions as a cluster management system that coordinates stateless nodes to execute recurring, cron-based, or one-time tasks with centralized control and high availability. The platform distinguishes itself through a leader-based coordination model that automatically elects a primary controller to manage task distribution and system state. It supports complex workflow dependencies, ensuring that prerequisite tasks comp
This platform is a distributed workflow orchestration engine that provides the required DAG-based task scheduling, fault-tolerant execution, and cluster-wide monitoring needed for complex data processing pipelines.
Argo Workflows is a container-native workflow engine that functions as a Kubernetes custom resource controller. It orchestrates complex sequences of containerized tasks by executing them as directed acyclic graphs, allowing for dependency management and parallel processing within a cluster. The system extends the native Kubernetes control plane to manage the full lifecycle of automated processes, from initial triggering to final resource cleanup. The platform distinguishes itself through its controller-pattern reconciliation, which continuously monitors workflow states to align them with desi
Argo Workflows is a container-native engine designed specifically for orchestrating complex DAG-based tasks on Kubernetes, providing the full suite of scheduling, retry, monitoring, and state management features required for robust batch processing.
Conductor is a durable workflow engine designed to orchestrate complex, long-running business processes and autonomous agent loops. It functions as a stateful execution platform that persists the entire history of a process, ensuring that workflows remain reliable and recoverable across infrastructure failures, system restarts, and transient network errors. By managing task lifecycles, worker polling, and state transitions, it provides a centralized coordination layer for distributed systems. The platform distinguishes itself through its specialized support for AI agent orchestration, allowin
Conductor is a robust, distributed workflow orchestration engine that natively supports DAG-based task scheduling, state persistence, and comprehensive retry and monitoring capabilities for complex, long-running processes.
Prefect is a workflow orchestration platform designed to define, schedule, and monitor complex data pipelines as Python code. It functions as a container-native engine that wraps individual tasks in isolated environments, ensuring consistent dependencies and resource allocation across diverse infrastructure. By utilizing a state-machine-based orchestration model, the system tracks execution progress through discrete transitions and persistent event logs to maintain reliable and observable task processing. The platform distinguishes itself through a decoupled worker-API architecture, which sep
Prefect is a comprehensive workflow orchestration engine that provides DAG-based scheduling, distributed execution, and robust observability, making it a direct fit for managing complex data processing pipelines.
Kestra is a declarative workflow orchestrator designed to manage complex task dependencies and automated processes through versioned configuration files. It functions as a distributed platform that decouples task scheduling from execution by offloading computational workloads to a fleet of worker nodes. The system uses a reactive, event-driven engine to initiate workflows automatically in response to external signals, webhooks, schedules, or file system changes. The platform distinguishes itself through a modular plugin architecture that allows for the integration of custom tasks and external
Kestra is a comprehensive workflow orchestration platform that provides DAG-based scheduling, distributed execution, and robust observability, making it a direct fit for managing complex data processing pipelines.
Metaflow is a Python machine learning framework and MLOps workflow orchestrator designed to manage the lifecycle of data pipelines from local prototyping to production. It serves as a distributed compute manager and an experiment tracking system, enabling the creation of reproducible pipelines that transition between development and high-availability production environments. The framework distinguishes itself through an integrated checkpointing system that automatically persists intermediate data artifacts to remote storage, allowing failed runs to be resumed from the last successful step. It
Metaflow is a workflow orchestration engine that manages complex data pipelines and distributed task execution, providing the DAG-based scheduling, state persistence, and observability required for data processing workflows.
Airflow is a platform for programmatically authoring, scheduling, and monitoring complex data pipelines. It functions as a workflow automation engine that manages the lifecycle of recurring business processes by executing code-defined task dependencies. By representing workflows as directed acyclic graphs, the system ensures that task execution order and data flow are explicitly defined and reliably maintained across distributed computing environments. The platform distinguishes itself through a highly modular, provider-based architecture that decouples core orchestration logic from external
Airflow is a comprehensive workflow orchestration engine that uses DAGs to manage complex data pipelines, offering robust scheduling, distributed execution, and extensive monitoring capabilities that align perfectly with your requirements.
ClearML is a comprehensive MLOps platform designed to manage the entire machine learning lifecycle. It functions as an experiment tracking tool, a data versioning system, and a pipeline orchestrator, while providing infrastructure for GPU cluster management and model serving. The platform is distinguished by its ability to handle hybrid-cloud compute scheduling and fractional GPU allocation, allowing multiple workloads to share a single hardware accelerator. It employs a metadata-based approach to data versioning, using virtual views to track large datasets and artifacts without duplicating r
ClearML provides a robust pipeline orchestration engine that supports DAG-based task scheduling, distributed execution, and comprehensive monitoring, making it a strong fit for managing complex data processing and computational workflows.
Polyaxon is a Kubernetes-native machine learning orchestration platform and MLOps pipeline orchestrator. It serves as a control plane for managing distributed deep learning workloads, automated machine learning pipelines, and experiment tracking. The platform distinguishes itself through specialized services for distributed training management, including MPI-based coordination for PyTorch and TensorFlow. It provides an automated hyperparameter optimization service utilizing Bayesian, random, and grid search algorithms, alongside managed interactive AI workspaces for launching Jupyter notebook
Polyaxon is a Kubernetes-native workflow orchestrator that provides DAG-based scheduling, distributed execution, and state management specifically tailored for machine learning pipelines and computational jobs.
Ray is a distributed computing framework designed to scale Python and Java applications across clusters by abstracting task scheduling and resource management. It functions as a resource-aware execution engine that manages task dependencies, placement, and fault tolerance across networked compute nodes. At its core, the system provides a stateful actor model, allowing developers to define classes that run in dedicated processes to maintain and mutate internal state across remote method calls. The framework distinguishes itself through a robust cross-language interoperability layer, enabling f
Ray is a distributed execution engine that provides the core primitives for task scheduling, dependency management, and fault tolerance required to build complex data processing workflows, though it functions more as a low-level framework than a pre-packaged workflow orchestrator.
Dask is a parallel computing framework and distributed task scheduler designed to scale Python data science workflows from single machines to large clusters. It functions as a cluster resource manager that orchestrates computational logic by representing tasks and their dependencies as directed acyclic graphs. This architecture allows the system to automate the distribution of workloads across available hardware while managing complex execution requirements. The project distinguishes itself through a lazy evaluation engine that defers data operations until they are explicitly requested, enabl
Dask is a distributed task scheduler that uses directed acyclic graphs to manage complex computational dependencies, making it a capable engine for orchestrating data processing workflows.
ZenML is an extensible machine learning orchestration framework designed to manage the end-to-end lifecycle of data pipelines and AI agent workflows. It functions as a durable orchestrator that executes machine learning tasks as directed acyclic graphs, ensuring that every step is containerized for consistent performance across local, cloud, and hybrid infrastructure. By decoupling pipeline code from underlying compute and storage backends, the platform allows developers to define infrastructure-agnostic stacks that remain portable across diverse environments. The project distinguishes itself
ZenML is a workflow orchestration framework that uses DAG-based scheduling to manage data and machine learning pipelines, providing the distributed execution, monitoring, and state persistence required for complex task sequences.
Inngest is a durable execution framework and event-driven automation engine designed to orchestrate background workflows. It enables developers to build resilient, stateful processes by memoizing function steps, ensuring that long-running tasks can automatically resume from the last successful operation after failures, timeouts, or infrastructure restarts. The platform distinguishes itself through its event-driven architecture, which uses a schema-validated bus to trigger functions and coordinate complex, multi-step logic. It employs an onion-model middleware approach for cross-cutting concer
Inngest is a workflow orchestration engine that provides durable, stateful execution and event-driven scheduling, making it a strong fit for managing complex, multi-step background processes.
ZenML is an orchestration platform designed for building, deploying, and monitoring reproducible machine learning pipelines and agentic workflows. It provides a unified framework that manages the entire lifecycle of machine learning assets, from data processing and model training to the deployment of persistent inference services. By decoupling pipeline logic from underlying compute and storage, the platform enables teams to transition workflows seamlessly from local development environments to production-grade cloud infrastructure. The platform distinguishes itself through a service-oriented
ZenML is a workflow orchestration platform that provides DAG-based pipeline management, state persistence, and distributed execution specifically tailored for machine learning and data processing lifecycles.
Celery is an asynchronous job processor and distributed task queue designed to offload time-consuming operations to background worker nodes. By utilizing a message-passing architecture, it decouples task producers from consumers, allowing applications to maintain responsiveness while scaling workloads across multiple isolated environments. The system functions as a distributed workload orchestrator that manages the lifecycle of deferred operations through persistent queues. It distinguishes itself by providing a pluggable transport abstraction, which allows the core task logic to remain indep
Celery is a distributed task queue and job processor that provides the core infrastructure for scheduling and executing background tasks, though it requires additional tooling to implement complex DAG-based workflow orchestration.
Marker is a comprehensive document processing platform designed to automate the conversion, extraction, and structuring of data from complex files. It functions as an orchestration engine that chains modular processing steps into versioned, reusable pipelines, allowing organizations to standardize document handling and automate repetitive business tasks at scale. The platform distinguishes itself through its support for secure, private infrastructure deployment, enabling users to run containerized services within their own environments to maintain strict data privacy. It features specialized
Marker functions as an orchestration engine for chaining modular data processing tasks into pipelines, providing the core workflow capabilities and error handling required for complex job automation.
Pathway is a high-performance data processing framework designed for building unified batch and streaming pipelines. It functions as an orchestrator for complex data transformations, utilizing a differential dataflow engine to process updates incrementally. By treating static datasets and continuous event streams with identical logic, the platform ensures exactly-once processing semantics and consistent results across diverse data sources. The framework distinguishes itself through its specialized support for real-time artificial intelligence and retrieval-augmented generation. It features in
Pathway is a high-performance data processing framework that handles complex data transformations and pipeline orchestration, fitting the category by providing the necessary infrastructure for scheduling and executing data-driven tasks.
This project is a data processing engine and AI application platform designed for building production-grade machine learning workflows. It provides a unified programming model that handles both historical batch data and live stream ingestion, enabling the development of real-time ETL pipelines and scalable data transformation workflows. The framework distinguishes itself through differential dataflow execution, which propagates only changes through a pipeline rather than recomputing entire datasets. It supports distributed state management across worker nodes and utilizes incremental stream p
This framework provides a unified engine for batch and stream data processing with distributed state management, making it a capable tool for orchestrating complex data transformation workflows.
Workflow is a platform for executing long-running, stateful processes that automatically persist progress and recover state after system interruptions. It functions as a durable orchestration engine designed to manage complex, multi-step asynchronous operations within distributed systems. The framework distinguishes itself through event-sourcing and checkpointing mechanisms that record execution steps as an immutable log, allowing for precise state reconstruction after failures. It provides sandboxed task isolation to run side-effect-heavy logic in restricted environments, ensuring that sensi
This is a workflow orchestration engine that allows you to define and execute complex, stateful task sequences using TypeScript, providing the core DAG-based scheduling and persistence required for data processing pipelines.
Gaia is a polyglot pipeline orchestrator and continuous integration and delivery automation platform. It functions as a multi-language workflow engine that coordinates the movement and transformation of data by executing tasks written in different programming languages through a dependency graph. The platform distinguishes itself with a visual pipeline configurator for mapping function arguments via a management portal and a secure secret manager that uses ciphers to encrypt passwords and tokens. It further automates the software lifecycle by cloning repositories and recompiling applications
Gaia is a polyglot workflow engine that uses dependency graphs to coordinate tasks, providing the core orchestration and scheduling capabilities required for complex data processing pipelines.
Pueue is a task queue manager for shell commands, built as a daemon and command-line interface. It accepts shell commands into a managed queue and executes them with configurable parallel execution limits, supporting both global and per-group concurrency controls. The daemon persists its entire state—task queue, logs, and configuration—to disk, ensuring survival across crashes and system restarts. The project distinguishes itself through a dependency graph that lets tasks declare prerequisites, forming a directed acyclic graph that controls execution order. Tasks can be organized into named g
Pueue is a task queue manager that supports DAG-based dependencies and persistent execution of shell commands, making it a capable tool for local workflow orchestration even if it is designed for single-machine rather than distributed cluster environments.
Core package for defining and running durable workflows and activities. Supports long-running persistent workflows, retries, queues, parallel execution, workflow monitoring, dedicated storage connections, and orchestration for microservices, data pipelines, sagas, agentic workflows, and other complex business processes.
This is a workflow orchestration engine that provides durable execution, DAG-like task management, and state persistence, making it a suitable tool for managing complex sequences of data processing tasks within the PHP ecosystem.
Spring Batch is a framework for writing batch applications using Java and Spring
Spring Batch is a robust framework for building complex, high-volume batch processing applications in Java, providing essential features like state persistence, retry logic, and job scheduling, though it is more focused on individual job execution than on orchestrating multi-task DAG workflows.
The simple, stupid batch framework for Java
This is a Java-based batch processing framework that provides structured job execution, error handling, and state management, though it is more focused on linear batch processing than complex DAG-based workflow orchestration.
| Dépôt | Stars | Langage | Licence | Dernier push |
|---|---|---|---|---|
| powerjob/powerjob | 7.8K | Java | Apache-2.0 | |
| apache/incubator-airflow | 45.8K | Python | Apache-2.0 | |
| ouqiang/gocron | 6.3K | Go | MIT | |
| azkaban/azkaban | 4.5K | Java | Apache-2.0 | |
| hatchet-dev/hatchet | 6.6K | Go | mit | |
| spotify/luigi | 18.7K | Python | apache-2.0 | |
| ltsopensource/light-task-scheduler | 3K | Java | Apache-2.0 | |
| argoproj/argo-workflows | 16.5K | Go | apache-2.0 | |
| conductor-oss/conductor | 32K | Java | Apache-2.0 | |
| prefecthq/prefect | 21.6K | Python | apache-2.0 |