Aggregate the elements of each partition, and then the results for all the partitions, using given combine functions and a neutral "zero value".
Aggregate the elements of each partition, and then the results for all the partitions, using given combine functions and a neutral "zero value". This function can return a different result type, U, than the type of this RDD, T. Thus, we need one operation for merging a T into an U and one operation for merging two U's, as in scala.TraversableOnce. Both of these functions are allowed to modify and return their first argument instead of creating a new U to avoid memory allocation.
Return the Cartesian product of this RDD and another one, that is, the RDD of all pairs of
elements (a, b) where a is in this
and b is in other
.
Mark this RDD for checkpointing.
Mark this RDD for checkpointing. It will be saved to a file inside the checkpoint directory set with SparkContext.setCheckpointDir() and all references to its parent RDDs will be removed. This function must be called before any job has been executed on this RDD. It is strongly recommended that this RDD is persisted in memory, otherwise saving it on a file will require recomputation.
Return an array that contains all of the elements in this RDD.
Return an array that contains all of the elements in this RDD.
this method should only be used if the resulting array is expected to be small, as all the data is loaded into the driver's memory.
The asynchronous version of collect
, which returns a future for
retrieving an array containing all of the elements in this RDD.
The asynchronous version of collect
, which returns a future for
retrieving an array containing all of the elements in this RDD.
this method should only be used if the resulting array is expected to be small, as all the data is loaded into the driver's memory.
Return an array that contains all of the elements in a specific partition of this RDD.
The org.apache.spark.SparkContext that this RDD was created on.
Return the number of elements in the RDD.
Approximate version of count() that returns a potentially incomplete result within a timeout, even if not all tasks have finished.
Approximate version of count() that returns a potentially incomplete result within a timeout, even if not all tasks have finished.
maximum time to wait for the job, in milliseconds
Approximate version of count() that returns a potentially incomplete result within a timeout, even if not all tasks have finished.
Approximate version of count() that returns a potentially incomplete result within a timeout, even if not all tasks have finished.
The confidence is the probability that the error bounds of the result will contain the true value. That is, if countApprox were called repeatedly with confidence 0.9, we would expect 90% of the results to contain the true count. The confidence must be in the range [0,1] or an exception will be thrown.
maximum time to wait for the job, in milliseconds
the desired statistical confidence in the result
a potentially incomplete result, with error bounds
Return approximate number of distinct elements in the RDD.
Return approximate number of distinct elements in the RDD.
The algorithm used is based on streamlib's implementation of "HyperLogLog in Practice: Algorithmic Engineering of a State of The Art Cardinality Estimation Algorithm", available here.
Relative accuracy. Smaller values create counters that require more space. It must be greater than 0.000017.
The asynchronous version of count
, which returns a
future for counting the number of elements in this RDD.
Return the count of each unique value in this RDD as a map of (value, count) pairs.
Return the count of each unique value in this RDD as a map of (value, count) pairs. The final combine step happens locally on the master, equivalent to running a single reduce task.
Approximate version of countByValue().
Approximate version of countByValue().
maximum time to wait for the job, in milliseconds
a potentially incomplete result, with error bounds
Approximate version of countByValue().
Approximate version of countByValue().
The confidence is the probability that the error bounds of the result will contain the true value. That is, if countApprox were called repeatedly with confidence 0.9, we would expect 90% of the results to contain the true count. The confidence must be in the range [0,1] or an exception will be thrown.
maximum time to wait for the job, in milliseconds
the desired statistical confidence in the result
a potentially incomplete result, with error bounds
Return the first element in this RDD.
Return a new RDD by first applying a function to all elements of this RDD, and then flattening the results.
Return a new RDD by first applying a function to all elements of this RDD, and then flattening the results.
Return a new RDD by first applying a function to all elements of this RDD, and then flattening the results.
Aggregate the elements of each partition, and then the results for all the partitions, using a given associative function and a neutral "zero value".
Aggregate the elements of each partition, and then the results for all the partitions, using a given associative function and a neutral "zero value". The function op(t1, t2) is allowed to modify t1 and return it as its result value to avoid object allocation; however, it should not modify t2.
This behaves somewhat differently from fold operations implemented for non-distributed collections in functional languages like Scala. This fold operation may be applied to partitions individually, and then fold those results into the final result, rather than apply the fold to each element sequentially in some defined ordering. For functions that are not commutative, the result may differ from that of a fold applied to a non-distributed collection.
Applies a function f to all elements of this RDD.
The asynchronous version of the foreach
action, which
applies a function f to all the elements of this RDD.
Applies a function f to each partition of this RDD.
The asynchronous version of the foreachPartition
action, which
applies a function f to each partition of this RDD.
Gets the name of the file to which this RDD was checkpointed
Return the number of partitions in this RDD.
Return the number of partitions in this RDD.
Get the RDD's current storage level, or StorageLevel.NONE if none is set.
Return an RDD created by coalescing all elements within each partition into an array.
Return an RDD of grouped elements.
Return an RDD of grouped elements. Each group consists of a key and a sequence of elements mapping to that key.
Return an RDD of grouped elements.
Return an RDD of grouped elements. Each group consists of a key and a sequence of elements mapping to that key.
A unique ID for this RDD (within its SparkContext).
Return whether this RDD has been checkpointed or not
true if and only if the RDD contains no elements at all. Note that an RDD may be empty even when it has at least 1 partition.
Internal method to this RDD; will read from cache if applicable, or otherwise compute it.
Internal method to this RDD; will read from cache if applicable, or otherwise compute it. This should not be called by users directly, but is available for implementors of custom subclasses of RDD.
Creates tuples of the elements in this RDD by applying f
.
Return a new RDD by applying a function to all elements of this RDD.
Return a new RDD by applying a function to each partition of this RDD.
Return a new RDD by applying a function to each partition of this RDD.
Return a new RDD by applying a function to each partition of this RDD.
Return a new RDD by applying a function to each partition of this RDD.
Return a new RDD by applying a function to each partition of this RDD.
Return a new RDD by applying a function to each partition of this RDD.
Return a new RDD by applying a function to each partition of this RDD, while tracking the index of the original partition.
Return a new RDD by applying a function to all elements of this RDD.
Return a new RDD by applying a function to all elements of this RDD.
Returns the maximum element from this RDD as defined by the specified Comparator[T].
Returns the maximum element from this RDD as defined by the specified Comparator[T].
the comparator that defines ordering
the maximum of the RDD
Returns the minimum element from this RDD as defined by the specified Comparator[T].
Returns the minimum element from this RDD as defined by the specified Comparator[T].
the comparator that defines ordering
the minimum of the RDD
The partitioner of this RDD.
Set of partitions in this RDD.
Return an RDD created by piping elements to a forked external process.
Return an RDD created by piping elements to a forked external process.
Return an RDD created by piping elements to a forked external process.
Return an RDD created by piping elements to a forked external process.
Return an RDD created by piping elements to a forked external process.
Reduces the elements of this RDD using the specified commutative and associative binary operator.
Save this RDD as a SequenceFile of serialized objects.
Save this RDD as a compressed text file, using string representations of elements.
Save this RDD as a text file, using string representations of elements.
Take the first num elements of the RDD.
Take the first num elements of the RDD. This currently scans the partitions *one by one*, so it will be slow if a lot of partitions are required. In that case, use collect() to get the whole RDD instead.
this method should only be used if the resulting array is expected to be small, as all the data is loaded into the driver's memory.
The asynchronous version of the take
action, which returns a
future for retrieving the first num
elements of this RDD.
The asynchronous version of the take
action, which returns a
future for retrieving the first num
elements of this RDD.
this method should only be used if the resulting array is expected to be small, as all the data is loaded into the driver's memory.
Returns the first k (smallest) elements from this RDD using the natural ordering for T while maintain the order.
Returns the first k (smallest) elements from this RDD using the natural ordering for T while maintain the order.
k, the number of top elements to return
an array of top elements
this method should only be used if the resulting array is expected to be small, as all the data is loaded into the driver's memory.
Returns the first k (smallest) elements from this RDD as defined by the specified Comparator[T] and maintains the order.
Returns the first k (smallest) elements from this RDD as defined by the specified Comparator[T] and maintains the order.
k, the number of elements to return
the comparator that defines the order
an array of top elements
this method should only be used if the resulting array is expected to be small, as all the data is loaded into the driver's memory.
A description of this RDD and its recursive dependencies for debugging.
Return an iterator that contains all of the elements in this RDD.
Return an iterator that contains all of the elements in this RDD.
The iterator will consume as much memory as the largest partition in this RDD.
Returns the top k (largest) elements from this RDD using the natural ordering for T and maintains the order.
Returns the top k (largest) elements from this RDD using the natural ordering for T and maintains the order.
k, the number of top elements to return
an array of top elements
this method should only be used if the resulting array is expected to be small, as all the data is loaded into the driver's memory.
Returns the top k (largest) elements from this RDD as defined by the specified Comparator[T] and maintains the order.
Returns the top k (largest) elements from this RDD as defined by the specified Comparator[T] and maintains the order.
k, the number of top elements to return
the comparator that defines the order
an array of top elements
this method should only be used if the resulting array is expected to be small, as all the data is loaded into the driver's memory.
org.apache.spark.api.java.JavaRDDLike.treeAggregate
with suggested depth 2.
Aggregates the elements of this RDD in a multi-level tree pattern.
Aggregates the elements of this RDD in a multi-level tree pattern.
suggested depth of the tree
org.apache.spark.api.java.JavaRDDLike.treeReduce
with suggested depth 2.
Reduces the elements of this RDD in a multi-level tree pattern.
Reduces the elements of this RDD in a multi-level tree pattern.
suggested depth of the tree
Zips this RDD with another one, returning key-value pairs with the first element in each RDD, second element in each RDD, etc.
Zips this RDD with another one, returning key-value pairs with the first element in each RDD, second element in each RDD, etc. Assumes that the two RDDs have the *same number of partitions* and the *same number of elements in each partition* (e.g. one was made through a map on the other).
Zip this RDD's partitions with one (or more) RDD(s) and return a new RDD by applying a function to the zipped partitions.
Zip this RDD's partitions with one (or more) RDD(s) and return a new RDD by applying a function to the zipped partitions. Assumes that all the RDDs have the *same number of partitions*, but does *not* require them to have the same number of elements in each partition.
Zips this RDD with its element indices.
Zips this RDD with its element indices. The ordering is first based on the partition index and then the ordering of items within each partition. So the first item in the first partition gets index 0, and the last item in the last partition receives the largest index. This is similar to Scala's zipWithIndex but it uses Long instead of Int as the index type. This method needs to trigger a spark job when this RDD contains more than one partitions.
Zips this RDD with generated unique Long ids.
Zips this RDD with generated unique Long ids. Items in the kth partition will get ids k, n+k, 2*n+k, ..., where n is the number of partitions. So there may exist gaps, but this method won't trigger a spark job, which is different from org.apache.spark.rdd.RDD#zipWithIndex.
Defines operations common to several Java RDD implementations.
This trait is not intended to be implemented by user code.