背景
spark提供一种叫Resilient Distributed Datasets(RDD)的弹性分布式数据集。RDD是只读的、分区记录的集合。RDD只能基于在稳定物理存储中的数据集和其他已有的RDD上执行确定性操作来创建。我们能基于RDD的这种特点对其进行灵活的变换和计算,如transform的操作包括map、filter、flatmap、join等,以及action的一些操作包括count、take、save等。但是RDD从本质上来讲是一种按行操作的过程,它缺乏一些schema信息。所以当我们需要一下灵活的按列操作时,我们需要利用spark提供的Dataframe来进行。
Dataframe 介绍
Dataframe 操作
1.withcolumns(列名,function)
新增一列或者修改列都需要用到这个方法
2.array([column list])
将几列的数据组成一个数组
3.udf(function, returntype)
创建封装一些自定义的函数和方法