我有一个来自Kafka话题的DStream并且工作得非常好。
DStream看起来像这样:
{u'Id':u'a947fjrie8',u'Amount': 4590.0,u'CloseDate':u'2018-02-28T00:00:00.000Z'}
但是对于每个Id,我在特定的日子里会得到更多的流。同样好。
我想做以下事情:
我无法进行过滤,然后如何在当前日期的窗口中使用unique。
以下是完全没问题的片段,但它没有做上述两件事。
if __name__ == '__main__':
findspark.add_packages("org.apache.spark:spark-streaming-kafka-0-10_2.11:2.3.0")
producer = KafkaProducer(bootstrap_servers='localhost:9092')
sc = SparkContext(appName="PythonSparkStreamingKafka")
sc.setLogLevel("WARN")
ssc = StreamingContext(sc, 1)
sqlContext = sql.SQLContext(sc)
kafkaStream = KafkaUtils.createStream(ssc, 'localhost:2181', "spark-streaming-opportunity", {'testing1': 1})
lines = kafkaStream.map(lambda x: x[1])
lines.foreachRDD(handler)
ssc.start()
ssc.awaitTermination()