Skip to content

Firehose Connector

Unstable API 0.10.0 @project-lakechain/firehose-storage-connector TypeScript

The Firehose storage connector makes it possible to forward CloudEvents emitted by one or multiple middlewares in a pipeline to a user-defined Kinesis Firehose delivery stream. This connector allows to nicely decouple the processing of your documents with third-party applications that can consume processed documents from a delivery stream.

💁 This connector only forwards the CloudEvents emitted by middlewares to the delivery stream, and not the documents themselves.



To use the Firehose storage connector, you import it in your CDK stack, and connect it to a data source providing documents.

import { FirehoseStorageConnector } from '@project-lakechain/firehose-storage-connector';
import { CacheStorage } from '@project-lakechain/core';
class Stack extends cdk.Stack {
constructor(scope: cdk.Construct, id: string) {
// The cache storage.
const cache = new CacheStorage(this, 'Cache');
// The destination delivery stream.
const stream = // ...
// Create the Firehose storage connector.
const connector = new FirehoseStorageConnector.Builder()
.withScope(this)
.withIdentifier('FirehoseStorageConnector')
.withCacheStorage(cache)
.withSource(source) // 👈 Specify a data source
.withDestinationStream(stream)
.build();
}
}


This middleware makes use of the native integration between the SNS output topics of source middlewares with Kinesis Firehose to forward messages to a delivery stream, without relying on any additional compute resources.

Firehose Storage Connector Architecture




Mime Type Description
*/* This middleware supports any type of documents.

This middleware does not emit any output.


Type Description
CPU This middleware only supports CPU compute.