Hadoop+Spark大数据技术 实验8 Spark SQL结构化
在Hadoop+Spark大数据技术栈中,Spark SQL是一种处理结构化数据的强大工具。下面是一个使用Spark SQL处理结构化数据的简单示例。
假设我们有一个名为people.json
的JSON文件,内容如下:
{"name":"John", "age":28}
{"name":"Jane", "age":24}
我们将使用Spark读取这个文件,并创建一个DataFrame,然后注册为一个可以查询的表。
import org.apache.spark.sql.SparkSession
// 创建SparkSession
val spark = SparkSession.builder()
.appName("Spark SQL Example")
.config("spark.some.config.option", "some-value")
.getOrCreate()
// 引入Spark SQL的语法支持
import spark.implicits._
// 读取JSON文件
val peopleDF = spark.read.json("path/to/people.json")
// 创建临时视图
peopleDF.createOrReplaceTempView("people")
// 运行SQL查询
val teenagersDF = spark.sql("SELECT name FROM people WHERE age BETWEEN 13 AND 19")
// 显示查询结果
teenagersDF.show()
// 停止SparkSession
spark.stop()
在这个例子中,我们首先创建了一个SparkSession,然后读取了一个JSON文件并创建了一个DataFrame。接着,我们使用.createOrReplaceTempView
方法创建了一个临时视图,这样就可以通过Spark SQL来查询这个DataFrame。最后,我们使用spark.sql
方法执行了一个SQL查询,并通过.show
方法显示了查询结果。这个过程展示了如何使用Spark SQL进行基本的数据查询。
评论已关闭