通用的load和save操作

2019-02-21  本文已影响0人  一个人一匹马

对于Spark SQL的DataFrame来说,无论是从什么数据源创建出来的DataFrame,都有一些共同的load和save操作。load操作主要用于加载数据,创建出DataFrame;save操作,主要用于将DataFrame中的数据保存到文件中。

Java版本

DataFrame df = sqlContext.read().load("users.parquet");

df.select("name", "favorite_color").write().save("namesAndFavColors.parquet");

Scala版本

val df = sqlContext.read.load("users.parquet")

df.select("name", "favorite_color").write.save("namesAndFavColors.parquet")

第一步上传user.parquet文件

Hadoop fs -put user.parquest /

第二步上传jar包

Java代码如下:

public class GenericLoadSave {

​public static void main(String[] args) {

​​SparkConf conf = new SparkConf()​​.setAppName("GenericLoadSave").setMaster("local");

JavaSparkContext sc = new JavaSparkContext(conf);

SQLContext sqlContext = new SQLContext(sc);

DataFrame usersDF = sqlContext.read().load(​"hdfs://spark1:9000/users.parquet");

usersDF.show();
}
}




 
public class GenericLoadSave {

​public static void main(String[] args) {

​​SparkConf conf = new SparkConf()​​.setAppName("GenericLoadSave");

JavaSparkContext sc = new JavaSparkContext(conf);

SQLContext sqlContext = new SQLContext(sc);

DataFrame usersDF = sqlContext.read().load(​"hdfs://spark1:9000/users.parquet");      
usersDF.select("name","favorite_color").write().save("namesAndColors.parquet");

}
}

Scala版本

import org.apache.spark.SparkConf

import org.apache.spark.sql.SQLContext

import org.apache.spark.SparkContext

object GenericLoadSave {

def main(args: Array[String]){

val conf = new SparkConf().setAppName("GenericLoadSave")

val sc = new SparkContext(conf)

val sqlContext = new SQLContext(sc)
val usersDF = sqlContext.read.load("hdfs://spark1:9000/users.parquet")
usersDF.select("name", "favorite_color").write.save("hdfs://spark1:9000/namesAndFavColors.parquet")
}
}
上一篇 下一篇

猜你喜欢

热点阅读