sparksql

Posted followees

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sparksql相关的知识,希望对你有一定的参考价值。

 1 import org.apache.spark.sql.SparkSession
 2 val spark = SparkSession
 3   .builder()
 4   .appName("Spark SQL basic example")
 5   .getOrCreate()
 6 //引入Spark的隐式类型转换,如将RDD转换成 DataFrame
 7 import spark.implicits._
 8 val df = spark.read.json("/data/tmp/SparkSQL/people.json")
 9 df.show() //将DataFrame的内容进行标准输出
10 //+---+-------+
11 //|age|   name|
12 //+---+-------+
13 //|   |Michael|
14 //| 19|   Andy|
15 //| 30| Justin|
16 //+---+-------+
17 
18 df.printSchema()  //打印出DataFrame的表结构
19 //root
20 // |-- age: string (nullable = true)
21 // |-- name: string (nullable = true)
22 
23 df.select("name").show() 
24 //类似于select name from DataFrame的SQL语句
25 
26 df.select($"name", $"age" + 1).show()
27 //类似与select name,age+1 from DataFrame的SQL语句
28 //此处注意,如果对列进行操作,所有列名前都必须加上$符号
29 
30 df.filter($"age" > 21).show()
31 //相当于select * from DataFrame where age>21 的SQL语句
32 
33 df.groupBy("age").count().show()
34 //相当于select age,count(age) from DataFrame group by age;
35 
36 //同时也可以直接写SQL进行DataFrame数据的分析
37 df.createOrReplaceTempView("people")
38 val sqlDF = spark.sql("SELECT * FROM people")
39 sqlDF.show()

 

以上是关于sparksql的主要内容,如果未能解决你的问题,请参考以下文章

SparkSQL 查询数据框

2.sparkSQL--DataFrames与RDDs的相互转换

独家 | PySpark和SparkSQL基础:如何利用Python编程执行Spark(附代码)

SparkSQL - 直接读取镶木地板文件

大数据-spark理论sparkSql,sparkStreaming,spark调优

IEEAC云专委前沿说PySpark和SparkSQL基础:如何利用Python编程执行Spark(附代码)