【发布时间】:2017-03-19 16:51:02
【问题描述】:
从JVM SimpleDateFormat domain 转换时间戳时,我目前遇到了 Azure SQL DW 的限制 给SQL DW's DateFormat domain.
在我当前的场景中,我们使用 Spark 执行数据清理,当数据作为 CSV 文件写出时,其写出为以下格式的时间戳:
- "yyyy-MM-dd'T'HH:mm:ss.SSSXXX"
- 2001-07-04T12:08:56.235-07:00
查看 DATE_FORMAT 选项下的 DateTimeOffset,不支持上述输出中的粗体 T。
有没有办法直接将传入的字符串解释为 DateTime 类型?
我目前的策略是将其加载为 VARCHAR 并稍后进行清理。
【问题讨论】:
-
请提供你有什么/到目前为止你尝试了什么。
-
如果我可以问,这与 apache-spark 有什么关系?
-
@eliasah 与 Spark 格式化输出时间戳的方式有关,它在 ISO8601 combined Date+Time format 中发出。关于 Spark,我想问一下是否有办法让 Spark 将时间戳类型序列化为 SQL DW 可以在外部表中读取的格式。
-
我想我问错了这个问题,这个问题最精炼的版本是如何将 ISO8601 组合日期时间格式的时间戳字符串加载到 Azure SQL DW 中。
标签: java scala apache-spark datetime-format azure-sqldw