美文网首页
spark streaming源码分析之DStreamGraph

spark streaming源码分析之DStreamGraph

作者: cclucc | 来源:发表于2019-11-17 15:54 被阅读0次

    更多关注spark streaming源码分析之流程详解

    DStreamGraph的作用是什么呢?
    1. DStreamGraph通过持有所有的inputstream和outputstream,划分提交job
    2. 清理,spark streaming中一直接收数据,会不会把内存撑爆?checkpoint的data什么时候清理?什么时候更新?
    //1. add input/output DS
    def addInputStream(inputStream: InputDStream[_]) {
        this.synchronized {
          inputStream.setGraph(this)
          inputStreams += inputStream
        }
      }
    //output 同上
    
    //2. 调用持有的output ds实例提交作业
    def generateJobs(time: Time): Seq[Job] = {
    .....
        val jobs = this.synchronized {
          outputStreams.flatMap { outputStream =>
            val jobOption = outputStream.generateJob(time)
            jobOption.foreach(_.setCallSite(outputStream.creationSite))
            jobOption
          }
        }
        jobs
      }
    
    //3.清理,spark streaming中一直接收数据,会不会把内存撑爆?checkpoint的data什么时候清理?什么时候更新?等等见博客:
    
    def clearMetadata(time: Time)
    
    def updateCheckpointData(time: Time)
    
    def clearCheckpointData(time: Time)
    
    def restoreCheckpointData() 
    
    

    相关文章

      网友评论

          本文标题:spark streaming源码分析之DStreamGraph

          本文链接:https://www.haomeiwen.com/subject/oabpictx.html