MAPREDUCE服务 MRS-Spark基本原理:SparkSession原理
SparkSession原理
SparkSession是Spark编程的统一API,也可看作是读取数据的统一入口。SparkSession提供了一个统一的入口点来执行以前分散在多个类中的许多操作,并且还为那些较旧的类提供了访问器方法,以实现最大的兼容性。
使用构建器模式创建SparkSession。如果存在SparkSession,构建器将自动重用现有的SparkSession;如果不存在则会创建一个SparkSession。 在I/O期间,在构建器中设置的配置项将自动同步到Spark和Hadoop。
import org.apache.spark.sql.SparkSession val sparkSession = SparkSession.builder .master("local") .appName("my-spark-app") .config("spark.some.config.option", "config-value") .getOrCreate()
- SparkSession可以用于对数据执行SQL查询,将结果返回为DataFrame。
sparkSession.sql("select * from person").show
- SparkSession可以用于设置运行时的配置项,这些配置项可以在SQL中使用变量替换。
sparkSession.conf.set("spark.some.config", "abcd") sparkSession.conf.get("spark.some.config") sparkSession.sql("select ${spark.some.config}")
- SparkSession包括一个“catalog”方法,其中包含使用Metastore(即数据目录)的方法。方法返回值为数据集,可以使用相同的Dataset API来运行。
val tables = sparkSession.catalog.listTables() val columns = sparkSession.catalog.listColumns("myTable")
- 底层SparkContext可以通过SparkSession的SparkContext API访问。
val sparkContext = sparkSession.sparkContext
- 什么是Spark_如何使用Spark_Spark的功能是什么
- MapReduce服务_什么是Kafka_如何使用Kafka
- MapReduce服务_什么是Hive_如何使用Hive
- MapReduce服务_什么是MapReduce服务_什么是HBase
- GaussDB原理_GaussDB数据库原理_高斯数据库原理-华为云
- MapReduce服务_如何使用MapReduce服务_MRS集群客户端安装与使用
- MapReduce服务_什么是HDFS_HDFS特性
- MapReduce服务_什么是Hue_如何使用Hue
- MapReduce服务_什么是HetuEngine_如何使用HetuEngine
- MapReduce服务_什么是存算分离_如何配置MRS集群存算分离