org.apache.spark.api.java
接口 JavaRDDLike<T,This 扩展 JavaRDDLike<T,This>>
- 所有超级接口:
java.io.Serializable
所有已知的实现类:
JavaDoubleRDD、JavaPairRDD、JavaRDD、JavaSchemaRDD
公共接口JavaRDDLike<T,This extends JavaRDDLike<T,This>>
extends scala.Serializable
方法总结
- 方法
修饰符和类型 | 方法和说明 |
|
使用给定的组合函数和中性的“零值”聚合每个分区的元素,然后聚合所有分区的结果。 |
|
返回这个 RDD 和另一个 RDD 的笛卡尔积,即所有元素对 (a, b) 的 RDD,其中 a is in |
|
将此 RDD 标记为检查点。 |
|
|
|
返回一个包含此 RDD 中所有元素的数组。 |
|
返回一个数组,该数组包含此 RDD 特定分区中的所有元素。 |
|
在SparkContext这RDD上创建。 |
|
返回 RDD 中元素的数量。 |
|
:: 实验 :: count() 的近似版本在超时内返回可能不完整的结果,即使并非所有任务都已完成。 |
|
:: 实验 :: count() 的近似版本在超时内返回可能不完整的结果,即使并非所有任务都已完成。 |
|
返回 RDD 中不同元素的近似数量。 |
|
返回此 RDD 中每个唯一值的计数作为 (value, count) 对的映射。 |
|
(实验性)countByValue() 的近似版本。 |
|
(实验性)countByValue() 的近似版本。 |
|
返回此 RDD 中的第一个元素。 |
|
通过首先将函数应用于此 RDD 的所有元素,然后展平结果,返回一个新的 RDD。 |
|
通过首先将函数应用于此 RDD 的所有元素,然后展平结果,返回一个新的 RDD。 |
|
通过首先将函数应用于此 RDD 的所有元素,然后展平结果,返回一个新的 RDD。 |
|
使用给定的关联函数和中性的“零值”聚合每个分区的元素,然后聚合所有分区的结果。 |
|
将函数 f 应用于此 RDD 的所有元素。 |
|
将函数 f 应用于此 RDD 的每个分区。 |
|
获取此 RDD 被检查点的文件的名称 |
|
获取 RDD 的当前存储级别,如果没有设置,则获取 StorageLevel.NONE。 |
|
返回通过将每个分区中的所有元素合并到一个数组中创建的 RDD。 |
|
返回分组元素的 RDD。 |
|
返回分组元素的 RDD。 |
|
此 RDD 的唯一 ID(在其 SparkContext 中)。 |
|
返回此 RDD 是否已被检查点 |
|
此 RDD 的内部方法;如果适用,将从缓存中读取,或以其他方式计算它。 |
|
通过应用创建此 RDD 中元素的元组 |
|
通过对这个 RDD 的所有元素应用一个函数来返回一个新的 RDD。 |
|
通过对这个 RDD 的每个分区应用一个函数来返回一个新的 RDD。 |
|
通过对这个 RDD 的每个分区应用一个函数来返回一个新的 RDD。 |
|
通过对这个 RDD 的每个分区应用一个函数来返回一个新的 RDD。 |
|
通过对这个 RDD 的每个分区应用一个函数来返回一个新的 RDD。 |
|
通过对这个 RDD 的每个分区应用一个函数来返回一个新的 RDD。 |
|
通过对这个 RDD 的每个分区应用一个函数来返回一个新的 RDD。 |
|
通过对这个 RDD 的每个分区应用一个函数来返回一个新的 RDD,同时跟踪原始分区的索引。 |
|
通过对这个 RDD 的所有元素应用一个函数来返回一个新的 RDD。 |
|
通过对这个 RDD 的所有元素应用一个函数来返回一个新的 RDD。 |
|
返回此 RDD 中由指定的 Comparator[T] 定义的最大元素。 |
|
返回此 RDD 中由指定的 Comparator[T] 定义的最小元素。 |
|
|
|
将管道元素创建的 RDD 返回到分叉的外部进程。 |
|
将管道元素创建的 RDD 返回到分叉的外部进程。 |
|
将管道元素创建的 RDD 返回到分叉的外部进程。 |
|
|
|
使用指定的可交换和结合二元运算符减少此 RDD 的元素。 |
|
将此 RDD 保存为序列化对象的 SequenceFile。 |
|
使用元素的字符串表示将此 RDD 保存为文本文件。 |
|
使用元素的字符串表示将此 RDD 保存为压缩文本文件。 |
|
此 RDD 中的一组分区。 |
|
取 RDD 的前 num 个元素。 |
|
使用 T 的自然排序返回此 RDD 的前 K 个元素,同时保持顺序。 |
|
返回此 RDD 中由指定的 Comparator[T] 定义的前 K 个元素并保持顺序。 |
|
|
|
|
|
已弃用。 从 Spark 1.0.0 开始,不推荐使用 toArray(),collect()改为使用 |
|
此 RDD 的描述及其用于调试的递归依赖项。 |
|
返回包含此 RDD 中所有元素的迭代器。 |
|
使用 T 的自然排序从这个 RDD 返回前 K 个元素。 |
|
返回此 RDD 中由指定的 Comparator[T] 定义的前 K 个元素。 |
|
|
|
用另一个 RDD 压缩这个 RDD,返回键值对,每个 RDD 中的第一个元素,每个 RDD 中的第二个元素,等等。 |
|
用一个(或多个)RDD 压缩这个 RDD 的分区,并通过对压缩的分区应用一个函数来返回一个新的 RDD。 |
|
使用其元素索引压缩此 RDD。 |
|
使用生成的唯一长 ID 压缩此 RDD。 |
方法细节
包裹RDD
这个 wrapRDD( RDD < T >rdd)
类标签
scala.reflect.ClassTag< T > classTag()
记录
RDD < T >rdd()
分裂
java.util.List<分区> splits()
此 RDD 中的一组分区。
语境
SparkContext 上下文 ()
在SparkContext这RDD上创建。
ID
内部标识()
此 RDD 的唯一 ID(在其 SparkContext 中)。
获取存储级别
StorageLevel getStorageLevel()
获取 RDD 的当前存储级别,如果没有设置,则获取 StorageLevel.NONE。
迭代器
java.util.Iterator< T > iterator( Partition split, TaskContext taskContext)
此 RDD 的内部方法;如果适用,将从缓存中读取,或以其他方式计算它。这应该“不”由用户直接调用,但可用于 RDD 的自定义子类的实现者。
地图
<R> JavaRDD <R> map( Function < T ,R> f)
通过对这个 RDD 的所有元素应用一个函数来返回一个新的 RDD。
mapPartitionsWithIndex
<R> JavaRDD <R> mapPartitionsWithIndex( Function2 <Integer,java.util.Iterator< T >,java.util.Iterator<R>> f, 布尔保留分区)
通过对这个 RDD 的每个分区应用一个函数来返回一个新的 RDD,同时跟踪原始分区的索引。
映射到双
<R> JavaDoubleRDD mapToDouble( DoubleFunction < T > f)
通过对这个 RDD 的所有元素应用一个函数来返回一个新的 RDD。
映射对
<K2,V2> JavaPairRDD <K2,V2> mapToPair( PairFunction < T ,K2,V2> f)
通过对这个 RDD 的所有元素应用一个函数来返回一个新的 RDD。
平面图
<U> JavaRDD <U> flatMap( FlatMapFunction < T ,U> f)
通过首先将函数应用于此 RDD 的所有元素,然后展平结果,返回一个新的 RDD。
flatMapToDouble
JavaDoubleRDD flatMapToDouble( DoubleFlatMapFunction < T > f)
通过首先将函数应用于此 RDD 的所有元素,然后展平结果,返回一个新的 RDD。
平面映射对
<K2,V2> JavaPairRDD <K2,V2> flatMapToPair( PairFlatMapFunction < T ,K2,V2> f)
通过首先将函数应用于此 RDD 的所有元素,然后展平结果,返回一个新的 RDD。
地图分区
<U> JavaRDD <U> mapPartitions( FlatMapFunction <java.util.Iterator< T >,U> f)
通过对这个 RDD 的每个分区应用一个函数来返回一个新的 RDD。
地图分区
<U> JavaRDD <U> mapPartitions( FlatMapFunction <java.util.Iterator< T >,U> f, 布尔保留分区)
通过对这个 RDD 的每个分区应用一个函数来返回一个新的 RDD。
mapPartitionsToDouble
JavaDoubleRDD mapPartitionsToDouble( DoubleFlatMapFunction <java.util.Iterator< T >> f)
通过对这个 RDD 的每个分区应用一个函数来返回一个新的 RDD。
mapPartitionsToPair
<K2,V2> JavaPairRDD <K2,V2> mapPartitionsToPair( PairFlatMapFunction <java.util.Iterator< T >,K2,V2> f)
通过对这个 RDD 的每个分区应用一个函数来返回一个新的 RDD。
mapPartitionsToDouble
JavaDoubleRDD mapPartitionsToDouble( DoubleFlatMapFunction <java.util.Iterator< T >> f, 布尔保留分区)
通过对这个 RDD 的每个分区应用一个函数来返回一个新的 RDD。
mapPartitionsToPair
<K2,V2> JavaPairRDD <K2,V2> mapPartitionsToPair( PairFlatMapFunction <java.util.Iterator< T >,K2,V2> f, 布尔保留分区)
通过对这个 RDD 的每个分区应用一个函数来返回一个新的 RDD。
foreach分区
void foreachPartition( VoidFunction <java.util.Iterator< T >> f)
将函数 f 应用于此 RDD 的每个分区。
格洛姆
JavaRDD <java.util.List< T >> glom()
返回通过将每个分区中的所有元素合并到一个数组中创建的 RDD。
笛卡尔
<U> JavaPairRDD < T ,U> 笛卡尔( JavaRDDLlike <U,?> other)
返回这个 RDD 和另一个 RDD 的笛卡尔积,即所有元素对 (a, b) 的 RDD,其中 a is inthis
和 b is in other
。
通过...分组
<K> JavaPairRDD <K,Iterable< T >> groupBy( Function < T ,K> f)
返回分组元素的 RDD。每个组由一个键和一系列映射到该键的元素组成。
通过...分组
<K> JavaPairRDD <K,Iterable< T >> groupBy( Function < T ,K> f, int numPartitions)
返回分组元素的 RDD。每个组由一个键和一系列映射到该键的元素组成。
管道
JavaRDD <String> 管道(字符串命令)
将管道元素创建的 RDD 返回到分叉的外部进程。
管道
JavaRDD <String> 管道(java.util.List<String> 命令)
将管道元素创建的 RDD 返回到分叉的外部进程。
管道
JavaRDD <String> 管道(java.util.List<String> 命令, java.util.Map<String,String> 环境)
将管道元素创建的 RDD 返回到分叉的外部进程。
压缩
<U> JavaPairRDD < T ,U> zip( JavaRDDLlike <U,?> other)
用另一个 RDD 压缩这个 RDD,返回键值对,每个 RDD 中的第一个元素,每个 RDD 中的第二个元素,等等。假设两个 RDD 具有*相同数量的分区*和*相同数量的元素分区*(例如,一个是通过另一个上的地图制作的)。
zip分区
<U,V> JavaRDD <V> zipPartitions( JavaRDDLlike <U,?> other, FlatMapFunction2 <java.util.Iterator< T >,java.util.Iterator<U>,V> f)
用一个(或多个)RDD 压缩这个 RDD 的分区,并通过对压缩的分区应用一个函数来返回一个新的 RDD。假设所有 RDD 具有*相同数量的分区*,但*不*要求它们在每个分区中具有相同数量的元素。
带唯一标识的 zip
JavaPairRDD < T ,Long> zipWithUniqueId()
使用生成的唯一长 ID 压缩此 RDD。第 k 个分区中的项目将获得 ids k, n+k, 2*n+k, ...,其中 n 是分区数。所以可能存在差距,但这种方法不会触发火花作业,这与RDD.zipWithIndex().
带索引的zip
JavaPairRDD < T ,Long> zipWithIndex()
使用其元素索引压缩此 RDD。排序首先基于分区索引,然后是每个分区内项目的排序。所以第一个分区中的第一项获得索引 0,最后一个分区中的最后一项获得最大索引。这类似于 Scala 的 zipWithIndex 但它使用 Long 而不是 Int 作为索引类型。当这个RDD包含多个分区时,该方法需要触发一个spark作业。
foreach
void foreach( VoidFunction < T > f)
将函数 f 应用于此 RDD 的所有元素。
搜集
java.util.List< T > collect()
返回一个包含此 RDD 中所有元素的数组。
toLocalIterator
java.util.Iterator< T > toLocalIterator()
返回包含此 RDD 中所有元素的迭代器。
迭代器将消耗与此 RDD 中最大分区一样多的内存。
数组
java.util.List< T > toArray()
已弃用。 从 Spark 1.0.0 开始,不推荐使用 toArray(),collect()改为使用
返回一个包含此 RDD 中所有元素的数组。
收集分区
java.util.List< T >[] collectPartitions(int[] partitionIds)
返回一个数组,该数组包含此 RDD 特定分区中的所有元素。
降低
T reduce( Function2 < T , T , T > f)
使用指定的可交换和结合二元运算符减少此 RDD 的元素。
折叠
T fold( T zeroValue, Function2 < T , T , T > f)
使用给定的关联函数和中性的“零值”聚合每个分区的元素,然后聚合所有分区的结果。函数 op(t1, t2) 允许修改 t1 并将其作为结果值返回以避免对象分配;但是,它不应修改 t2。
总计的
<U> U 聚合(U zeroValue, Function2 <U, T ,U> seqOp, Function2 <U,U,U> combOp)
使用给定的组合函数和中性的“零值”聚合每个分区的元素,然后聚合所有分区的结果。这个函数可以返回与这个 RDD 的类型 T 不同的结果类型 U。因此,我们需要一个将 T 合并到一个 U 的操作和一个合并两个 U 的操作,如 scala.TraversableOnce。这两个函数都允许修改并返回它们的第一个参数,而不是创建一个新的 U 以避免内存分配。
数数
长计数()
返回 RDD 中元素的数量。
计数约
PartialResult < BoundedDouble > countApprox(long timeout, 双重信任)
:: 实验 :: count() 的近似版本在超时内返回可能不完整的结果,即使并非所有任务都已完成。
计数约
PartialResult < BoundedDouble > countApprox(long timeout)
:: 实验 :: count() 的近似版本在超时内返回可能不完整的结果,即使并非所有任务都已完成。
按值计数
java.util.Map< T ,Long> countByValue()
返回此 RDD 中每个唯一值的计数作为 (value, count) 对的映射。最后的组合步骤在 master 本地发生,相当于运行单个 reduce 任务。
countByValueApprox
PartialResult <java.util.Map< T , BoundedDouble >> countByValueApprox(long timeout, 双重信任)
(实验性)countByValue() 的近似版本。
countByValueApprox
PartialResult <java.util.Map< T , BoundedDouble >> countByValueApprox(long timeout)
(实验性)countByValue() 的近似版本。
拿
java.util.List< T >take(int num)
取 RDD 的前 num 个元素。这当前会*一个*一个*地扫描分区,因此如果需要很多分区,它会很慢。在这种情况下,使用 collect() 来获取整个 RDD。
取样
java.util.List< T > takeSample(boolean withReplacement, 整数)
取样
java.util.List< T > takeSample(boolean withReplacement, 整数, 长种子)
第一的
Ť 第一()
返回此 RDD 中的第一个元素。
另存为文本文件
void saveAsTextFile(字符串路径)
使用元素的字符串表示将此 RDD 保存为文本文件。
另存为文本文件
void saveAsTextFile(字符串路径, 类<? 扩展 org.apache.hadoop.io.compress.CompressionCodec> 编解码器)
使用元素的字符串表示将此 RDD 保存为压缩文本文件。
另存为对象文件
void saveAsObjectFile(字符串路径)
将此 RDD 保存为序列化对象的 SequenceFile。
键按
<K> JavaPairRDD <K, T > keyBy( Function < T ,K> f)
通过应用创建此 RDD 中元素的元组f
。
检查站
无效检查点()
将此 RDD 标记为检查点。它将保存到使用 SparkContext.setCheckpointDir() 设置的检查点目录内的文件中,并且将删除对其父 RDD 的所有引用。必须在此 RDD 上执行任何作业之前调用此函数。强烈建议将此 RDD 持久化在内存中,否则将其保存在文件中将需要重新计算。
是检查点
布尔值 isCheckpointed()
返回此 RDD 是否已被检查点
获取检查点文件
com.google.common.base.Optional<String> getCheckpointFile()
获取此 RDD 被检查点的文件的名称
调试字符串
字符串 toDebugString()
此 RDD 的描述及其用于调试的递归依赖项。
最佳
java.util.List< T >top(int num, java.util.Comparator< T > comp)
返回此 RDD 中由指定的 Comparator[T] 定义的前 K 个元素。
参数:
num
- 要返回的顶级元素的数量
comp
- 定义顺序的比较器
返回:
顶部元素的数组
最佳
java.util.List< T >top(int num)
使用 T 的自然排序从这个 RDD 返回前 K 个元素。
参数:
num
- 要返回的顶级元素的数量
返回:
顶部元素的数组
下单
java.util.List< T > takeOrdered(int num, java.util.Comparator< T > comp)
返回此 RDD 中由指定的 Comparator[T] 定义的前 K 个元素并保持顺序。
参数:
num
- 要返回的顶级元素的数量
comp
- 定义顺序的比较器
返回:
顶部元素的数组
最大限度
T max(java.util.Comparator< T > comp)
返回此 RDD 中由指定的 Comparator[T] 定义的最大元素。
参数:
comp
- 定义排序的比较器
返回:
RDD 的最大值
分钟
T min(java.util.Comparator< T > comp)
返回此 RDD 中由指定的 Comparator[T] 定义的最小元素。
参数:
comp
- 定义排序的比较器
返回:
RDD 的最小值
下单
java.util.List< T > takeOrdered(int num)
使用 T 的自然排序返回此 RDD 的前 K 个元素,同时保持顺序。
参数:
num
- 要返回的顶级元素的数量
返回:
顶部元素的数组
countApproxDistinct
long countApproxDistinct(double relativeSD)
返回 RDD 中不同元素的近似数量。
近似的精度可以通过相对标准偏差 (relativeSD) 参数来控制,该参数也控制使用的内存量。较低的值会导致更准确的计数,但会增加内存占用,反之亦然。relativeSD 的默认值为 0.05。
name
字符串名称()