我有一个包含键值对的RDD。只有三个键,我想将给定键的所有元素写入文本文件。目前我需要进行三次操作,但我想看看是否可以一次完成。
以下是我目前的代码:
以下是我目前的代码:
# I have an rdd (called my_rdd) such that a record is a key value pair, e.g.:
# ('data_set_1','value1,value2,value3,...,value100')
my_rdd.cache()
my_keys = ['data_set_1','data_set_2','data_set_3']
for key in my_keys:
my_rdd.filter(lambda l: l[0] == key).map(lambda l: l[1]).saveAsTextFile(my_path+'/'+key)
这样做可以实现,但是缓存并三次遍历可能会耗费很长时间。我想知道是否有一种同时写入所有三个文件的方法?