count :计数
使用count成员函数获得RDD对象的成员总数,返回值为长整型。
语法
def count(): Long
返回值
长整型,表示成员总数量。
示例
下面的示例返回文件的总行数(记录数):
scala> textFile.count()
res0: Long = 126
使用RDD的count方法获得记录总数。
top :前N个记录
使用top成员函数获得RDD中的前N个记录,可以指定一个排序函数进行排序比较。 如果不指定排序函数,那么使用默认的Ascii码序进行记录排序。
语法
def top(num: Int)(implicit ord: Ordering[T]): Array[T]
参数
- num : Int , 要返回的记录数量
- ord : Ordering[T] , 排序函数
返回值
包含前N个记录的数组,记录类型为T。
示例
下面的示例返回使用默认排序后的头两个记录
scala> textFile.top(2)
res28:Array[String] = Array(your original work... ,you agree to...)
使用RDD的top方法获得排序后的前N条记录。
take:无序采样
使用take成员函数获得指定数量的记录,返回一个数组。与top不同,take在提取记录 前不进行排序,它仅仅逐分区地提取够指定数量的记录就返回结果。可以将take方法 视为对RDD对象的无序采样。
语法
def take(num: Int): Array[T]
参数 num : Int , 要获取的记录数量
返回值
包含指定数量记录的数组,记录类型为T。
示例
下面的示例返回文件中的两行(两个成员):
scala> textFile.take(2)
res1: Array[String] = Array(# Apache Spark,"")
使用RDD的take方法获得指定数量的记录。
first : 取第一个记录
使用first成员函数获得RDD中的第一个记录。
语法
def first(): T
示例
下面的示例返回文件的第一行(RDD的第一个记录):
scala> textFile.first()
res1: String = # Apache Spark
使用RDD的first方法获得第一条记录。不过,没有last方法!
max : 取值最大的记录
使用max成员函数获得值最大的记录,可以指定一个排序函数进行排序比较。默认使用 Ascii码序进行排序。
语法
def max()(implicit ord: Ordering[T]): T
参数 ord : Ordering[T] , 排序函数
示例
下面的示例按字符串比较顺序找出最大的行记录:
scala> textFile.max()
res10: String = your original work and that you license the ...
使用RDD的max方法获得最大的记录!
min : 取值最小的记录
使用min成员函数获得值最小的记录,可以指定一个排序函数进行排序比较。默认使用 Ascii码序进行排序。
语法
def min()(implicit ord: Ordering[T]): T
参数
ord : Ordering[T] , 排序函数
示例
下面的示例按字符串比较顺序找出最小的行记录:
scala> textFile.min()
res 20: String = ""
使用RDD的min方法获得最小的记录!
reduce : 规约RDD
使用reduce成员函数对RDD进行规约操作,必须指定一个函数指定规约行为。
语法
def reduce(f: (T, T) => T): T
参数 f : 规约函数 , 两个参数分别代表RDD中的两个记录,返回值被RDD用来进行递归计算。
示例
下面的示例使用匿名函数,将所有的记录连接起来构成一个字符串:
scala> textFile.reduce((a,b)=>a+b)
res60:String = #Apache SparkSpake is a fast...
使用RDD的reduce方法进行聚合!
collect : 收集全部记录
使用collect成员函数获得RDD中的所有记录,返回一个数组。collect方法 可以视为对RDD对象的一个全采样。
语法
def collect(): Array[T]
示例
下面的示例返回RDD中的所有记录:
scala> textFile.collect()
res10: Array[String] = Array(# Apache Spark, "", Spark is a fast ...)
使用RDD的collect方法获得全部记录!