Apache Beam KinesisIO Java - 在运动流中使用数据离开的地方答案
Apache Beam KinesisIO Java - Consume the data in a kinesis stream from where it leftApache Beam KinesisIO Java - 在运动流中使用数据离开的地方
首先我想说的是,这对 Beam 世界来说是全新的。我正在处理一项以 Apache Beam 为重点的任务,我的主要数据源是 Kinesis 流。
在那里,当我使用流数据时,我注意到当我重新启动程序(我的消费者应用程序)时会出现相同的数据集。这是我的代码,
String awsStreamName = KinesisStream.getProperty("stream.name");
String awsAccessKey = KinesisStream.getProperty("access.key");
String awsSecretKey = KinesisStream.getProperty("secret.key");
String awsRegion = KinesisStream.getProperty("aws.region");
Regions region = Regions.fromName(awsRegion);
return KinesisIO.read()
.withStreamName(awsStreamName)
.withInitialPositionInStream(InitialPositionInStream.LATEST)
.withAWSClientsProvider(awsAccessKey, awsSecretKey, region);
我想要的只是,我需要从我离开的地方开始读取数据。如果有人也可以提供一些资源,我将不胜感激。
我也发现了一个类似的问题,但对我没有帮助 - Apache Beam KinesisIO Java processing pipeline - application state, error handling & fault-tolerance?