从 JSON 文件读取时,Spark v2.3.1 是否依赖于本地时区?
我的src/test/resources/data/tmp.json
:
[
{
"timestamp": "1970-01-01 00:00:00.000"
}
]
和火花代码:
SparkSession.builder()
.appName("test")
.master("local")
.config("spark.sql.session.timeZone", "UTC")
.getOrCreate()
.read()
.option("multiLine", true).option("mode", "PERMISSIVE")
.schema(new StructType()
.add(new StructField("timestamp", DataTypes.TimestampType, true, Metadata.empty())))
.json("src/test/resources/data/tmp.json")
.show();
结果:
+-------------------+
| timestamp|
+-------------------+
|1969-12-31 22:00:00|
+-------------------+
如何使火花返回1970-01-01 00:00:00.000
?
PS这个问题不是Spark Structured Streaming automatically converts timestamp to local time的副本,因为提供的解决方案对我不起作用并且已经包含(见.config("spark.sql.session.timeZone", "UTC")
)到我的问题中。