Spark Core

Public Classes

SparkContext ([主节点, 应用名称, Spark主页, …])

Spark功能的主要入口点。

RDD (jrdd, ctx[, jrdd_deserializer])

弹性分布式数据集 (RDD),Spark中的基本抽象。

Broadcast ([sc, 值, pickle_registry, …])

使用 SparkContext.broadcast() 创建的广播变量。

Accumulator (aid, value, accum_param)

一个可以累积的共享变量,即具有可交换和结合的“加法”操作。

AccumulatorParam

辅助对象,定义了如何累积给定类型的值。

SparkConf ([loadDefaults, _jvm, _jconf])

Spark 应用程序的配置。

SparkFiles ()

解析通过 SparkContext.addFile() 添加的文件路径。

StorageLevel (使用磁盘, 使用内存, 使用堆外, …)

用于控制RDD存储的标志。

TaskContext

关于可以在执行期间读取或改变的任务的上下文信息。

RDDBarrier (rdd)

在障碍阶段中包装RDD,这会强制Spark一起启动该阶段的任务。

BarrierTaskContext

一个 TaskContext ,包含了额外的上下文信息和用于障碍

BarrierTaskInfo (地址)

携带障碍任务的所有任务信息。

InheritableThread (目标, *参数, **关键字参数)

建议在启用固定线程模式时,在PySpark中使用的线程,而不是 threading.Thread

util.VersionUtils

提供实用方法以确定给定输入字符串的Spark版本。

Spark Context APIs

SparkContext.PACKAGE_EXTENSIONS

SparkContext.accumulator (值[, 累加器参数])

创建一个 Accumulator ,使用给定的初始值,借助一个给定的 AccumulatorParam 辅助对象来定义如何添加数据类型的值(如果提供)。

SparkContext.addArchive (路径)

为每个节点添加一个可下载的档案,与此 Spark 作业一起。

SparkContext.addFile (路径[, 递归])

在每个节点上添加一个文件,以便与此Spark作业一起下载。

SparkContext.addJobTag (标签)

为该线程启动的所有作业添加一个标签。

SparkContext.addPyFile (路径)

为将来在此 SparkContext 上执行的所有任务添加 .py 或 .zip 依赖项。

SparkContext.applicationId

Spark应用程序的唯一标识符。

SparkContext.binaryFiles (路径[, 最小分区数])

从HDFS、本地文件系统(在所有节点上可用)或任何Hadoop支持的文件系统URI读取二进制文件目录作为字节数组。

SparkContext.binaryRecords (路径, 记录长度)

从平面二进制文件加载数据,假设每条记录是一组具有指定数值格式的数字(参见 ByteBuffer),并且每条记录的字节数是恒定的。

SparkContext.broadcast (值)

将只读变量广播到集群,返回一个 Broadcast 对象,以便在分布式函数中读取它。

SparkContext.cancelAllJobs ()

取消所有已安排或正在运行的作业。

SparkContext.cancelJobGroup (groupId)

取消指定组的活动作业。

SparkContext.cancelJobsWithTag (标签)

取消具有指定标签的正在进行的工作。

SparkContext.clearJobTags ()

清除当前线程的工作标签。

SparkContext.defaultMinPartitions

用户未指定时Hadoop RDDs的默认最小分区数

SparkContext.defaultParallelism

