我有一个json数据文件,其中包含一个属性[creationDate],它是“长”数字类型的unix epoc。Apache Spark DataFrame模式如下所示:
root |-- creationDate: long (nullable = true) |-- id: long (nullable = true) |-- postTypeId: long (nullable = true) |-- tags: array (nullable = true) | |-- element: string (containsNull = true) |-- title: string (nullable = true) |-- viewCount: long (nullable = true)
我想做一些groupBy“creationdata_year”,这些groupBy需要从“creationdate”获得。
使用Java在DataFrame中进行这种转换的最简单方法是什么?
在检查了spark dataframe api和sql函数之后,我得到了下面的代码片段:
DateFrame df = sqlContext.read().json("MY_JSON_DATA_FILE"); DataFrame df_DateConverted = df.withColumn("creationDt", from_unixtime(stackoverflow_Tags.col("creationDate").divide(1000)));
“CreationDate”列被“1000”除以的原因是时间单位不同。orgin“creationdate”是以“毫秒”为单位的unix epoch,而spark sql“from_unixtime”则设计用于处理以“秒”为单位的unix epoch。
问题内容: 我在服务器中生成的某些日志文件中有毫秒,我也知道从中生成日志文件的语言环境,我的问题是将毫秒转换为指定格式的日期。该日志的处理在不同时区的服务器上进行。转换为“ SimpleDateFormat”时,程序将使用机器的日期,因为这种格式化的日期并不代表服务器的正确时间。有什么办法可以优雅地处理吗? 输出: 问题答案:
问题内容: 我想使用Java将以下日期转换为AEST格式。 2018-01-08T02:10:24.000 + 0000w 下面是我用来转换的代码。 模式有问题吗?请提出建议。 问题答案: 解析日期字符串时,必须使用格式化程序。另外,您还需要告诉它更改区域或区域偏移,以使其进入AEST / AEDT。 这可能起作用: 偏移量将显示为“ +1000”或“ +1100”,具体取决于一年中的时间。
问题内容: 我需要转换为搜索的内容,但找不到任何内容。那你可以帮我解决这个问题吗? 编辑: 我在GWT屏幕上执行此转换过程。我在屏幕上,使用它的方法可以给我带来价值。因此,我应该将此值放入具有Date类型的对象的属性中。 希望我的编辑会更加清晰。 编辑2: 这行是我的问题的解决方案: 问题答案: 日期转换的最佳方法是使用以毫秒为单位的时间(UTC)。JS Date对象和java.util.Date
问题内容: 在Java中,如何获取作为a返回的值? 问题答案:
问题内容: 我在mySQL 5.1中有一个数据类型的日期列。如何将其转换为DATE? 这是我到目前为止所拥有的- 得到这个 错误-#1064-您的SQL语法有错误;查看与您的MySQL服务器版本相对应的手册以获取正确的语法,以在’FROM 7 FOR 4附近使用) 请帮忙。 问题答案: 您可以使用MySQL的功能 尽管我怀疑您使用Unix时间戳会更轻松
在我的Spring Boot项目中,我有两个类(实体和模型) 在模型中有一个列表 :