常用的 Spark transformation 操作挺多的,今天就给简单几个。
map,你可以把它理解为对每个元素传入一个自定义函数,生成新的元素,返回一个新 RDD。
像filter,它是对每个元素判断,返回 true 的保留,返回 false 的就过滤掉。
flatMap 和 map 像,但它允许对每个元素返回多个新元素,不仅仅是一个。
groupByKey,是根据 key 进行分组,生成的结果是 key 和对应的 Iterable 值。如果你需要聚合,可以用 reduceByKey,它会对每个 key 的值做归约操作。
sortByKey,按照 key 排序,join 和 cogroup 都是用来做数据关联的,只不过
,Spark 的这些操作挺灵活的,你可以用它们来各种各样的 RDD 数据。其实你只要理解了每个操作的作用,日常的需求都能轻松搞定。
有空可以参考一下相关资料,掌握这些操作对你写 Spark 代码肯定有!