从Hive或Webhdfs运行Impala刷新

时间:2018-08-29 19:16:37

标签: curl hive impala webhdfs

我正在处理Imapala上的一些表,并使用jdbc HIVE驱动程序进行查询。我需要在提取数据之前对某些表运行刷新(或将Impala配置为自动运行)。当我尝试通过jdbc驱动程序运行refresh tablename时,我无法(因为在HIVE中此命令不存在-我认为)。我试图编写一个简单的impala-shell脚本(refresh tablename)并使用像curl -i -L "http://<server>:50070/webhdfs/v1/<path to sh file>?op=OPEN"这样的curl运行,它也不起作用。有人能帮我吗? 谢谢!

2 个答案:

答案 0 :(得分:0)

请尝试

INVALIDATE METADATA databsename.tablename

答案 1 :(得分:0)

@Andisu:如果要通过 Impala-Shell 进行刷新,请运行以下命令:

impala-shell -d db_NAME -q "REFRESH tablename"; 

-q:处理双引号中的语句后,impala-shell解释器立即退出。 如果您执行 REFRESH ,这意味着new data files已由您添加到表的HDFS位置,因此这些文件的阻止位置的元数据必须加载到 Impala Daemon协调器中