• Window Operations详解



    window(windowLength, slideInterval):返回窗口长度为windowLength,每隔slideInterval滑动一次的window DStream

    countByWindow(windowLength, slideInterval):返回窗口中元素的个数

    reduceByWindow(func, windowLength, slideInterval):对window中的元素做reduce操作

    // x, y 是window中的元素
    val ds1 = wordCounts.reduceByWindow((x, y) => {
        println(x)
        println(y)
        x
    }, Seconds(30), Seconds(20)) 

    reduceByKeyAndWindow(func, windowLength, slideInterval, [numTasks]) 针对window内的数据做reduceByKey

    // x y 是相同key的value 
    wordCounts.reduceByKeyAndWindow((x: Int, y:Int) => x + y, Seconds(30), Seconds(20)) 

    reduceByKeyAndWindow(func, invFunc, windowLength, slideInterval, [numTasks]): invFunc:假设invFunc的参数为x和y,那么x是上个window经过func操作后的结果,y为此次window与上次window在时间上交叉的元素经过func操作后结果

    sc.setCheckpointDir("D://checkpoints/")
    // m是上个window key相同的元素的reduceByKeyAndWindow第一个参数操作后的结果,n为上个window与当前window在时间上不重复的key相同的元素的reduceByKeyAndWindow第一个参数操作后的结果
    val ds1 = wordCounts.reduceByKeyAndWindow((x, y) => x + y, (m, n) => { m - n}, Seconds(10), Seconds(10))
    

      

    // 这个方法的作用和<strong>reduceByKeyAndWindow(func, windowLength, slideInterval, [numTasks])相同
    wordCounts.reduceByKeyAndWindow((x, y) => x + y, (x, y) => x - y, Seconds(10), Seconds(10))
    

      

    countByValueAndWindow(windowLength, slideInterval, [numTasks]):window中key出现的次数

  • 相关阅读:
    298. Binary Tree Longest Consecutive Sequence
    117. Populating Next Right Pointers in Each Node II
    116. Populating Next Right Pointers in Each Node
    163. Missing Ranges
    336. Palindrome Pairs
    727. Minimum Window Subsequence
    211. Add and Search Word
    年底购物狂欢,移动支付安全不容忽视
    成为程序员前需要做的10件事
    全球首推iOS应用防破解技术!
  • 原文地址:https://www.cnblogs.com/heml/p/6781740.html
Copyright © 2020-2023  润新知