samthebest:
ビッグデータの多くの状況では、むしろ、一度に一つのレコードよりも、外出先でのレコードの小さなバッファで動作することが好ましいです。
自然の例では、支持体には、効率のためにバッチ処理するいくつかの外部APIを呼び出しています。
どのように我々はカフカストリームでこれを行うことができますか?ルックスは、私が欲しいものを好きなことを私はAPIで何かを見つけることができません。
これまでのところ私が持っています:
builder.stream[String, String]("my-input-topic")
.mapValues(externalApiCall).to("my-output-topic")
私が欲しいのです。
builder.stream[String, String]("my-input-topic")
.batched(chunkSize = 2000).map(externalBatchedApiCall).to("my-output-topic")
スカラ座とアッカストリームで関数が呼び出されますgrouped
かbatch
。スパークでは、我々が行うことができますストリーミングストラクチャードmapPartitions.map(_.grouped(2000).map(externalBatchedApiCall))
。
samthebest:
まだ存在していないようです。このスペースを見るhttps://issues.apache.org/jira/browse/KAFKA-7432