参考《开源大数据分析引擎Impala实战》 贾传青 著 清华大学出版社
211页:
invalidate metadata: 更新元数据信息。在创建、删除、修改了数据库、表分区后使用本命令。
refresh : 刷新HDFS数据文件位置相关的元数据信息。向表中加载了新的数据文件之后,需要使用该命令。
2.6 更新元数据 45页
Impala可以对FCFile、SequenceFile、Parquet、Avro等多种文件格式进行查询。而对于某些类型的Impala支持的不太友好的文件格式,impala只能对其进行查询操作,却无法向其中写入数据。
如果我们又不得不向其中写入数据,就必须通过Hive来进行。
对于通过Hive创建,删除,修改或者其他类型的操作,Impala都无法自动识别到Hive中元数据的变更情况。
如果想让Impala识别到这些变化,在连接到impala-shell后首先要做的操作就是 INVALIDATA METADATA , 该语句将会使所有的Impala 元数据失效并重新从元数据同步元数据信息。
对于通过Hive加载、插入、改变的数据操作,或者通过hdfs命令对数据文件进行的变更操作,impala都无法自动识别数据的变更情况。
如果想让Impala识别到这些变化,在连接到impala-shell后,首先要做的操作就是 REFRESH table_name ,该语句会让Impala识别到数据的变更情况。
(通常情况下,如果在一个impalad进程节点上执行了 create databas