개수 :
나는 메시지 키의 키에 따라 다른 주제에 Kafkastream 모든 레코드를 보낼 수 있어야합니다. 전의. 카프카의 스트림은 값으로 키와 기록 등의 이름이 포함되어 있습니다. 나는 레코드의 키에 따라 서로 다른 주제에이 기록을 밖으로 팬에 원하는
데이터 (jhon -> {}는 jhonsRecord) (숀 -> {}는 seansRecord) (메리 -> {}는 marysRecord) (jhon -> {}는 jhonsRecord2) 예상
- 항목 1 : 이름 : jhon -> (jhon -> {jhonsRecord}), (jhon -> {jhonsRecord2})
- 항목 2 : sean-> (숀 -> {seansRecord})
- topic3 : 메리 -> (메리 -> {marysRecord})
아래는 내가 지금이 일을하고있는 방법이지만, 이름 목록 때문에이 느린 hudge이다. 플러스 기록을 몇 가지 이름이있는 경우에도, 나는 수정을 제안하십시오 전체 목록을 통과 할 필요는
for( String name : names )
{
recordsByName.filterNot(( k, v ) -> k.equalsIgnoreCase(name)).to(name);
}
바르 토스 Wardziński :
난 당신이 사용한다고 생각합니다 KStream::to(final TopicNameExtractor<K, V> topicExtractor)
기능을. 그것은 당신에게 각 메시지의 주제의 계산 이름 기능을 제공합니다.
샘플 코드 :
final KStream<String, String> stream = ???;
stream.to((key, value, recordContext) -> key);