Spark(六) SQL API

汇总

Spark SQL和DataFrames的重要类:

  • pyspark.sql.SparkSession DataFrame和SQL功能的主要入口点。
  • pyspark.sql.DataFrame 分布式数据集合,分为命名列。
  • pyspark.sql.Column DataFrame的列表达式。
  • pyspark.sql.Row DataFrame的行表达式。
  • pyspark.sql.GroupedData 聚合方法,由DataFrame.groupBy()返回。
  • pyspark.sql.DataFrameNaFunctions 处理缺失数据(空值)的方法。
  • pyspark.sql.DataFrameStatFunctions 统计功能的方法。
  • pyspark.sql.functions 内置功能列表DataFrame。
  • pyspark.sql.types 支持的数据类型列表。
  • pyspark.sql.Window 用于支持窗口功能。

具体

class pyspark.sql.SparkSession(sparkContext, jsparkSession=None)

Spark数据集和DataFrame API的主要入口。创建DataFrame、注册DataFarme为tables,在tables执行SQL语句、持久化tables、读取paquet(一种列式文件)。

>>> spark = SparkSession.builder \
...     .master("local") \
...     .appName("Word Count") \
...     .config("spark.some.config.option", "some-value") \
...     .getOrCreate()

builder类变量,Builder的类方法构建SparkSession实例
1.class Builder SparkSession构建器

  • appName(name) 应用名。
  • config 将配置选项自动传到SparkConf和SparkSession的配置。

使用已经存在的SparkConf配置

>>> from pyspark.conf import SparkConf
>>> SparkSession.builder.config(conf=SparkConf())
<pyspark.sql.session...

对于键值对,可以忽略变量名

>>> SparkSession.builder.config("spark.some.config.option", "some-value")
<pyspark.sql.session...
  • enableHiveSupport() 启用配置单元支持,包括到永久配置hive元存储的连接、对hive serdes的支持以及配置单元用户定义函数。
  • getOrCreate() 获取一个现有的SparkSession,或者,如果没有现有的SparkSession,则基于builder设置的选项创建新的。
    此方法首先检查是否存在有效的全局默认SparkSession,如果是,则返回该SparkSession。如果没有有效的全局默认SPARKSISTION,则该方法创建新的SPARKSIST,并将新创建的SparkSession分配为全局默认值。
>>> s1 = SparkSession.builder.config("k1", "v1").getOrCreate()
>>> s1.conf.get("k1") == s1.sparkContext.getConf().get("k1") == "v1"
True

如果已经存在的SparkSession被返回,builder中config配置背应用到存在的SparkSession

>>> s2 = SparkSession.builder.config("k2", "v2").getOrCreate()
>>> s1.conf.get("k1") == s2.conf.get("k1")
True
>>> s1.conf.get("k2") == s2.conf.get("k2")
True
  • master(master) 设置要连接的Spark主URL,例如“local”要在本地运行,“local[4]”要在4核的本地运行,“spark://master:7077”在Spark独立群集上运行。
  • property catalog 用户创建、删除、更改或查询底层数据库、表、函数等的接口。
  • property conf Spark的运行配置接口。用户可以通过它获取和设置与spark sql相关的所有spark和hadoop配置。当获取配置的值时,这将默认为基础sparkContext中设置的值。
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值