RDD基本转换操作(6)–zip、zipPartitions
来源:互联网 发布:开票软件的控制台 编辑:程序博客网 时间:2024/06/05 08:07
zip
def zip[U](other: RDD[U])(implicit arg0: ClassTag[U]): RDD[(T, U)]
zip函数用于将两个RDD组合成Key/Value形式的RDD,这里默认两个RDD的partition数量以及元素数量都相同,否则会抛出异常。
zipPartitions
zipPartitions函数将多个RDD按照partition组合成为新的RDD,该函数需要组合的RDD具有相同的分区数,但对于每个分区内的元素数量没有要求。
该函数有好几种实现,可分为三类:
- 参数是一个RDD
def zipPartitions[B, V](rdd2: RDD[B])(f: (Iterator[T], Iterator[B]) => Iterator[V])(implicit arg0: ClassTag[B], arg1: ClassTag[V]): RDD[V]
def zipPartitions[B, V](rdd2: RDD[B], preservesPartitioning: Boolean)(f: (Iterator[T], Iterator[B]) => Iterator[V])(implicit arg0: ClassTag[B], arg1: ClassTag[V]): RDD[V]
这两个区别就是参数preservesPartitioning,是否保留父RDD的partitioner分区信息
映射方法f参数为两个RDD的迭代器。
- 参数是两个RDD
def zipPartitions[B, C, V](rdd2: RDD[B], rdd3: RDD[C])(f: (Iterator[T], Iterator[B], Iterator[C]) => Iterator[V])(implicit arg0: ClassTag[B], arg1: ClassTag[C], arg2: ClassTag[V]): RDD[V]
def zipPartitions[B, C, V](rdd2: RDD[B], rdd3: RDD[C], preservesPartitioning: Boolean)(f: (Iterator[T], Iterator[B], Iterator[C]) => Iterator[V])(implicit arg0: ClassTag[B], arg1: ClassTag[C], arg2: ClassTag[V]): RDD[V]
用法同上面,只不过该函数参数为两个RDD,映射方法f输入参数为两个RDD的迭代器。
- 参数是三个RDD
def zipPartitions[B, C, D, V](rdd2: RDD[B], rdd3: RDD[C], rdd4: RDD[D])(f: (Iterator[T], Iterator[B], Iterator[C], Iterator[D]) => Iterator[V])(implicit arg0: ClassTag[B], arg1: ClassTag[C], arg2: ClassTag[D], arg3: ClassTag[V]): RDD[V]
def zipPartitions[B, C, D, V](rdd2: RDD[B], rdd3: RDD[C], rdd4: RDD[D], preservesPartitioning: Boolean)(f: (Iterator[T], Iterator[B], Iterator[C], Iterator[D]) => Iterator[V])(implicit arg0: ClassTag[B], arg1: ClassTag[C], arg2: ClassTag[D], arg3: ClassTag[V]): RDD[V]
用法同上面,只不过这里又多了个一个RDD而已。
- Spark算子:RDD基本转换操作(6)–zip、zipPartitions
- RDD基本转换操作(6)–zip、zipPartitions
- Spark算子:RDD基本转换操作(6)–zip、zipPartitions
- Spark算子:RDD基本转换操作(6)–zip、zipPartitions
- RDD基本转换操作(6)–zip、zipPartitions
- 3.2 Spark RDD 基本转换操作6-zip、zipPartitions 、zipWithIndex、zipWithUniqueId
- Spark编程之基本的RDD算子之zip,zipPartitions,zipWithIndex,zipWithUniqueId
- Spark算子:RDD基本转换操作(5)–mapPartitions、
- Spark算子:RDD基本转换操作(2)–coalesce、repartition
- Spark算子:RDD基本转换操作(5)–mapPartitions、mapPartitionsWithIndex
- RDD基本转换操作(1)–map、flagMap、distinct
- RDD基本转换操作(2)–coalesce、repartition
- RDD基本转换操作(3)–randomSplit、glom
- RDD基本转换操作(4)–union、intersection、subtract
- RDD基本转换操作(5)–mapPartitions、mapPartitionsWithIndex
- RDD基本转换操作(7)–zipWithIndex、zipWithUniqueId
- Spark算子:RDD基本转换操作(7)–zipWithIndex、zipWithUniqueId
- Spark算子:RDD基本转换操作(5)–mapPartitions、mapPartitionsWithIndex
- UCI用法说明(一种读写文件的方法)
- Android-PullRefreshLayout
- LeetCode----Two Sum
- 类方法创建button
- 极客班C++设计模式第二周课程笔记——常用模式(2)
- RDD基本转换操作(6)–zip、zipPartitions
- 从0开始学习 GITHUB 系列
- 类方法创建label
- easyui tree 点击文字打开或者闭合
- 从jks文件中导出私钥和证书(转)
- UITextField 键盘上弹出"完成"字样
- system类中arraycopy方法使用
- 桥梁模式Bridge
- 杂