TAI64时间格式是什么?

Bha*_*ain 7 datetime time-format datetime-format

在浏览Logstash日期插件文档时,位于

https://www.elastic.co/guide/zh-CN/logstash/current/plugins-filters-date.html#plugins-filters-date-match

我遇到了TAI64N日期格式。

有人可以解释一下这种时间格式吗?

Suf*_*ori 6

TAI代表当前的国际实时标准Temps Atomique International。1 TAI秒定义为9,192,631,770与铯原子基态的两个超精细能级之间的跃迁相对应的辐射持续时间。TAI还指定了参考框架。

以明确的精度“走向统一时间戳记”

TAI64定义了一种64位整数格式,其中每个值标识一个特定的SI秒。SI秒的持续时间通过铯原子状态转换的已知精确计数来定义。时间的结构是从1970年1月1日(公历)开始的秒序列,当时原子时间(TAI)成为实时的国际标准。该标准定义了2 62秒1970年之前,另有2 62从这个时代开始,从而覆盖约300十亿年的时间,足以满足大多数应用。

扩展名TAI64N和TAI64NA通过在特定的秒内分别引用特定的纳秒和阿秒(10-18s),可以实现更好的时间分辨率。

尽管TAI64非常简单和一致,但不仅必须在高分辨率方面进行扩展,而且还必须以其他方式进行扩展。

  • 它仅与时间点有关,但是完整的时间模型也需要解决时间点和时间间隔之间的相互关系。大多数模型将间隔视为连续的时间点集。这就产生了一个明显的变换问题-假设一个密集的时域-假定持续时间为0的任何时间点都不能产生持续时间大于0的间隔,并且即使最短的间隔也是一个无穷大的集合时间点。
  • TAI64没有解决关于时间的不确定性。
  • 它强调单调增加时间测量的连续性。然而,人类对时间的感知是由不太规则的天文现象所塑造的。

正是由于多种原因,TAI64格式更好,

  • 国际原子时间
  • 严格单调(无leap秒)
  • 从纪元开始的64位uint#秒
  • 32位uint#nano-seconds(TAI64N)
  • 32位uint#atto-seconds(TAI64NA)

您可以继续阅读Bernstein DJ2002。“ TAI64,TAI64N和TAI64NA

TAI64,TAI64N和TAI64NA

TAI和实时

TAI64标签和外部TAI64格式。TAI64标签是0到2 ^ 64之间的整数,表示特定的实时时间。整数s是指TAI的第二个开始2^62 - s时间,即从1970年TAI开始之前的秒数开始,如果s介于0和2 ^ 62之间;或TAI s - 2^62秒,即从1970 TAI开始后的秒数开始,如果s介于2 ^ 62(含)和2 ^ 63(不含)之间。整数2 ^ 63和更大的整数保留给以后的扩展。根据许多宇宙学理论,2 ^ 63以下的整数足以覆盖整个宇宙的预期寿命。在这种情况下,无需扩展。TAI64标签通常以外部TAI64格式存储或通信,该格式由8个8位字节(大端顺序)组成。这表示bytes b0 b1 b2 b3 b4 b5 b6 b7代表标签b0 * 2^56 + b1 * 2^48 + b2 * 2^40 + b3 * 2^32 + b4 * 2^24 + b5 * 2^16 + b6 * 2^8 + b7

例如,bytes 3f ff ff ff ff ff ff ff hexadecimal代表以1969年TAI结尾的第二个;bytes 40 00 00 00 00 00 00 00 hexadecimal 代表开始于1970年的TAI;bytes 40 00 00 00 00 00 00 01 hexadecimal代表接下来的秒。Bytes 40 00 00 00 2a 2b 2c 2d hexadecimal代表1992-06-02 08:07:09 TAI,也称为 1992-06-02 08:06:43 UTC

资源