/ / Spark Streaming z Kafką w Scali - scala, apache-spark, apache-kafka

Spark Streaming z Kafką w Scali - scala, apache-spark, apache-kafka

Próbuję zbudować konsumenta Kafki w Scaliużywanie IntelliJ do czytania wiadomości z tematu Kafki i zapisywanie ich na hdfs. Używam iskry 1.6.2, kafka_2.10-0.10, scala 2.10.5 z hdp 2.5.3. Otrzymuję błąd poniżej:

Exception in thread "main" java.lang.NoSuchMethodError: kafka.consumer.SimpleConsumer.<init>(Ljava/lang/String;IIILjava/lang/String;Lorg/apache/kafka/common/protocol/SecurityProtocol;)V

Z moich badań tutaj dowiedziałem się, że jest to problem związany z słoikami / zależnościami, ale nadal nie jestem w stanie go rozwiązać.

Odpowiedzi:

0 dla odpowiedzi № 1

Musisz upewnić się, że biblioteki kafka są dostępne dla środowiska wykonawczego Spark. Istnieje kilka sposobów, aby się tego upewnić:

  1. Wywołując iskrę lub iskrownika z --jars "/ location / of / your / kafka-jar"
  2. Skopiuj słoiki związane z kafka do swojej iskryfolder "słoiki" instalacji (uwaga: jeśli używasz klastra, musisz skopiować te słoiki do wszystkich węzłów, dlatego polecam powyższą metodę, w której iskra robi to za ciebie wewnętrznie)