无法从Hive读取pyspark中的timstamp值(spark 1.6.1)

时间:2016-12-16 14:51:45

标签: apache-spark hive pyspark

我正在尝试阅读具有数据类型为timestamp, length=9的日期列的Hive表。 我的代码类似于以下内容 -

df = hc.sql("select * from schema.table")

它可以读取所有其他列(datatype = varchar)。

在日期栏

中读取null或提供none

我打印了df.dtypes,发现数据框架构已正确推断,且日期列有timestamp数据类型

令人惊讶的是,相同的代码在notebook中有效,只在spark-shell环境中失败。

有人可以指导我出现此错误的错误或限制,我该如何纠正?

1 个答案:

答案 0 :(得分:0)

我在spark中看到过这个问题,当数据类型为timestamp时,它将显示为null,这是一个错误。有一种方法可以绕过它,你必须使用类似disposeMe.unsubscribe(); 之类的东西将日期列读取为字符串,然后将其转换为时间戳。如果你能告诉我源类型和你用来拉取像sqoop这样的数据的工具,或者你在某种形式的文件中获取数据?我可以帮助你更好。