Este contenido no está disponible en el idioma seleccionado.

10.6. AWS-Kinesis


Kinesis Component

Available as of Camel 2.17
The Kinesis component supports receiving messages from and sending messages to Amazon Kinesis service.
Note
You must have a valid Amazon Web Services developer account, and be signed up to use Amazon Kinesis. More information are available at AWS Kinesis

URI Format

aws-kinesis://stream-name[?options]
Copy to Clipboard Toggle word wrap
The stream needs to be created prior to it being used. You can append query options to the URI in the following format, ?options=value&option2=value&...

URI Options

Expand
Name
Default Value
Context
Description
amazonKinesisClient
null
Consumer
Reference to a com.amazonaws.services.kinesis.AmazonKinesisClient in the Registry.
maxMessagesPerPoll
100
Consumer
Maximum results that will be returned in each poll to the AWS API, Given that the shard iterator is unique to the consumer, changing it shouldn't effect other consumers.
iteratorType
TRIM_HORIZON
Consumer
One of trim_horizon or latest. See http://docs.aws.amazon.com/kinesis/latest/APIReference/API_GetShardIterator.html for descriptions of these two iterator types.
Note
You have to provide the amazonKinesisClient in the Registry with proxies and relevant credentials configured.

Batch Consumer

This component implements the Batch Consumer.
This allows you for instance to know how many messages exists in this batch and for instance let the Aggregator aggregate this number of messages.

Message headers set by the Kinesis consumer

Expand
Header
Type
Description
CamelAwsKinesisSequenceNumber
String
The sequence number of the record. This is represented as a String as it size is not defined by the API. If it is to be used as a numerical type then use
CamelAwsKinesisApproximateArrivalTimestamp
String
The time AWS assigned as the arrival time of the record.
CamelAwsKinesisPartitionKey
String
Identifies which shard in the stream the data record is assigned to.

AmazonKinesis configuration

You will need to create an instance of AmazonDynamoDBStreamsClient and bind it to the registry
ClientConfiguration clientConfiguration = new ClientConfiguration();
clientConfiguration.setProxyHost("http://myProxyHost");
clientConfiguration.setProxyPort(8080);

Region region = Region.getRegion(Regions.fromName(region));
region.createClient(AmazonDynamoDBStreamsClient.class, null, clientConfiguration);
// the 'null' here is the AWSCredentialsProvider which defaults to an instance of DefaultAWSCredentialsProviderChain

registry.bind("kinesisClient", client);
Copy to Clipboard Toggle word wrap

Providing AWS Credentials

It is recommended that the credentials are obtained by using the DefaultAWSCredentialsProviderChain that is the default when creating a new ClientConfiguration instance, however, a different AWSCredentialsProvider can be specified when calling createClient(...).

Dependencies

Maven users will need to add the following dependency to their pom.xml.
<dependency>
    <groupId>org.apache.camel</groupId>
    <artifactId>camel-aws</artifactId>
    <version>${camel-version}</version>
</dependency>
Copy to Clipboard Toggle word wrap
where ${camel-version} must be replaced by the actual version of Camel (2.17 or higher).
Volver arriba
Red Hat logoGithubredditYoutubeTwitter

Aprender

Pruebe, compre y venda

Comunidades

Acerca de la documentación de Red Hat

Ayudamos a los usuarios de Red Hat a innovar y alcanzar sus objetivos con nuestros productos y servicios con contenido en el que pueden confiar. Explore nuestras recientes actualizaciones.

Hacer que el código abierto sea más inclusivo

Red Hat se compromete a reemplazar el lenguaje problemático en nuestro código, documentación y propiedades web. Para más detalles, consulte el Blog de Red Hat.

Acerca de Red Hat

Ofrecemos soluciones reforzadas que facilitan a las empresas trabajar en plataformas y entornos, desde el centro de datos central hasta el perímetro de la red.

Theme

© 2025 Red Hat