【发布时间】:2017-04-01 14:54:03
【问题描述】:
我正在将 parquet 文件从 S3 加载到我的 Hive 数据仓库,该数据仓库在 EMR 机器内运行:
Release: emr-5.1.0
Hadoop distribution: Amazon 2.7.3
Applications: Hive 2.1.0, Spark 2.0.1, Presto 0.152.3)
我可以使用以下命令轻松查询 hive 中的结果:
select * from table_a
但是,当我使用 presto 尝试相同的查询时,我收到以下错误:
ERROR remote-task-callback-57 com.facebook.presto.execution.StageStateMachine Stage 20161117_211631_00018_29xwg.1 failed
java.lang.NullPointerException
at com.facebook.presto.spi.RecordPageSource.getNextPage(RecordPageSource.java:124)
at com.facebook.presto.operator.TableScanOperator.getOutput(TableScanOperator.java:246)
at com.facebook.presto.operator.Driver.processInternal(Driver.java:378)
at com.facebook.presto.operator.Driver.processFor(Driver.java:301)
at com.facebook.presto.execution.SqlTaskExecution$DriverSplitRunner.processFor(SqlTaskExecution.java:622)
at com.facebook.presto.execution.TaskExecutor$PrioritizedSplitRunner.process(TaskExecutor.java:529)
at com.facebook.presto.execution.TaskExecutor$Runner.run(TaskExecutor.java:665)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
我知道我的 presto 能够查询 hive 表,因为我可以做到:
select count(1) from table_a
和
select column_name from table_a
我的第一个选择有什么问题?
【问题讨论】:
-
看起来像文件阅读器中的错误。您使用的是什么文件格式?
-
我正在使用
PARQUET文件,但问题仍然存在于ORC文件中
标签: hadoop hive parquet presto