Spark 流式处理 ¶

 核心类 ¶


StreamingContext (sparkContext[, ...])


Spark 流式处理功能的主要入口点。


DStream (JDStrew、SSC jrdd_deserializer)


离散流 (DStream) 是 Spark Streaming 中的基本抽象,是表示连续数据流的 RDD(相同类型)的连续序列(有关 RDD 的更多详细信息,请参阅 RDD Spark 核心文档)。

 流管理 ¶

  StreamingContext.addStreamingListener (...


添加 [[org.apache.spark.streaming.scheduler.StreamingListener]] 对象,用于接收与流式处理相关的系统事件。

  StreamingContext.awaitTermination ([超时])


等待执行停止。

  StreamingContext.awaitTerminationOrTimeout (超时)


等待执行停止。

  StreamingContext.checkpoint (目录)


将上下文设置为定期检查主容错的 DStream 操作。

  StreamingContext.getActive ()


返回当前处于活动状态的 StreamingContext(即,如果存在已启动但未停止的上下文)或 None。

  StreamingContext.getActiveOrCreate (...


要么返回活动的 StreamingContext(即


StreamingContext.getOrCreate (checkpointPath,...


从检查点数据重新创建 StreamingContext,或创建新的 StreamingContext。

  StreamingContext.remember (持续时间)


在此上下文中设置每个 DStreams,以记住它在上一个给定持续时间内生成的 RDD。

StreamingContext.sparkContext


返回与此 StreamingContext 关联的 SparkContext。

  StreamingContext.start ()


开始执行流。


StreamingContext.stop ([stopSparkContext, ...])


停止流的执行,并可选择确保所有接收到的数据都已处理完毕。

  StreamingContext.transform (dstreams,...)


创建一个新的 DStream,其中每个 RDD 都是通过在 DStreams 的 RDD 上应用函数来生成的。

  StreamingContext.union (*dstreams)


从相同类型和相同幻灯片持续时间的多个 DStream 创建统一的 DStream。

 输入和输出 ¶

  StreamingContext.binaryRecordsStream (...


创建一个输入流,用于监视与 Hadoop 兼容的文件系统中的新文件,并将它们读取为具有固定长度记录的平面二进制文件。

  StreamingContext.queueStream (rdds[, ...])


从 RDD 或列表队列创建输入流。


StreamingContext.socketTextStream (主机名、端口)


从 TCP 源 hostname:port 创建输入。

  StreamingContext.textFileStream (目录)


创建一个输入流,用于监视与 Hadoop 兼容的文件系统中的新文件,并将它们作为文本文件读取。

  DStream.pprint ([数字])


打印此 DStream 中生成的每个 RDD 的前 num 个元素。


DStream.saveAsTextFiles (前缀[,后缀])


使用元素的字符串表示形式将此 DStream 中的每个 RDD 保存为文本文件。


转换和操作 ¶

  DStream.cache ()


将此 DStream 的 RDD 保留为默认存储级别 (MEMORY_ONLY)。

  DStream.checkpoint (间隔)


启用此 DStream 的 RDD 的定期检查点


DStream.cogroup (其他[, numPartitions])


通过在此 DStream 和其他 DStream 的 RDD 之间应用“cogroup”来返回新的 DStream。


DStream.combineByKey (createCombiner,...[, …])


通过将 combineByKey 应用于每个 RDD 来返回新的 DStream。

  DStream.context ()


返回与此 DStream 关联的 StreamingContext

  DStream.count ()


返回一个新的 DStream,其中每个 RDD 都有一个元素,通过计算此 DStream 的每个 RDD 生成。

  DStream.countByValue ()


返回一个新的 DStream,其中每个 RDD 都包含此 DStream 的每个 RDD 中每个非重复值的计数。

  DStream.countByValueAndWindow (...[, …])


返回一个新的 DStream,其中每个 RDD 都包含此 DStream 上滑动窗口中 RDD 中不同元素的计数。


DStream.countByWindow (windowDuration, ...)


返回一个新的 DStream,其中每个 RDD 都有一个元素,通过计算此 DStream 窗口中的元素数来生成。

  DStream.filter (六)


返回仅包含满足谓词的元素的新 DStream。


DStream.flatMap (f[, preserves分区])


通过将函数应用于此 DStream 的所有元素,然后平展结果,返回新的 DStream

  DStream.flatMapValues (六)


通过将 flatmap 函数应用于此 DStream 中每个键值对的值而不更改键,返回新的 DStream。

  DStream.foreachRDD (功能)


将函数应用于此 DStream 中的每个 RDD。


DStream.fullOuterJoin (其他[, numPartitions])


通过在此 DStream 和其他 DStream 的 RDD 之间应用“完全外部连接”来返回新的 DStream。

  DStream.glom ()


返回一个新的 DStream,其中通过将 glom() 应用于此 DStream 的 RDD 来生成 RDD。


DStream.groupByKey ([numPartitions])


通过在每个 RDD 上应用 groupByKey,返回新的 DStream。


DStream.groupByKeyAndWindow (windowDuration, ...)


通过在滑动窗口上应用 groupByKey 来返回新的 DStream。


DStream.join (其他[, numPartitions])


通过在此 DStream 的 RDD 和其他 DStream 之间应用“联接”来返回新的 DStream。


DStream.leftOuterJoin (其他[, numPartitions])


通过在此 DStream 的 RDD 和其他 DStream 之间应用“左外联接”来返回新的 DStream。


DStream.map (f[, preserves分区])


通过对 DStream 的每个元素应用函数来返回新的 DStream。


DStream.mapPartitions (f[, preserves分区])


返回一个新的 DStream,其中每个 RDD 都是通过将 mapPartitions() 应用于此 DStream 的每个 RDD 来生成的。

  DStream.mapPartitionsWithIndex (f[, ...])


返回一个新的 DStream,其中每个 RDD 都是通过将 mapPartitionsWithIndex() 应用于此 DStream 的每个 RDD 来生成的。

  DStream.mapValues (六)


通过将映射函数应用于此 DStream 中每个键值对的值而不更改键,返回新的 DStream。


DStream.partitionBy (numPartitions[, ...])


返回 DStream 的副本,其中使用指定的分区程序对每个 RDD 进行分区。

  DStream.persist (存储级别)


将此 DStream 的 RDD 保留为给定的存储级别

  DStream.reduce (功能)


返回一个新的 DStream,其中每个 RDD 都有一个通过减少此 DStream 的每个 RDD 生成的单个元素。


DStream.reduceByKey (func[, numPartitions])


通过将 reduceByKey 应用于每个 RDD 来返回新的 DStream。


DStream.reduceByKeyAndWindow (func,invFunc,...


通过在滑动窗口上应用增量 reduceByKey 来返回新的 DStream。


DStream.reduceByWindow (减少功能,...


返回一个新的 DStream,其中每个 RDD 都有一个元素,通过减少此 DStream 上的滑动窗口中的所有元素生成。


DStream.repartition (numPartitions)


返回一个并行级别增加或减少的新 DStream。


DStream.rightOuterJoin (其他[, numPartitions])


通过在此 DStream 和其他 DStream 的 RDD 之间应用“右外联接”来返回新的 DStream。

  DStream.slice (开始,结束)


返回“开始”到“结束”之间的所有 RDD(均包括在内)

  DStream.transform (功能)


返回一个新的 DStream,其中每个 RDD 都是通过在此 DStream 的每个 RDD 上应用函数来生成的。


DStream.transformWith (函数, 其他[, ...])


返回一个新的 DStream,其中每个 RDD 都是通过在此 DStream 和“其他”DStream 的每个 RDD 上应用函数来生成的。

  DStream.union (其他)


通过将另一个 DStream 的数据与此 DStream 统一来返回新的 DStream。


DStream.updateStateByKey (updateFunc[, ...])


返回一个新的“状态”DStream,其中通过对键的先前状态和键的新值应用给定函数来更新每个键的状态。


DStream.window (windowDuration[, slideDuration])


返回一个新的 DStream,其中每个 RDD 都包含在此 DStream 上滑动的时间窗口中看到的所有元素。

 Kinesis (英语:Kinesis) ¶

  KinesisUtils.createStream (SSC,...[, …])


创建一个输入流,用于从 Kinesis 流中提取消息。

InitialPositionInStream.LATEST

InitialPositionInStream.TRIM_HORIZON