首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >记录时间戳差计算

记录时间戳差计算
EN

Stack Overflow用户
提问于 2017-08-24 05:20:58
回答 1查看 71关注 0票数 0

我正在研究一种逻辑,通过比较以前的时间和当前的时间,并将值存储在数据库中,来查找流层中两个时间戳之间的连续时间差。

例如:

  1. 2017-08-01 11:00:00
  2. 2017-08-01 11:05:00
  3. 2017-08-01 11:07:00

因此,根据上面的时间戳,我的连续差将分别是5分钟(11:00- 11:05:00)和2分钟,当我加起来时,我将得到7分钟(5+2),这将是实际时差。现在真正的挑战是当我收到延迟的时间戳。

例如:

  1. 2017-08-01 11:00:00
  2. 2017-08-01 11:05:00
  3. 2017-08-01 11:07:00
  4. 2017-08-01 11:02:00

在这里,当我计算差分时,分别是5分钟,2分钟,5分钟,现在我得到的差之和是12分钟(5+2+5),它将大于实际时差(7分钟),.which是错误的。

请帮助我找到一个解决办法,通过记录时间差计算来处理这个延迟时间戳。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-08-24 08:29:46

你正在经历的是‘事件时间’和‘处理时间’之间的区别。在最好的情况下,处理时间将与事件时间几乎相同,但有时输入记录会延迟,因此差异将更大。

处理流数据时,可以定义(显式或隐式)记录窗口。如果您单独处理记录,则此窗口的大小为1。在您的情况下,您的窗口大小为2。但您也可以有一个基于时间的窗口,即您可以查看在过去10分钟内收到的所有记录。

如果要按顺序处理延迟记录,则需要在延迟记录到达之前等待,然后在窗口内对记录进行排序。问题就变成了,你要等多久?延迟的记录可能会在两天后出现!等待多长时间是一个主观问题,取决于您的应用程序及其要求。

请注意,如果您的窗口是基于时间的,您将需要处理的情况下,没有以前的记录是可用的。

我强烈推荐本文:https://www.oreilly.com/ideas/the-world-beyond-batch-streaming-101来掌握流术语和窗口。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45853487

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档