Programmatically, listPartitionsByFilter on HiveMetaStoreClient returns list of partitions for a given filter criteria (which supports only string based partitions, we need to open a jira for that). For each of these partitions, you can
ptn.getSd().getLocation() to get its location. Or you can use mysql directly (if thats okay with you, I m sure its not recommended). something like, select LOCATION from PARTITIONS ptn, SDS sd where sd.SD_ID=ptn.SD_ID and PART_NAME='part=1'... you may also want to join this with TBLS for things like TBL_NAME. You will have to consider non partitioned tables separately. All the information should be available in schema of metastore. Thanks, Aniket On Mon, Jan 9, 2012 at 9:24 PM, Chris Kudelka <ckude...@gmail.com> wrote: > Is there an easy/elegant way to query hive for a table's (and a > partition's) location in HDFS? > > I'm aware that you can get the location using "describe extended > table_name" but it like to be able to query on just the location key. > > If not, is there a way to do so using the mysql metastore db? > > Ideally, I'd come out with something like: > > hdfs://namenode:/user/hive/warehouse/database.db/table/partition_1/datafile > > Thanks! > -- "...:::Aniket:::... Quetzalco@tl"