pyspark类库总结
2020-02-04 本文已影响0人
NEO_X
内容摘入自<<Python大数据分析从入门到精通>>
Pyspark是Apache Spark的Python应用程序编程接口(API)。Pyspark包括一组公共类、2个模块SQL模块和流数据模块;2个包Mllib和ML用于机器学习,如下图所示。
13-10.pngPySpark核心类说明
Pyspark核心类由公共类、SQL模块和流模块的6个子集类组成。这些类表示核心的Pyspark功能,如下表所示。
类型 | 类名 |
---|---|
公共类 | SparkContext |
公共类 | RDD |
SQL模块 | SparkSession |
SQL模块 | DataFrame |
流数据模块 | StreamingContext |
流数据模块 | DStream |
PySpark公共类说明。
在Pyspark中有8个公共类,分别是SparkContext、RDD、Broadcast、Accumulator、 SparkConf、SparkFiles、StorageLevel和TaskContext,说明如下表所示。
类名 | 说明 |
---|---|
Accumulator | 一个只加操作共享变量,在任务只能增加值。 |
Broadcast | 广播变量,可用于跨任务复用 |
RDD | 弹性分布式数据集,Spark中基础编程抽象 |
SparkConf | 用于Spark应用程序的参数配置 |
SparkContext | Spark应用程序的主要入口 |
SparkFiles | 提供对文件操作的相关功能 |
StorageLevel | 用于数据存储级别的设置 |
TaskContext | 可以提供关于当前运行任务的信息 |
PySpark SQL模块说明
SQL模块包含了10个类,提供了类型、配置、DataFrames和许多其他功能的SQL函数和方法,具体如下表所示。
类名 | 说明 |
---|---|
SparkSession | 用于操作DataFrame的入口点 |
Column | 用来表示DataFrame中的列 |
Row | 用来表示DataFrame中的行 |
GroupedData | 用于提供DataFrame中的汇总功能 |
Types | 定义DataFrame中的数据类型 |
Functions | 提供丰富常用的功能,如数学工具,日期计算,数据转换等 |
Window | 提供窗口函数功能 |
DataFrame | 用于创建DataFrame对象 |
DataFrameNaFunctions | 用于处理DataFrame中的null值 |
DataFrameStatFunctions | 用于统计汇总DataFrame中的数据 |
PySpark流数据模块说明。
流数据模块包含3个主要的类StreamingContext、Dstream、StreamingListener。也特别提供针对了Flume、Kafka、Kinesis流数据处理的类,但这里只对前3个类说明。如下表所示。
类名 | 说明 |
---|---|
StreamingContext | 用于处理Spark Streaming应用的入口 |
DStream | Spark Streaming的基本抽象,DStream是一个连续的数据流 |
StreamingListener | 对Streaming数据流事件监控和处理 |