我有一个RDD的Map [String,String];有没有办法多次调用过滤它而不经过RDD多次?
例如,我想做这样的事情:
val stateNY = mapRDD.filter(person => person("state").equals("NY")) val stateOR = mapRDD.filter(person => person("state").equals("OR")) val stateMA = mapRDD.filter(person => person("state").equals("MA")) val stateWA = mapRDD.filter(person => person("state").equals("WA"))
还有这个:
val wage10to20 = mapRDD.filter(person => person("wage").todouble > 10 && person("wage").todouble <= 20) val wage20to30 = mapRDD.filter(person => person("wage").todouble > 20 && person("wage").todouble <= 30) val wage30to40 = mapRDD.filter(person => person("wage").todouble > 30 && person("wage").todouble <= 40) val wage40to50 = mapRDD.filter(person => person("wage").todouble > 40 && person("wage").todouble <= 50)
其中mapRDD的类型为RDD [Map [String,String]],一次传递.