Я новичок в Scala и Spark. Я работаю над искрообразованием с данными twitter. Я прикрепил поток в отдельные слова. Теперь мне нужно устранить твиты, которые начинаются с #, @, и слова, такие как RT, от потоковой передачи данных перед их обработкой. Я знал, что это очень легко сделать. Я написал фильтр для этого, но он не работает. Может ли кто-нибудь помочь в этом. Мой код:Spark Streaming - Twitter - Фильтрация данных твита
val sparkConf = new SparkConf().setMaster("local[2]")
val ssc = new StreamingContext(sparkConf, Seconds(2))
val stream = TwitterUtils.createStream(ssc, None)
//val lanFilter = stream.filter(status => status.getLang == "en")
val RDD1 = stream.flatMap(status => status.getText.split(" "))
val filterRDD = RDD1.filter(word =>(word !=word.startsWith("#")))
filterRDD.print()
Также на языке фильтр отображается ошибка.
спасибо.
Возможно, вы можете показать нам код, который вы написали, чтобы мы могли помочь вам лучше? –
Мой код такой: val sparkConf = new SparkConf(). SetMaster ("local [2]") val ssc = new StreamingContext (sparkConf, Seconds (2)) val stream = TwitterUtils.createStream (ssc, None) // val lanFilter = stream.filter (status => status.getLang == "en") val RDD1 = stream.flatMap (status => status.getText.split ("")) val filterRDD = RDD1.filter (word => (word! = word.startsWith ("#"))) – Naren
Измените свой вопрос и добавьте код. Комментарии имеют ограниченную поддержку уценки. – Mark