hive 元数据升级

hadoop集群升级到HA模式,core-site.xml 的配置:fs.defaultFS 会变成 hdfs://clusterid 的形式,与之前的 hdfs://{namenode hostname} 的形式有很大的区别。

而对于hive旧的matadata,表的存储路径还是hdfs://{namenode hostname} 会造成,从hdfs上load到表的时候出现类似问题:


 Move from: hdfs://qunarcluster/export/wirelessdev/log/etl/touchweb/2013/12/03/15/l-tc3.wap.cn1/part-00000.gz to:
 hdfs://l-hdpm1.data.cn6.qunar.com/user/hive/warehouse/wirelessdata.db/hive_etl_touch/dt=2013-12-03/hour=15/logtype=l-tc3.wap.cn1
 is not valid. Please check that values for params "default.fs.name" and "hive.metastore.warehouse.dir" do not conflict

这个问题解决方法: http://stackoverflow.com/questions/19431074/hive-not-fully-honoring-fs-default-name-fs-defaultfs-value-in-core-site-xml



但是在metatool -updateLocation 的时候很容易爆内存,一定要加大内存

export HADOOP_CLIENT_OPTS=-Xmx16384m

一定要弄的很大哦,要不容易爆。而且一定要有耐心,相信马上就更新完成。


你可能感兴趣的:(hive 元数据升级)