【发布时间】:2017-05-14 08:25:17
【问题描述】:
我是 Spark 新手。
我可以使用以下命令查看我的 elasticsearch 数据库中第一个 RDD 的内容:
print(es_rdd.first())
>>>(u'1', {u'name': u'john'})
我还可以使用以下方法为我的 Dstream 获取所需的值:
kvs = KafkaUtils.createDirectStream(ssc, [topic], {"metadata.broker.list":brokers})
name=kvs.map(lambda x: x[1])
name.pprint()
>>>>robert
我打算将 rdd "name": "john" 替换为 "robert",然后使用 saveAsNewAPIHadoopFile() 在 elasticsearch 中插入新的 rdd
我该怎么做? 有没有办法将“罗伯特”映射到一个新的rdd?有点像..
new_rdd=es_rdd.map(lambda item: {item[0]:name})
谢谢
【问题讨论】:
标签: apache-spark pyspark apache-kafka spark-streaming rdd