Чтение из AWS Kinesis, но с использованием локального Динамо - PullRequest
0 голосов
/ 11 октября 2019

Я хочу читать из потока Kinesis для учетной записи, где у меня нет прав для создания таблицы DynamoDB. Я предполагаю, что динамо-таблица предназначена для записи местоположения «указателя чтения».

Возможно ли (с использованием библиотек Java AWS) использовать локальный экземпляр динамо для этого отслеживания?

1 Ответ

0 голосов
/ 12 октября 2019

Поток здесь: https://github.com/awslabs/amazon-kinesis-client/issues/34, показывает конструктор KCL Worker, который принимает клиента DynamoDB.

public Worker( 
         com.amazonaws.services.kinesis.clientlibrary.interfaces.IRecordProcessorFactory recordProcessorFactory, 
         KinesisClientLibConfiguration config, 
         AmazonKinesis kinesisClient, 
         AmazonDynamoDB dynamoDBClient, 
         AmazonCloudWatch cloudWatchClient, 
         ExecutorService execService) { 
     this(recordProcessorFactory, config, kinesisClient, dynamoDBClient, 
             getMetricsFactory(cloudWatchClient, config), execService); 
     if (config.getRegionName() != null) { 
         Region region = RegionUtils.getRegion(config.getRegionName()); 
         cloudWatchClient.setRegion(region); 
         LOG.debug("The region of Amazon CloudWatch client has been set to " + config.getRegionName()); 
     } 
 } 

Вы можете создать свой собственный клиент DynamoDB, указывающий на DynamoDB Local, и инициализировать KCL Worker.

Вы даже можете заставить эту настройку работать для нескольких приложений KCL на нескольких экземплярах / контейнерах / контейнерах EC2, если вы предоставляете локальный DynamoDB доступным по сети.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...