# Batch Tasks

Python runners are used for executing batch processes, which are typically deployed as one-time jobs or scheduled cron-jobs. While it is possible to use Java runners and sagas for executing and scheduling any flow, these batch runners can be utilized for long running processes, as well as leveraging Python specific ML libraries without blocking real-time microservice resources.&#x20;

Two main types of runners are available out-of-box, using [Rierino Python Packages](/installation/artifacts.md):

## rierino\_util.Runner

Triggers "[Process](/devops/batch-tasks/python-processes.md)" type Python tasks, using a "base64" command line argument to pass base64 encoded contents of the Json object for process parameters. These parameters should include:

| Parameter | Definition                                | Example                                                                                               | Default |
| --------- | ----------------------------------------- | ----------------------------------------------------------------------------------------------------- | ------- |
| package   | Python package of the module to execute   | rierino\_runner                                                                                       | -       |
| module    | Process module to execute                 | IterateProcess                                                                                        | -       |
| args      | Process module specific arguments to pass | {"parameters": {"iterator":{ "module": "rierino\_runner.iterator.DataIterator", "element": "list" }}} | -       |

## rierino\_runner.ProcessorRunner

Triggers "[Processor](/devops/batch-tasks/python-processors.md)" type Python tasks, for single step, relatively simpler executions, using the following command line arguments:

| Argument            | Definition                                                                                                     | Example              | Default |
| ------------------- | -------------------------------------------------------------------------------------------------------------- | -------------------- | ------- |
| base64              | Base64 encoded contents of the Json object for full parameters (can include dict, package, module, parameters) | -                    | -       |
| dict                | Json string for passing input payload to processor                                                             | {list: \[]}          | -       |
| package             | Python package of the module to execute                                                                        | rierino\_runner      | -       |
| module              | Processor module to execute                                                                                    | RestProcessor        | -       |
| \[processor\_param] | Key=value pair for passing individual parameters to the processor                                              | {url: "example.com"} | -       |


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.rierino.com/devops/batch-tasks.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
