pyspark入门系列 - 02 pyspark.sql入口 SparkSession简介与实践

SparkSesson为使用Dataset和DataFrame API编程Spark的入口点。

SparkSesson对象可以创建DataFrame,将Dataframe注册为表,并在表上执行SQL、缓存表、读parquet文件等,通过下面的方式创建SparkSesson

from pyspark.sql import SparkSession
spark = SparkSession.builder.master('local').appName('Word-Count').config('"spark.some.config.option", "some-value"'
### PySpark SQL编程入门实践教程 #### 了解PySpark SQL的基础概念 PySpark SQL 是 Apache Spark 提供的一个模块,用于处理结构化数据。它提供了 DataFrame API 和 SQL 查询功能,使得用户可以轻松地执行复杂的查询操作并优化性能[^1]。 #### 创建和操作DataFrame 为了开始使用 PySpark SQL 进行编程,创建一个 `SparkSession` 对象是非常重要的。这是进入所有功能的主要入口点: ```python from pyspark.sql import SparkSession spark = SparkSession.builder \ .appName("Python Spark SQL basic example") \ .config("spark.some.config.option", "some-value") \ .getOrCreate() ``` 接着可以通过加载外部文件来创建 DataFrames 或者通过现有 RDDs 转换成 DataFrames: ```python df = spark.read.json("examples/src/main/resources/people.json") # 展示表中的内容 df.show() # 执行简单的过滤条件 df.filter(df['age'] > 20).show() ``` 对于更复杂的数据源如 CSV 文件,则可采用如下方式读取: ```python peopleRDD = spark.sparkContext.textFile("file:///usr/local/spark/mycode/sparksql/employee.txt") schemaPeople = spark.createDataFrame(peopleRDD, schema) # 注册临时视图以便后续查询 schemaPeople.createOrReplaceTempView("people") results = spark.sql("SELECT name FROM people WHERE age >= 13 AND age <= 19") results.show() ``` 上述代码片段展示了如何从文本文件中读入数据,并将其转换成带有模式信息的 DataFrame 后注册为临时表格来进行 SQL 查询[^3]。 #### 使用内置函数增强数据分析能力 除了基本的操作外,还可以利用丰富的内置函数库进一步提升效率。例如日期时间处理、字符串操作以及聚合计算等功能都可以借助这些工具实现。 更多详细的文档可以在官方指南找到,其中包含了大量实用的例子帮助理解各个特性的应用方法[^2]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值