Ich integrierte Apache Storm 1.0.3 mit Apache Kafka_2.11-0.10.1.0. Storm hat ein oder zwei Menages aus dem Kafka-Thema korrekt gelesen, aber wenn der erste Bolt das Tupel angekreuzt hat, wird dieses Acked nicht in Storm UI angezeigt. Was ist das Problem?Storm UI zeigt nicht korrekt an
Andere Frage: Wenn Storm lesen zehn oder neunzehn Nachrichten von Kafka Thema, in diesem Punkt Storm UI zeigen 20 für den Bolzen acked, wenn lesen andere Gruppe von 19 Nachrichten angefügt hinzufügen in 20 mehr. Ich verstehe nicht, warum Storm UI Spout und Bolts von 20 in 20 acked zeigt. Jeder könnte mir erklären, was ist die Logik des Registers von acked und scheitern in Storm Ui-Konsole ?.
Die Konfiguration meiner Topologie ist:
final TopologyBuilder myTopology = new TopologyBuilder();
KafkaConfiguration kconfig = new KafkaConfiguration();
SpoutConfig spout = kconfig.getKafkaConfiguration(args[0], args[1], args[2], args[3]);
myTopology.setSpout("spoutMvClient", new KafkaSpout(spout), 5);
myTopology.setBolt("boltTransformToObject", new TransformBolt(),7).globalGrouping("spoutMvClient");
myTopology.setBolt("boltMVClient", new MvClientBolt(), 6).fieldsGrouping("boltTransformToObject",new Fields("objectTarget"));
Config conf = new Config();
conf.setMaxSpoutPending(5000);
try {
StormSubmitter.submitTopology("topologyOne", conf, myTopology.createTopology());
} catch (AlreadyAliveException e) {
e.printStackTrace();
}
Mein erster TransformBolt Bolt ist:
public void execute(Tuple input) {
try {
LOG.info(input.getString(0));
Transform transform = new Transform();
OpenTarget openTarget = transform.getObjetGenericFromFileXml(input.getString(0));
collector.emit(input, new Values(openTarget));
collector.ack(input);
} catch (Exception e) {
LOG.error(e.getMessage());
collector.fail(input);
}
}