未由用户提供时使用的默认并行级别(例如。

SparkContext.dump_profiles (路径)

将配置文件统计信息转储到目录 path

SparkContext.emptyRDD ()

创建一个 RDD ,该对象没有分区或元素。

SparkContext.getCheckpointDir ()

返回RDD被检查点的目录。

SparkContext.getConf ()

返回此 SparkContext 的配置副本 SparkConf

SparkContext.getJobTags ()

获取当前设置为分配给该线程启动的所有工作岗位的标签。

SparkContext.getLocalProperty (键)

获取在此线程中设置的本地属性,如果缺失则返回null。

SparkContext.getOrCreate ([conf])

获取或实例化一个 SparkContext 并将其注册为单例对象。

SparkContext.hadoopFile (路径, …[, …])

从HDFS、本地文件系统(在所有节点上可用)或任何Hadoop支持的文件系统URI读取“旧”Hadoop InputFormat,具有任意键和值类。

SparkContext.hadoopRDD (输入格式类, …)

从任意 Hadoop 配置读取一个“旧”Hadoop InputFormat,其键和值类是任意的,并作为 Python 字典传入。

SparkContext.listArchives

返回已添加到资源的归档路径列表。

SparkContext.listFiles

返回已添加到资源的文件路径列表。

SparkContext.newAPIHadoopFile (路径, …[, …])

从 HDFS、本地文件系统(在所有节点上可用)或任何 Hadoop 支持的文件系统 URI 读取一个‘新 API’ Hadoop InputFormat,具有任意键和值类。

SparkContext.newAPIHadoopRDD (…[, …])

从任意 Hadoop 配置中读取一个“新 API” Hadoop InputFormat,使用任意键和值类,该配置以 Python 字典的形式传递。

SparkContext.parallelize (c[, numSlices])

将本地Python集合分发以形成RDD。

SparkContext.pickleFile (名称[, 最小分区])

加载之前使用 RDD.saveAsPickleFile() 方法保存的 RDD。

SparkContext.range (开始[, 结束, 步长, 切片数])

创建一个包含从 start end (不包括)的 int 类型的新 RDD,每个元素增加 step

SparkContext.resources

返回此 SparkContext 的资源信息。

SparkContext.removeJobTag (标签)

移除之前添加的标签,该标签将分配给由此线程启动的所有作业。

SparkContext.runJob (rdd, partitionFunc[, …])

在指定的分区集上执行给定的partitionFunc,将结果作为元素数组返回。

SparkContext.sequenceFile (路径[, keyClass, …])

从 HDFS、一个本地文件系统(在所有节点上可用)或任何 Hadoop 支持的文件系统 URI 读取具有任意键和值的 Writable 类的 Hadoop SequenceFile。

SparkContext.setCheckpointDir (dirName)

设置要执行检查点操作的目录。

SparkContext.setInterruptOnCancel (…)

设置在此线程中启动的作业的取消行为。

SparkContext.setJobDescription (值)

设置当前作业的人类可读描述。

SparkContext.setJobGroup (组ID,描述)

将组ID分配给由此线程启动的所有作业,直到组ID被设置为不同的值或被清除。

SparkContext.setLocalProperty (键, 值)

设置一个本地属性,该属性影响从此线程提交的作业,例如 Spark 公平调度池。

SparkContext.setLogLevel (日志级别)

控制我们的日志级别。

SparkContext.setSystemProperty (键, 值)

设置一个Java系统属性,例如 spark.executor.memory

SparkContext.show_profiles ()

将个人资料统计信息打印到标准输出

SparkContext.sparkUser ()

获取正在运行SparkContext的用户的SPARK_USER。

SparkContext.startTime

返回 SparkContext 启动时的纪元时间。

SparkContext.statusTracker ()

返回 StatusTracker 对象

SparkContext.stop ()

关闭 SparkContext

SparkContext.textFile (名称[, 最小分区数, …])

从HDFS、本地文件系统(在所有节点上可用)或任何Hadoop支持的文件系统URI读取文本文件,并将其作为字符串的RDD返回。

SparkContext.uiWebUrl

返回由这个 SparkContext 启动的 SparkUI 实例的 URL

SparkContext.union (rdds)

构建一个RDD列表的并集。

SparkContext.version

此应用程序正在运行的Spark版本。

SparkContext.wholeTextFiles (路径[, …])

从 HDFS、本地文件系统(在所有节点上可用)或任何 Hadoop 支持的文件系统 URI 读取文本文件目录。

RDD APIs

RDD.aggregate (零值, 序列操作, 合并操作)

聚合每个分区的元素,然后使用给定的组合函数和一个中性的“零值”聚合所有分区的结果。

RDD.aggregateByKey (初始值, 序列函数, 组合函数)

聚合每个键的值,使用给定的合并函数和中性的“零值”。

RDD.barrier ()

将当前阶段标记为障碍阶段,在此阶段,Spark 必须一起启动所有任务。

RDD.cache ()

使用默认存储级别( MEMORY_ONLY )持久化此 RDD。

RDD.cartesian (其他)

返回这个 RDD 和另一个 RDD 的笛卡尔积,也就是说,所有元素对的 RDD (a, b) ,其中 a self 中, b other 中。

RDD.checkpoint ()

将此RDD标记为检查点。

RDD.cleanShuffleDependencies ([blocking])

移除RDD的洗牌以及未持久化的祖先。

RDD.coalesce (numPartitions[, shuffle])

返回一个新的 RDD,该 RDD 被减少为 numPartitions 个分区。

RDD.cogroup (其他[, numPartitions])

对于 self other 中的每个键k,返回一个结果RDD,其中包含一个元组,该元组包含 self other 中该键的值列表。

RDD.collect ()

返回一个包含此RDD中所有元素的列表。

RDD.collectAsMap ()

将此RDD中的键值对作为字典返回给主节点。

RDD.collectWithJobGroup (groupId, description)

在收集RDD时,使用此方法来指定作业组。

RDD.combineByKey (创建组合器, 合并值, …)

通用函数,用于使用自定义聚合函数集组合每个键的元素。

RDD.context

此RDD创建时所用的 SparkContext

RDD.count ()

返回此RDD中的元素数量。

RDD.countApprox (超时[, 置信度])

count() 的近似版本,在超时内返回可能不完整的结果,即使所有任务尚未完成。

RDD.countApproxDistinct ([relativeSD])

返回RDD中不同元素的近似数量。

RDD.countByKey ()

计算每个键的元素数量,并将结果作为字典返回给主节点。

RDD.countByValue ()

返回这个RDD中每个唯一值的计数,作为(value, count)对的字典。

RDD.distinct ([numPartitions])

返回一个新的 RDD,其中包含该 RDD 中的不同元素。

RDD.filter (f)

返回一个新的 RDD,其中仅包含满足谓词的元素。

RDD.first ()

返回这个 RDD 中的第一个元素。

RDD.flatMap (f[, preservesPartitioning])

通过首先对这个 RDD 的所有元素应用一个函数,然后将结果压平,返回一个新的 RDD。

RDD.flatMapValues (f)

通过一个flatMap函数传递键值对RDD中的每个值,且不改变键;这也保留了原始RDD的分区。

RDD.fold (初始值, 操作)

聚合每个分区的元素,然后使用给定的可结合函数和中性“零值”对所有分区的结果进行处理。

RDD.foldByKey (初始值,函数[, …])

使用关联函数“func”和中性值“zeroValue”合并每个键的值,该值可以被任意次添加到结果中,并且必须不改变结果(例如,加法中的0,或乘法中的1)。

RDD.foreach (f)

将一个函数应用于此 RDD 的所有元素。

RDD.foreachPartition (f)

对这个RDD的每个分区应用一个函数。

RDD.fullOuterJoin (other[, numPartitions])

执行右外连接 self other

RDD.getCheckpointFile ()

获取此RDD被检查点保存的文件名

RDD.getNumPartitions ()

返回 RDD 中的分区数量

RDD.getResourceProfile ()

获取与此 RDD 指定的 pyspark.resource.ResourceProfile 或如果未指定则返回 None。

RDD.getStorageLevel ()

获取RDD的当前存储级别。

RDD.glom ()

返回一个RDD,该RDD通过将每个分区内的所有元素合并成一个列表来创建。

RDD.groupBy (f[, numPartitions, partitionFunc])

返回一个分组项的RDD。

RDD.groupByKey ([numPartitions, partitionFunc])

将RDD中每个键的值分组为一个单一的序列。

RDD.groupWith (其他, *其他)

支持多个 RDD 的 cogroup 的别名。

RDD.histogram (桶)

使用提供的桶计算直方图。

RDD.id ()

此RDD的唯一ID(在其SparkContext内)。

RDD.intersection (其他)

返回这个RDD和另一个RDD的交集。

RDD.isCheckpointed ()

返回该RDD是否已被检查点并材料化,无论是可靠地还是本地地。

RDD.isEmpty ()

仅当RDD完全不包含任何元素时返回true。

RDD.isLocallyCheckpointed ()

返回此RDD是否被标记为本地检查点。

RDD.join (other[, numPartitions])

返回一个包含在 self other 中具有匹配键的所有元素对的 RDD。

RDD.keyBy (f)

通过应用 f 创建此 RDD 中元素的元组。

RDD.keys ()

返回一个包含每个元组键的RDD。

RDD.leftOuterJoin (其他[, 分区数])

执行 self other 的左外连接。

RDD.localCheckpoint ()

使用Spark的现有缓存层将此RDD标记为本地检查点。

RDD.lookup (键)

返回RDD中键 key 的值列表。

RDD.map (f[, preservesPartitioning])

通过对这个RDD的每个元素应用一个函数返回一个新的RDD。

RDD.mapPartitions (f[, preservesPartitioning])

通过对这个 RDD 的每个分区应用一个函数来返回一个新的 RDD。

RDD.mapPartitionsWithIndex (f[, …])

通过对这个 RDD 的每个分区应用一个函数来返回一个新的 RDD,同时跟踪原始分区的索引。

RDD.mapPartitionsWithSplit (f[, …])

通过对这个 RDD 的每个分区应用一个函数,返回一个新的 RDD,同时跟踪原始分区的索引。

RDD.mapValues (f)

通过映射函数传递键值对 RDD 中的每个值,而不更改键;这也保留了原始 RDD 的分区。

RDD.max ([key])

找到这个 RDD 中的最大项。

RDD.mean ()

计算该RDD元素的均值。

RDD.meanApprox (超时[, 置信度])

近似操作以在超时内返回平均值或满足置信度。

RDD.min ([key])

在这个RDD中找到最小项。

RDD.name ()

返回此RDD的名称。

RDD.partitionBy (分区数量[, 分区函数])

返回使用指定分区器分区的RDD副本。

RDD.persist ([storageLevel])

将此RDD的存储级别设置为在第一次计算后持久化其值,以便在操作之间保持。

RDD.pipe (命令[, 环境, 检查代码])

通过将元素传递给一个分叉的外部进程来返回一个创建的RDD。

RDD.randomSplit (权重[, 种子])

根据提供的权重随机拆分此RDD。

RDD.reduce (f)

使用指定的可交换和结合的二元运算符减少此 RDD 的元素。

RDD.reduceByKey (func[, numPartitions, …])

使用关联和可交换的归约函数合并每个键的值。

RDD.reduceByKeyLocally (函数)

使用关联和交换律的归约函数合并每个键的值,但立即将结果作为字典返回给主节点。

RDD.repartition (分区数)

返回一个新的RDD,该RDD恰好有numPartitions个分区。

RDD.repartitionAndSortWithinPartitions ([…])

根据给定的分区器对RDD进行重分区,并在每个结果分区内按键对记录进行排序。

RDD.rightOuterJoin (其他[, 分区数])

执行右外连接 self other

RDD.sample (是否可以重复, 比例[, 种子])

返回此RDD的一个取样子集。

RDD.sampleByKey (是否替换, 比例)

返回通过键(通过分层抽样)抽样的此RDD的子集。

RDD.sampleStdev ()

计算该RDD元素的样本标准偏差(通过用N-1而不是N进行除法来修正估计标准偏差的偏差)。

RDD.sampleVariance ()

计算此RDD元素的样本方差(通过除以N-1而不是N来纠正估计方差的偏差)。

RDD.saveAsHadoopDataset (conf[, …])

将键值对的Python RDD(形式为 RDD[(K, V)] )输出到任何Hadoop文件系统,使用旧的Hadoop OutputFormat API(mapred包)。

RDD.saveAsHadoopFile (路径, 输出格式类)

输出一个键值对的 Python RDD(形式为 RDD[(K, V)] )到任何 Hadoop 文件系统,使用旧的 Hadoop OutputFormat API(mapred 包)。

RDD.saveAsNewAPIHadoopDataset (conf[, …])

输出一个键值对的Python RDD(形式为 RDD[(K, V)] )到任何Hadoop文件系统,使用新的Hadoop OutputFormat API(mapreduce包)。

RDD.saveAsNewAPIHadoopFile (路径, …[, …])

输出一个键值对的 Python RDD(形式为 RDD[(K, V)] )到任何 Hadoop 文件系统,使用新的 Hadoop 输出格式 API(mapreduce 包)。

RDD.saveAsPickleFile (路径[, 批处理大小])

将此RDD保存为序列化对象的SequenceFile。

RDD.saveAsSequenceFile (路径[, …])

输出一个Python RDD的键值对(形式为 RDD[(K, V)] )到任何Hadoop文件系统,使用“org.apache.hadoop.io.Writable”类型,这些类型是我们从RDD的键和值类型转换而来的。

RDD.saveAsTextFile (路径[, 压缩编码类])

将此RDD保存为文本文件,使用元素的字符串表示。

RDD.setName (名称)

为这个RDD指定一个名称。

RDD.sortBy (排序函数[, 升序, 分区数])

按给定的 keyfunc 对这个 RDD 进行排序

RDD.sortByKey ([升序, 分区数, …])

对这个 RDD 进行排序,这个 RDD 假定由 (key, value) 对组成。

RDD.stats ()

返回一个 StatCounter 对象,该对象在一个操作中捕获 RDD 元素的均值、方差和计数。

RDD.stdev ()

计算这个RDD元素的标准差。

RDD.subtract (其他[, 分区数量])

返回每个不在 other 中的 self 的值。

RDD.subtractByKey (其他[, 分区数])

返回在 self 中每个 (键, 值) 对,这些对在 other 中没有匹配键的对。

RDD.sum ()

将此 RDD 中的元素相加。

RDD.sumApprox (超时时间[, 置信度])

在超时时间内返回总和或满足置信度的近似操作。

RDD.take (数量)

取RDD的前num个元素。

RDD.takeOrdered (数量[, 关键字])

从RDD中获取按升序或按可选键函数指定的顺序排列的N个元素。

RDD.takeSample (是否放回, 数量[, 种子])

返回此RDD的固定大小的采样子集。

RDD.toDebugString ()

此RDD及其递归依赖项的描述,用于调试。

RDD.toLocalIterator ([预取分区])

返回一个迭代器,其中包含此RDD中的所有元素。

RDD.top (数量[, 键])

从 RDD 中获取前 N 个元素。

RDD.treeAggregate (初始值, 序列操作, 组合操作)

以多层树形模式聚合此 RDD 的元素。

RDD.treeReduce (f[, depth])

以多层树模式减少此RDD的元素。

RDD.union (其他)

返回此RDD和另一个RDD的并集。

RDD.unpersist ([阻塞])

将RDD标记为非持久性,并从内存和磁盘中移除其所有块。

RDD.values ()

返回一个包含每个元组值的RDD。

RDD.variance ()

计算该RDD元素的方差。

RDD.withResources (配置)

指定一个 pyspark.resource.ResourceProfile 在计算此RDD时使用。

RDD.zip (其他)

将这个RDD与另一个RDD进行压缩,返回键值对,键为第一个RDD中的每个元素,值为第二个RDD中的每个元素,等等。

RDD.zipWithIndex ()

将此 RDD 与其元素索引压缩在一起。

RDD.zipWithUniqueId ()

将此 RDD 与生成的唯一 Long id 联系起来。

Broadcast and Accumulator

Broadcast.destroy ([阻塞])

销毁与此广播变量相关的所有数据和元数据。

Broadcast.dump (值, f)

将值的经过pickle处理的表示写入打开的文件或套接字。

Broadcast.load (文件)

从打开的文件或套接字读取值的序列化表示。

Broadcast.load_from_path (路径)

从打开的文件中读取对象的腌制表示,并返回其中指定的重构对象层次结构。

Broadcast.unpersist ([blocking])

删除执行器上该广播的缓存副本。

Broadcast.value

返回广播的值

Accumulator.add (术语)

向此累加器的值添加一个项

Accumulator.value

获取累加器的值;仅在驱动程序中可用

AccumulatorParam.addInPlace (值1, 值2)

将累加器的数据类型的两个值相加,返回一个新值;为了提高效率,也可以就地更新 value1 并返回它。

AccumulatorParam.zero (值)

为该类型提供一个“零值”,其维度与提供的 value 兼容(例如,一个零向量)

Management

inheritable_thread_target (f)

返回线程目标包装器,建议在启用固定线程模式时在PySpark中使用。

SparkConf.contains (键)

这个配置是否包含给定的键?

SparkConf.get (键[, 默认值])

获取某个键的配置值,否则返回默认值。

SparkConf.getAll ()

将所有值作为键值对的列表获取。

SparkConf.set (键, 值)

设置一个配置属性。

SparkConf.setAll (参数对)

设置多个参数,作为键值对的列表传递。

SparkConf.setAppName (值)

设置应用名称。

SparkConf.setExecutorEnv ([键, 值, 对])

设置一个环境变量以传递给执行器。

SparkConf.setIfMissing (键, 值)

设置一个配置属性,如果尚未设置。

SparkConf.setMaster (值)

设置主 URL 以进行连接。

SparkConf.setSparkHome (值)

设置Spark安装在工作节点上的路径。

SparkConf.toDebugString ()

返回可打印的配置版本,作为键=值对的列表,每行一个。

SparkFiles.get (文件名)

获取通过 SparkContext.addFile() SparkContext.addPyFile() 添加的文件的绝对路径。

SparkFiles.getRootDirectory ()

获取包含通过 SparkContext.addFile() SparkContext.addPyFile() 添加的文件的根目录。

StorageLevel.DISK_ONLY

StorageLevel.DISK_ONLY_2

StorageLevel.DISK_ONLY_3

StorageLevel.MEMORY_AND_DISK

StorageLevel.MEMORY_AND_DISK_2

StorageLevel.MEMORY_AND_DISK_DESER

StorageLevel.MEMORY_ONLY

StorageLevel.MEMORY_ONLY_2

StorageLevel.OFF_HEAP

TaskContext.attemptNumber ()

这个任务已经尝试了多少次。

TaskContext.cpus ()

分配给任务的CPU。

TaskContext.get ()

返回当前活动的 TaskContext

TaskContext.getLocalProperty (键)

获取驱动程序中上游的本地属性设置,如果缺失则返回None。

TaskContext.partitionId ()

由此任务计算的RDD分区的ID。

TaskContext.resources ()

分配给任务的资源。

TaskContext.stageId ()

此任务所属阶段的ID。

TaskContext.taskAttemptId ()

一个在此任务尝试中独特的ID(在同一个 SparkContext 中,不会有两个任务尝试共享相同的尝试ID)。

RDDBarrier.mapPartitions (f[, …])

通过对封装的 RDD 的每个分区应用一个函数返回新的 RDD,其中任务在一个障碍阶段一起启动。

RDDBarrier.mapPartitionsWithIndex (f[, …])

通过对包装的 RDD 的每个分区应用一个函数,同时跟踪原始分区的索引,返回一个新的 RDD。

BarrierTaskContext.allGather ([消息])

此函数会阻塞,直到同一阶段的所有任务都到达此例程。

BarrierTaskContext.attemptNumber ()

这个任务已经尝试了多少次。

BarrierTaskContext.barrier ()

设置一个全局屏障,并等待此阶段中的所有任务达到该屏障。

BarrierTaskContext.cpus ()

分配给任务的CPU。

BarrierTaskContext.get ()

返回当前活动的 BarrierTaskContext

BarrierTaskContext.getLocalProperty (键)

获取驱动程序中上游的本地属性设置,如果缺失则返回None。

BarrierTaskContext.getTaskInfos ()

返回 BarrierTaskInfo 针对此屏障阶段的所有任务,按分区 ID 排序。

BarrierTaskContext.partitionId ()

由此任务计算的RDD分区的ID。

BarrierTaskContext.resources ()

分配给任务的资源。

BarrierTaskContext.stageId ()

此任务所属阶段的ID。

BarrierTaskContext.taskAttemptId ()

一个在此任务尝试中独特的ID(在同一个 SparkContext 中,不会有两个任务尝试共享相同的尝试ID)。

util.VersionUtils.majorMinorVersion (sparkVersion)

给定一个 Spark 版本字符串,返回(主版本号,次版本号)。