我有一张表格(Impala),其中使用kafka实时填充数据。 但是,与此同时,当我在impala表上运行选择查询时,出现错误消息“无法打开HDFS文件”,但有时运行成功。
有没有什么特别要注意的地方。 任何线索都会有所帮助。
答案 0 :(得分:0)
如果您在Impala之外修改表,则应在运行查询之前执行REFRESH table
。以下是Cloudera documentation的相关摘录:
REFRESH语句从以下位置重新加载表的元数据: Metastore数据库,并执行文件的增量重载和 阻止来自HDFS NameNode的元数据。 REFRESH用于避免 Impala与外部元数据源之间的不一致,即 Hive Metastore(HMS)和NameNode。
仅当您从外部加载数据时才需要REFRESH语句 由于运行REFRESH而更新了元数据, 广播给所有Impala协调员。