2014-10-20 48 views

回答

0

您可以使用org.apache.hadoop.hive.metastore API或HCat API。這是一個使用hive.metastore的簡單例子。除非你想加入Mapper/Reducer中的一些Hive分區,否則你必須在你的Pipeline開始之前或之前打電話。

HiveMetaStoreClient hmsc = new HiveMetaStoreClient(hiveConf) 
HiveMetaStoreClient hiveClient = getHiveMetastoreConnection(); 
List<Partition> partitions = hiveClient.listPartittions("default", "my_hive_table", 1000) 
for(Partition partition: partitions) { 
    System.out.println("HDFS data location of the partition: " + partition.getSd().getLocation()) 
} 

你需要的唯一的另一件事是出口蜂巢的conf目錄:

export HIVE_CONF_DIR=/home/mmichalski/hive/conf