---
id: "aws-firehose"
type: "component"
kind: "stream-processor"
provider: "aws"
category: "messaging"
aliases: "Kinesis Data Firehose"
docs: "https://docs.aws.amazon.com/firehose/latest/dev/create-configure-backup.html"
url: "https://localhost:3000/catalogue/components/aws-firehose"
---

# Amazon Data Firehose

Fully managed stream delivery that buffers records and loads them into S3, Redshift, OpenSearch, Splunk, Iceberg or an HTTP endpoint.

| | |
|---|---|
| Provider | [aws](https://localhost:3000/catalogue?provider=aws) |
| Kind | [Stream processor](https://localhost:3000/catalogue/kinds/stream-processor) |
| Category | Messaging |
| Official docs | [https://docs.aws.amazon.com/firehose/latest/dev/create-configure-backup.html](https://docs.aws.amazon.com/firehose/latest/dev/create-configure-backup.html) |
| Also known as | Kinesis Data Firehose |

## Properties

| property | type | values | required | kind default | this component |
|---|---|---|---|---|---|
| `bufferIntervalSeconds` | integer | — | no | 300 | inherited |
| `bufferSizeMb` | integer | — | no | 5 | inherited |
| `checkpointIntervalSeconds` | integer | — | no | — | inherited |
| `dataTransformation` | boolean | — | no | false | inherited |
| `destination` | enum | `s3`, `redshift`, `opensearch`, `splunk`, `iceberg`, `snowflake`, `http-endpoint` | no | "s3" | inherited |
| `exactlyOnce` | boolean | — | no | false | **false** |
| `instances` | integer | — | no | — | inherited |
| `lateDataPolicy` | enum | `drop`, `shift`, `sideline` | no | — | inherited |
| `managed` | boolean | — | no | false | **true** |
| `serverSideEncryption` | boolean | — | no | false | inherited |
| `stateBackend` | enum | `memory`, `rocksdb`, `external` | no | "memory" | **"memory"** |
| `watermarkSeconds` | integer | — | no | — | inherited |
| `windowing` | enum | `none`, `event-time`, `processing-time` | no | "none" | **"none"** |

Bold values are the ones this component pins.

## Rules that apply · 1

### Event-time windows without watermark `windowed-aggregation-without-watermark` (warning)

- Page: https://localhost:3000/catalogue/rules/windowed-aggregation-without-watermark.md
- Why: Event-time windows need a watermark to know when a window is complete. Without one the processor either waits forever or closes windows early and silently drops late events.
- Applies to: every node of kind stream-processor
- Message: Stream processor '{{node.id}}' windows by event time but declares no watermark. Late data handling is undefined.

It fires when:

- all of these hold:
  - the node's `windowing` is "event-time"
  - the node's `watermarkSeconds` has no value

## Other products of the same kind · 33

- [Realtime Compute for Apache Flink](https://localhost:3000/catalogue/components/alibaba-flink.md) `alibaba-flink` — alibabacloud
- [Amazon EventBridge Pipes](https://localhost:3000/catalogue/components/aws-eventbridge-pipes.md) `aws-eventbridge-pipes` — aws
- [Amazon Managed Service for Apache Flink](https://localhost:3000/catalogue/components/aws-managed-flink.md) `aws-managed-flink` — aws
- [Amazon OpenSearch Ingestion](https://localhost:3000/catalogue/components/aws-opensearch-ingestion.md) `aws-opensearch-ingestion` — aws
- [Azure Stream Analytics](https://localhost:3000/catalogue/components/azure-stream-analytics.md) `azure-stream-analytics` — azure
- [Cloudflare Logpush](https://localhost:3000/catalogue/components/cloudflare-logpush.md) `cloudflare-logpush` — cloudflare
- [Cloudflare Pipelines](https://localhost:3000/catalogue/components/cloudflare-pipelines.md) `cloudflare-pipelines` — cloudflare
- [Arroyo](https://localhost:3000/catalogue/components/arroyo.md) `arroyo` — default
- [Apache Beam](https://localhost:3000/catalogue/components/beam.md) `beam` — default
- [Bytewax](https://localhost:3000/catalogue/components/bytewax.md) `bytewax` — default
- [Drasi](https://localhost:3000/catalogue/components/drasi.md) `drasi` — default
- [Apache Flink](https://localhost:3000/catalogue/components/flink.md) `flink` — default
- [Kafka Streams](https://localhost:3000/catalogue/components/kafka-streams.md) `kafka-streams` — default
- [ksqlDB](https://localhost:3000/catalogue/components/ksqldb.md) `ksqldb` — default
- [Logstash](https://localhost:3000/catalogue/components/logstash.md) `logstash` — default
- [Materialize](https://localhost:3000/catalogue/components/materialize.md) `materialize` — default
- [Apache NiFi](https://localhost:3000/catalogue/components/nifi.md) `nifi` — default
- [Norikra](https://localhost:3000/catalogue/components/norikra.md) `norikra` — default
- [Redpanda Connect](https://localhost:3000/catalogue/components/redpanda-connect.md) `redpanda-connect` — default
- [RisingWave](https://localhost:3000/catalogue/components/risingwave.md) `risingwave` — default
- [Apache Samza](https://localhost:3000/catalogue/components/samza.md) `samza` — default
- [Snowplow](https://localhost:3000/catalogue/components/snowplow.md) `snowplow` — default
- [Spark Structured Streaming](https://localhost:3000/catalogue/components/spark-streaming.md) `spark-streaming` — default
- [Apache Storm](https://localhost:3000/catalogue/components/storm.md) `storm` — default
- [Generic stream processor](https://localhost:3000/catalogue/components/stream-processor.md) `stream-processor` — default
- [Tremor](https://localhost:3000/catalogue/components/tremor.md) `tremor` — default
- [Google Cloud Dataflow](https://localhost:3000/catalogue/components/google-dataflow.md) `google-dataflow` — gcp
- [Manufacturing Data Engine](https://localhost:3000/catalogue/components/google-manufacturing-data-engine.md) `google-manufacturing-data-engine` — gcp
- [Activity Tracker Event Routing](https://localhost:3000/catalogue/components/ibm-activity-tracker-event-routing.md) `ibm-activity-tracker-event-routing` — ibm
- [IBM Cloud Logs Routing](https://localhost:3000/catalogue/components/ibm-logs-routing.md) `ibm-logs-routing` — ibm
- [IBM Cloud Metrics Routing](https://localhost:3000/catalogue/components/ibm-metrics-routing.md) `ibm-metrics-routing` — ibm
- [OCI Connector Hub](https://localhost:3000/catalogue/components/oci-connector-hub.md) `oci-connector-hub` — oci
- [OCI GoldenGate Stream Analytics](https://localhost:3000/catalogue/components/oci-goldengate-stream-analytics.md) `oci-goldengate-stream-analytics` — oci

## Use it in a design

```yaml
nodes:
  - { id: "aws-firehose", component: "aws-firehose" }
```

## Source (`component` YAML, verbatim)

```yaml
# yaml-language-server: $schema=../../schema/component.schema.json
# Amazon Data Firehose: fully managed buffer-and-deliver pipeline to S3, Redshift, OpenSearch,
# Splunk, Iceberg and HTTP endpoints. "Understand data delivery in Amazon Data Firehose" states
# at-least-once semantics; "Configure buffering hints" gives the S3 default 5 MiB / 300 seconds.
schemaVersion: "1"
type: "component"
id: "aws-firehose"
kind: "stream-processor"
provider: "aws"
docs: "https://docs.aws.amazon.com/firehose/latest/dev/create-configure-backup.html"
aliases: ["Kinesis Data Firehose"]
defaults:
  managed: true
  windowing: "none"
  exactlyOnce: false
  stateBackend: "memory"
properties:
  destination:
    type: "enum"
    values: ["s3", "redshift", "opensearch", "splunk", "iceberg", "snowflake", "http-endpoint"]
    default: "s3"
  bufferSizeMb:
    type: "integer"
    default: 5
  bufferIntervalSeconds:
    type: "integer"
    default: 300
  dataTransformation:
    type: "boolean"
    default: false
  serverSideEncryption:
    type: "boolean"
    default: false
```

Human page: https://localhost:3000/catalogue/components/aws-firehose
