Hadoop 黑斑羚罐头';无法访问所有配置单元表

Hadoop 黑斑羚罐头';无法访问所有配置单元表,hadoop,hive,cloudera,hue,impala,Hadoop,Hive,Cloudera,Hue,Impala,我尝试通过hive查询hbase数据(我正在使用cloudera)。我做了一个指向hbase的五个hive外部表,但问题是Cloudera的黑斑羚无法访问所有这些表。所有配置单元外部表都显示在metastore管理器中,但当我在Impala中执行简单的“显示表”时,我发现缺少3个表。 这会是一个特权问题吗?我在metastore manager中看到,丢失的3个表都是每个人都可以读取的,因此…在Impala中运行查询“invalidate metadata”,您的表就会显示出来。下面是?联机帮助

我尝试通过hive查询hbase数据(我正在使用cloudera)。我做了一个指向hbase的五个hive外部表,但问题是Cloudera的黑斑羚无法访问所有这些表。所有配置单元外部表都显示在metastore管理器中,但当我在Impala中执行简单的“显示表”时,我发现缺少3个表。
这会是一个特权问题吗?我在metastore manager中看到,丢失的3个表都是每个人都可以读取的,因此…

在Impala中运行查询“invalidate metadata”,您的表就会显示出来。

下面是?联机帮助说明: 少了几张桌子?要更新Impala看到的表/元数据列表,请执行以下查询之一:

"invalidate metadata" invalidates the entire catalog metadata. All table metadata will be reloaded on the next access.
"invalidate metadata <table>" invalidates the metadata, load on the next access
"refresh <table>" refreshes the metadata immediately. It is a faster, incremental refresh.
“使元数据无效”使整个目录元数据无效。所有表元数据将在下次访问时重新加载。
“使元数据无效”使元数据无效,下次访问时加载
“刷新”立即刷新元数据。这是一种更快的增量刷新。

尽管impala中的
使元数据无效
命令有效,但在最新版本中,现在可以仅使一个表的元数据无效,其影响较小:

INVALIDATE METADATA mynewtable
或者,如果您使用色调,还有一个更便宜的选项可用。如果您添加了多个新表,这可能会很方便:


你又是对的。是否有一种方法可以自动执行配置中的“无效元数据”?无论如何,非常感谢您给了我我等待的答案:)如果您通过impala添加表,您不需要使元数据无效。嘿,我们如何在Hive或shell脚本中实现这一点,以便在Oozie/Hue中实现自动化。谢谢你,你对我很有帮助,所以我想补充一下,作为对其他人的评论。是的,它解决了我的问题。虽然被接受的答案仍然有效,但我添加了一个基于最新版本的。