前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >手动指定数据源类型

手动指定数据源类型

作者头像
编程那点事
发布2023-02-25 15:51:22
2620
发布2023-02-25 15:51:22
举报
文章被收录于专栏:java编程那点事

也可以手动指定用来操作的数据源类型。数据源通常需要使用其全限定名来指定,比如parquet是org.apache.spark.sql.parquet。但是Spark SQL内置了一些数据源类型,比如json,parquet,jdbc等等。实际上,通过这个功能,就可以在不同类型的数据源之间进行转换了。比如将json文件中的数据保存到parquet文件中。默认情况下,如果不指定数据源类型,那么就是parquet。

Java版本

代码语言:javascript
复制
DataFrame df = sqlContext.read().format("json").load("people.json");
df.select("name", "age").write().format("parquet").save("namesAndAges.parquet");

Scala版本

代码语言:javascript
复制
val df = sqlContext.read.format("json").load("people.json")
df.select("name", "age").write.format("parquet").save("namesAndAges.parquet")

Java版本

代码语言:javascript
复制
public class ManuallySpecifyOptions {

public static void main(String[] args) {
​​SparkConf conf = new SparkConf()​​.setAppName("ManuallySpecifyOptions");
​​JavaSparkContext sc = new JavaSparkContext(conf);
​​SQLContext sqlContext = new SQLContext(sc);
DataFrame peopleDF = sqlContext.read().format("json")​​​​.load("hdfs://spark1:9000/people.json");
​​peopleDF.select("name").write().format("parquet")​​​.save("hdfs://spark1:9000/peopleName_java");  
​}
}

Scala版本

代码语言:javascript
复制
import org.apache.spark.sql.SQLContext
import org.apache.spark.SparkConf
import org.apache.spark.SparkContext

object ManuallySpecifyOptions {

def main(args: Array[String]): Unit = {
val conf = new SparkConf()
   .setAppName("ManuallySpecifyOptions")  
val sc = new SparkContext(conf)
val sqlContext = new SQLContext(sc)

val peopleDF = sqlContext.read.format("json").load("hdfs://spark1:9000/people.json")
 peopleDF.select("name").write.format("parquet").save("hdfs://spark1:9000/peopleName_scala")  
 }

}
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019-02-21,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档