2016-08-19 32 views
2

我正在開發一個unix腳本,我將處理由列A或列B分區的Hive表。我想查找有關表的列分區,以便我可以對這些分區實例執行後續操作。如何獲得Hive表的分區列名稱

在Hive中有直接返回分區列的屬性嗎?

我想我必須做一個show create table並提取分區名稱,如果沒有其他任何可能的方式。

回答

1

可能不是最好的,但有更多的方法是通過使用描述命令

創建表:

create table employee (id int, name string) PARTITIONED BY (city string); 

命令:

hive -e 'describe formatted employee' | awk '/Partition/ {p=1}; p; /Detailed/ {p=0}' 

輸出:

# Partition Information 
# col_name    data_type    comment 

city     string 

您可以根據自己的需要改進它。

我深入探討的另一個選項是通過查詢元存儲庫表來獲取表的分區列信息。