Esta división fue probado por expertos para que tengas la garantía de la veracidad de nuestro tutorial.
Solución:
Por ahora, el ConsoleProducer
parece apoyar la escritura de mensajes clave sobre el tema. Kafka usará el hash del key para distribuir el mensaje en particiones, al menos con el comportamiento predeterminado.
Actualmente, el separador predeterminado es t
así entrando key[t]message
lo distribuirá entre las particiones:
key1 a-message
El separador se puede cambiar proporcionando el key.separator
configuración, por ejemplo:
kafka-console-producer --broker-list localhost:9092,localhost:9093
--topic mytopic --property key.separator=,
Enviar mensajes como este:
key2,another-message
He probado esto con la pestaña predeterminada y un separador personalizado con éxito. Los mensajes se distribuyeron en dos particiones separadas.
De acuerdo con el estado actual de las cosas (Kafka>=0.10.0.1), el script kafka-console-producer.sh y la clase Java ConsoleProducer subyacente admiten el envío de datos con un keypero dicho soporte está deshabilitado de forma predeterminada y debe habilitarse desde la CLI.
Es decir, debe establecer la propiedad parse.key
. Además, si quiere usar algo diferente a un carácter de tabulación, use key.separator
como se especifica en la respuesta de Cedric.
Al final, la línea de comando sería:
kafka-console.producer.sh --broker-list kafka:9092,kafka2:9092
--topic $TOPIC --property parse.key=true --property key.separator=|
Aquí está su punto de partida:partitioner.class
poniendo en tu Properties
ejemplo. En Kafka, la implementación predeterminada es kafka.producer.DefaultPartitioner
.
El objetivo de esa configuración es:
La clase de particionador para particionar mensajes entre subtemas. El particionador predeterminado se basa en el hash del key.
Esto significa que si desea cambiar el comportamiento del particionador predeterminado, debe crear su propia implementación de kafka.producer.Partitioner
interfaz.
Sugeriría tener mucho cuidado al crear su propia estrategia y realmente, probarla mucho y monitorear sus temas y sus particiones.
Reseñas y valoraciones del artículo
Si sostienes algún recelo o forma de afinar nuestro noticia eres capaz de escribir un exégesis y con mucho gusto lo leeremos.