我在 Apchea Beam 中编写了一个非常简单的管道,如下所示从我在 Confluent Cloud 上的 kafka 集群中读取数据,如下所示:
Pipeline pipeline = Pipeline.create(options);
Map<String, Object> propertyBuilder = new HashMap();
propertyBuilder.put("ssl.endpoint.identification.algorithm", "https");
propertyBuilder.put("sasl.mechanism","PLAIN");
propertyBuilder.put("request.timeout.ms","20000");
propertyBuilder.put("retry.backoff.ms","500");
pipeline
.apply(KafkaIO.<byte[], byte[]>readBytes()
.withBootstrapServers("pkc-epgnk.us-central1.gcp.confluent.cloud:9092")
.withTopic("gcp-ingestion-1")
.withKeyDeserializer(ByteArrayDeserializer.class)
.withValueDeserializer(ByteArrayDeserializer.class)
.updateConsumerProperties(propertyBuilder)
.withoutMetadata() // PCollection<KV<Long, String>>
) .apply(Values.<byte[]>create());
但是,当运行上面的代码从我的 kafka 集群中读取数据时,我得到了以下异常
我在直接 java runner 上运行,我使用的是 beam 2.8,
我可以读取并向我的 kafka 融合集群生成消息,但不能通过上述代码。