> For the complete documentation index, see [llms.txt](https://docs.e6data.com/ingestion-engine/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.e6data.com/ingestion-engine/architecture/data-plane.md).

# Workers

Workers provide the compute capacity that runs e6 Ingestion Engine pipelines. The controller assigns pipeline work to available workers, while each worker processes data through sources, SQL transformations, stateful operators, and sinks.

## How work is distributed

A pipeline is divided into parallel tasks. These tasks are distributed across workers according to the pipeline's configured parallelism and the capacity available in the cluster.

Increasing parallelism can improve throughput when the source and sink support parallel processing. Worker CPU and memory should be sized for the number and type of tasks they run.

## Processing data

Workers perform the data-plane operations of a pipeline:

* Read records from configured sources
* Apply SQL transformations
* Maintain state for joins, windows, and aggregations
* Exchange data between parallel tasks when required
* Write results to configured sinks
* Participate in checkpoints and recovery

The controller manages task placement and pipeline lifecycle; users do not need to assign individual tasks to workers.

## Scaling

In Kubernetes deployments, e6 Ingestion Engine creates and manages worker pods according to pipeline demand and cluster configuration.

Two settings affect capacity:

* **Pipeline parallelism** controls how many tasks process the pipeline concurrently.
* **Worker resources** control the CPU and memory available to those tasks.

Some connectors impose additional scaling constraints. Consult the connector documentation before increasing parallelism.

## Failure recovery

If a worker becomes unavailable, e6 Ingestion Engine reschedules its work on available capacity. Stateful tasks restore from the latest successful checkpoint, while supported sources resume from their recorded positions.

Recovery time depends on checkpoint size, available cluster capacity, and source or sink connectivity.

## Networking and security

Workers communicate with the controller, other workers, and configured external systems. Worker communication should remain on private cluster networks.

Access to sources, sinks, and object storage should use workload identity or secret references rather than credentials embedded in pipeline configuration.

## Monitoring workers

Use the worker metrics and logs to monitor:

* Records and bytes processed
* Source lag
* Sink throughput and failures
* Checkpoint progress
* Backpressure and queue utilization
* Task failures and restarts

See [Metrics](/ingestion-engine/operations/observability/metrics.md) for the available monitoring signals.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## 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, and the optional `goal` query parameter:

```
GET https://docs.e6data.com/ingestion-engine/architecture/data-plane.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

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.
