Ich habe gerade erst angefangen, mit IBM Bluemix zu arbeiten und wollte der Spark-Streaming-Sektion eine Chance geben.Echtzeit-Sentiment-Analyse von Twitter Hashtags mit Spark || Fehler beim Starten des Streaming-Dienstes
Ich habe angefangen mit 2 Tutorials zu arbeiten, die als Einführung in die Sentiment Analyse von Twitter Hashtags mit Spark und Watson dienen.
- Real-time Sentiment Analysis of Twitter Hashtags with Spark
- DW005 Analyzing Sentiment in Twitter Hashtags (gefunden in_https werden: //developer.ibm.com/dwcourses/courses/)
jedoch in keiner der vorgesehenen Fällen I konnte den Funkenstrom starten.
Beide Tutorials verwenden Github project's iPython-Notebooks, um die Beispielanwendung mit Spark Streaming anzuzeigen.
Dies ist ein Beispiel für ein Ausnahmeprotokoll der Ausnahmen, die beim ersten Notebook aufgetreten sind.
Registering JaasConfiguration: /tmp/pMftPERZFap2a9SH/jaas.conf
Setting hadoop configuration for swift container
https://kafka-rest-prod01.messagehub.services.us-south.bluemix.net:443/admin/topics
https://kafka-rest-prod01.messagehub.services.us-south.bluemix.net:443/admin/topics
https://kafka-rest-prod01.messagehub.services.us-south.bluemix.net:443/admin/topics
default location of ssl Trust store is: /usr/local/src/spark160master/ibm-java-x86_64-80/jre/lib/security/cacerts
Twitter stream started
Tweets are collected real-time and analyzed
To stop the streaming and start interacting with the data use: StreamingTwitter.stopTwitterStreaming
Receiver Started: KafkaReceiver-0
Receiver Stopped: KafkaReceiver-0
Reason: org.apache.kafka.common.config.ConfigException: Invalid value com.ibm.cds.spark.samples.StatusDeserializer for configuration value.deserializer: Class com.ibm.cds.spark.samples.StatusDeserializer could not be found.
at org.apache.kafka.common.config.ConfigDef.parseType(ConfigDef.java:204)
at org.apache.kafka.common.config.ConfigDef.parse(ConfigDef.java:122)
at org.apache.kafka.common.config.AbstractConfig.<init>(AbstractConfig.java:48)
at org.apache.kafka.clients.consumer.ConsumerConfig.<init>(ConsumerConfig.java:194)
at org.apache.kafka.clients.consumer.KafkaConsumer.<init>(KafkaConsumer.java:380)
at org.apache.kafka.clients.consumer.KafkaConsumer.<init>(KafkaConsumer.java:363)
at org.apache.kafka.clients.consumer.KafkaConsumer.<init>(KafkaConsumer.java:350)
at com.ibm.cds.spark.samples.dstream.KafkaReceiver.onStart(KafkaInputDStream.scala:88)
at org.apache.spark.streaming.receiver.ReceiverSupervisor.startReceiver(ReceiverSupervisor.scala:148)
at org.apache.spark.streaming.receiver.ReceiverSupervisor.start(ReceiverSupervisor.scala:130)
at org.apache.spark.streaming.scheduler.ReceiverTracker$ReceiverTrackerEndpoint$$anonfun$9.apply(ReceiverTracker.scala:575)
at org.apache.spark.streaming.scheduler.ReceiverTracker$ReceiverTrackerEndpoint$$anonfun$9.apply(ReceiverTracker.scala:565)
at org.apache.spark.SparkContext$$anonfun$38.apply(SparkContext.scala:1997)
at org.apache.spark.SparkContext$$anonfun$38.apply(SparkContext.scala:1997)
at org.apache.spark.scheduler.ResultTask.runTask(ResultTask.scala:66)
at org.apache.spark.scheduler.Task.run(Task.scala:89)
at org.apache.spark.executor.Executor$TaskRunner.run(Executor.scala:213)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1153)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
at java.lang.Thread.run(Thread.java:785)
: Error starting receiver 0
Sie werden einige Abschnitte in dem Notebook sehen, wo Sie die Anmeldeinformationen (Twitter App, Kafka Dienstberechtigungen) eingeben müssen. Zuerst dachte ich, dass es sich um einen Berechtigungsnachweis handelt, also habe ich mehrmals nachgeprüft, ob es sich um ein Anmeldeproblem handelte. Dann habe ich versucht, die verschiedenen im Beispielprojekt verwendeten Klassen und die im Fehlerprotokoll erwähnten Klassen zu betrachten. t scheint das Problem zu lösen.
Ich denke, die Antwort auf die Frage in diesen drei Zeilen Code liegt:
Reason: org.apache.kafka.common.config.ConfigException: Invalid value com.ibm.cds.spark.samples.StatusDeserializer for configuration value.deserializer: Class com.ibm.cds.spark.samples.StatusDeserializer could not be found.
at org.apache.kafka.common.config.ConfigDef.parseType(ConfigDef.java:204)
at org.apache.kafka.common.config.ConfigDef.parse(ConfigDef.java:122)
at org.apache.kafka.common.config.AbstractConfig.<init>(AbstractConfig.java:48)
Bitte geben Sie eine Anleitung, wie ich dieses Problem beheben kann. Ich würde gerne weitergehen und verschiedene neue Dinge ausprobieren, aber ich muss sicherstellen, was für ein Problem das ist.
Hallo, Bitte importieren Sie alle Klassen, so dass Sie nicht dieses Problem der Klasse treffen würde nicht gefunden. Importieren Sie das direkt nach dem% Addjar des Assembly-Jars. import com.ibm.cds.spark.samples._ Aber ich denke, das scheint wie ein intermittierendes Problem. Danke, Charles. –
Hallo Charles, danke für Ihre Anleitung. Ich habe versucht, was Sie vorgeschlagen, aber ich denke, es ist ein Problem mit dem Beispielprojektcode. Ich habe gerade den Autor des Projekts über GitHub kontaktiert, ich hoffe, er wird sich darum kümmern. – Nick