与德鲁伊一起摄取两位数的年份?

Ingest 2-digit year with druid?

我想提取 MM/dd/yy 格式的日期(例如 02/01/03 表示 2003 年 2 月 1 日)。我不知道如何使用 joda 时间格式字符串来指定它,这似乎是德鲁伊所需要的。

在 java 代码中,我可以通过为 joda DateTimeFormatter 指定一个枢轴年份来做到这一点,但似乎没有办法只用一个格式字符串(这是在德鲁伊摄取规格)。

您可以在 timestampSpec 中指定如何解析您的时间戳。

例如:

"timestampSpec": {
  "column": "timestamp",
  "format": "MM/dd/yy"
}

另请参阅此页面:https://druid.apache.org/docs/latest/ingestion/ingestion-spec.html#timestampspec

我进行了大量的反复试验并发现了以下内容,但我仍然无法在任何地方找到记录。

  • 两位数的年份'pivot'是40,40以上的是1900年代,40以下的是2000年代。这意味着:

    • 3/4/97 是 1997 年 3 月 4 日
    • 3/4/04 是 2004 年 3 月 4 日
    • 3/4/40 是 2040 年 3 月 4 日
    • 3/4/41 是 1941 年 3 月 4 日
  • 不要指定一位数年份!这不会像您预期的那样工作;例如:

    • 3/4/3是公元3年的3月4日。如果您指的是 2003,则必须指定“03”。
  • 不要指定 one-y 格式字符串!例如,格式字符串“M/d/y”应用于“3/4/03”时将被解释为公元 3 年的 3 月 4 日。