01-19-2017 11:32 PM
I have a partitioned table in hive and I know that if I want to use this table in impala, i have to call "invalidate metadata tablename" command to retrieve tables metadata to catalog servers.
01-19-2017 11:38 PM - edited 01-19-2017 11:50 PM
Catalog Server doesnt persist metadata in disk. It retrieves the metadata from HiveMetaStore and stores it in memory. So everytime you restart catalog service the metadata that catalog holds gets cleaned
Suppose if you want to get the changes made on a specific table in hive, you can do that using below command
INVALIDATE METADATA [[db_name.]table_name]
Invalidate metadata db.table_name will reset the metadata related to the table in impala
01-31-2017 03:56 PM
@venkatsambath already answered to your question.
One thing I'd like to add is that please run simple `SELECT` query for the table you want to reload metadata after running `INAVLIDATE META`. By doing that, you can trigger loading metadata in Impala.
02-09-2017 01:04 AM
When we restart impala we do not want to see anything from "show tables" in impala. But we see all the tables. How can we clear all meta info in impala without deleting them in hive?
02-09-2017 02:51 AM
02-09-2017 03:21 AM
Assume we added impala service and started impala, in this state when we execute "show tables" from impala shell we see no tables. As soon as we execute "invalidate metadata" and then "show tables" we see all tables in hive metastore. I know impala does not store any metadata info on disk, so I assume when we restart impala we should return to empty "show tables" output, but this is not the case.
What I understand from your post is, this is not possible right?
02-09-2017 11:01 AM