首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
zcguo
V2EX  ›  程序员

有没有懂 flink 实时计算的老哥,请教一个问题

  •  
  •   zcguo · 271 天前 · 1353 次点击
    这是一个创建于 271 天前的主题,其中的信息可能已经有所发展或是发生改变。

    我想要计算实时的当日 pv,比如今天是 11 月 16 日,在 11 月 16 日的 3 点要计算一个从 0 点到 3 点时候的 pv,然后 5 点时候要计算一个从 0 点到 5 点的 pv,我看 flink 的滑动窗口和滚动窗口都不能实现这种从固定一个点开始算的需求,该怎么做的这种,谢谢老哥们了

    5 条回复    2019-11-18 16:43:31 +08:00
    outoftimeerror
        1
    outoftimeerror   271 天前
    看你这需求就是求一个累加 和窗口没啥关系
    ebingtel
        2
    ebingtel   271 天前
    是的不支持……可以变通下:第一条流统计每个小时的、输出;再分别起 3h、5h 的两个流……
    ebingtel
        3
    ebingtel   271 天前
    @ebingtel 1 天就 24 个点,感觉后面两个流不用起了……数据库查一下就行了
    picone
        4
    picone   271 天前
    先计算每小时的,存数据库就好了,读取的时候再指定时间。
    5 点时候没必要重复计算 0-3 时的 pv
    xiaoidea
        5
    xiaoidea   271 天前
    1. 窗口也是基于 state 的,你可以直接在 function 中用 state 作为计数器,计数器的累加根据你的需求可以设计为日期为 key,pv 为 value
    2. 使用外部存储,比如 redis,不好的地方是失败恢复时可能导致数据不准
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   2465 人在线   最高记录 5168   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 139ms · UTC 10:57 · PVG 18:57 · LAX 03:57 · JFK 06:57
    ♥ Do have faith in what you're doing.