突然失败:com.facebook.presto.spi.type.VarcharType

Presto failed: com.facebook.presto.spi.type.VarcharType

我创建了一个包含三列的 table - idnameposition、 然后我使用 spark.

使用 orc 格式将数据存储到 s3

当我查询 select * from person 它 returns 一切。

但是当我从 presto 查询时,我得到这个错误:

Query 20180919_151814_00019_33f5d failed: com.facebook.presto.spi.type.VarcharType

我找到了问题的答案,当我将数据存储在 s3 中时,文件中的数据多了一个未在配置单元 table 元存储中定义的列。

所以当Presto试图查询数据时,发现有varchar而不是integer。

如果一条记录的类型与 Metastore 中定义的类型不同,也可能会发生这种情况。

我不得不删除我的数据并在没有多余的不需要的列的情况下再次导入它