美文网首页
Flink#DataStream 使用

Flink#DataStream 使用

作者: 一只小星_ | 来源:发表于2019-07-09 18:24 被阅读0次

    DataStream 使用

    1.map
    DataStream → DataStream
    取出一个元素,产生一个元素。比如,使用map将数据元素乘以2.
    dataStream.map { x => x * 2 }

    2.FlatMap
    DataStream → DataStream
    取出一个元素,产生零个,一个,或者多个元素。比如,可以使用flatmap分割句子。
    dataStream.flatMap { str => str.split(" ") }

    3.Filter
    DataStream → DataStream
    每个函数都去执行一个布尔函数,并保留使得布尔函数返回为true的元素。
    过滤零值的函数:dataStream.filter { _ != 0 }

    4.KeyBy
    DataStream → KeyedStream
    将流逻辑分区为不相交的分区,每个分区包含相同key的元素。在内部,这是用哈希分区来实现的。

    dataStream.keyBy("someKey") // Key by field "someKey"
    dataStream.keyBy(0) // Key by the first element of a Tuple
    

    5.Reduce
    KeyedStream → DataStream
    滚动的聚合keyedStream.将当前元素和上一个聚合的元素进行合并,返回一个新的值。
    比如,将相同key的值进行求和。
    keyedStream.reduce { _ + _ }

    6.Fold
    KeyedStream → DataStream
    滚动聚合一个KeyedStream,需要指定一个初始值。合并当前的值和前一次合并过(floded)的值,返回一个新值。
    比如,下面的折叠函数,假如作用于一个序列(1,2,3,4,5),会返回一个序列:"start-1", "start-1-2", "start-1-2-3", ...

    https://cloud.tencent.com/developer/article/1032603

    相关文章

      网友评论

          本文标题:Flink#DataStream 使用

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