RDD的transformaction算子官网直译

  • map(func) -----> 映射(函数)

使用方法:
返回通过函数传递源的每个元素所形成的新的分布式数据集。函数.

  • filter(func) -----> 过滤器(函数)

使用方法:
返回一个新的数据集,该数据集是通过选择其上的源元素而形成的。函数返回真。

  • flatMap(func) -----> flatMap(函数)

使用方法:
类似于map,但每个输入项可以映射到0或多个输出项(如下函数应该返回一个Seq,而不是单个项)。

  • mapPartitions(func) -----> map分区(函数)

使用方法:
类似于map,但在RDD的每个分区(块)上分别运行,因此函数在T类型的RDD上运行时,必须是Iterator=>Iterator类型。

  • mapPartitionsWithIndex(func) -----> 地图划分与索引(函数)

使用方法:
类似于mapPartitions,但也提供了函数使用一个整数值表示分区的索引,因此函数在T类型的RDD上运行时,必须是类型(Int,Iterator)=>Iterator。

  • sample(withReplacement, fraction, seed) -----> 样本(置换, 分馏, 种子)

使用方法:
样品a分数分馏使用给定的随机数生成器种子对数据进行替换或替换。

  • union(otherDataset) -----> 联合(其他数据集)

使用方法:
返回一个新的数据集,该数据集包含源数据集中的元素和参数的合并。

  • intersection(otherDataset) -----> 相交(其他数据集)

使用方法:
返回一个新的RDD,它包含源数据集中的元素和参数的交集。

  • distinct([numPartitions])) -----> 独树一帜([非部分]))

使用方法:
返回包含源数据集的不同元素的新数据集。

  • groupByKey([numPartitions]) -----> 群ByKey([非部分])

使用方法:
当调用(K,V)对的数据集时,返回(K,Iterable)对的数据集。
注:如果要对每个键进行分组以执行聚合(例如和或平均值),则使用reduceByKey或aggregateByKey会产生更好的表现。
注:默认情况下,输出中的并行级别取决于父RDD的分区数。您可以传递一个可选的numPartitions参数设置不同数量的任务。

reduceByKey(func, [numPartitions]) -----> reduceByKey(函数, [非部分])

使用方法:
在(K,V)对的数据集上调用时,返回(K,V)对的数据集,其中每个键的值使用给定的约简函数进行聚合函数,其类型必须为(V,V)=>V。groupByKey,可以通过可选的第二个参数来配置减缩任务的数量。

  • aggregateByKey(zeroValue)(seqOp, combOp, [numPartitions]) -----> 聚合ByKey(零值)(seqOp, 组合式, [非部分])

使用方法:
在(K,V)对的数据集上调用时,返回(K,U)对的数据集,其中每个键的值使用给定的组合函数和中性的“零”值进行聚合。允许与输入值类型不同的聚合值类型,同时避免不必要的分配。就像在groupByKey,可以通过可选的第二个参数来配置减缩任务的数量。

  • sortByKey([ascending], [numPartitions]) -----> 索尔特-拜基([升序], [非部分])

使用方法:
在K实现有序的(K,V)对数据集上调用时,返回(K,V)对的(K,V)对按升序或降序排序的数据集,如布尔值中指定的那样ascending争论。

  • join(otherDataset, [numPartitions]) -----> 加入(其他数据集, [非部分])

使用方法:
当调用类型为(K,V)和(K,W)的数据集时,返回(K,(V,W)对的数据集,其中包含每个键的所有元素对。外部连接通过leftOuterJoin, rightOuterJoin,和fullOuterJoin.

  • cogroup(otherDataset, [numPartitions]) ----->亚细亚(其他数据集, [非部分])

使用方法:
当调用类型为(K,V)和(K,W)的数据集时,返回(K,(Iterable,Iterable)元组的数据集。此操作也称为groupWith.

  • cartesian(otherDataset) ----->笛卡尔集(其他数据集)

使用方法:
当调用类型为T和U的数据集时,返回(T,U)对(所有元素对)的数据集。

  • pipe(command, [envVars]) ----->管(命令, [envVars])

使用方法:
通过shell命令(例如Perl或bash脚本)调用RDD的每个分区。RDD元素被写入进程的stdin,输出到其stdout的行作为字符串的RDD返回。

  • coalesce(numPartitions) ----->聚结(非部分)

使用方法:
将RDD中的分区数减少到numPartitions。在筛选大型数据集之后,对于更有效地运行操作非常有用。

  • repartition(numPartitions) ----->重新分区(非部分)

使用方法:
随机重组RDD中的数据,以创建更多或更少的分区,并在它们之间进行平衡。这总是对网络上的所有数据进行洗牌。

  • repartitionAndSortWithinPartitions(partitioner) ----->重新划分和SortWithinPartitions(分割器)

使用方法:
根据给定的分区器重新划分RDD,并在每个得到的分区中,根据它们的键对记录进行排序。这比调用repartition然后在每个分区内进行排序,因为它可以将排序推入洗牌机器。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值