簡體   English   中英

如何刪除 Hive 默認分區值,__HIVE_DEFAULT_PARTITION__

[英]How to delete Hive default partition value, __HIVE_DEFAULT_PARTITION__

我正在將 Glue metestore 用於 Hive,並且我有 AWS EMR 集群來查詢和修改 Hive 表。

我的數據位於 S3 中

我有 3 個分區列:

yr_no: int, month_no: int, uniq_id: int

但是,我有一些文件具有 NULL 值,其中 Hive 將 yr_no 和 month_no 的分區值設置為HIVE_DEFAULT_PARTITION

但由於 yr_no 和 month_no 都是整數,我不能輕易刪除這些分區。

我嘗試了以下格式:

ALTER TABLE table DROP PARTITION(yr_no=__HIVE_DEFAULT_PARTITION__);
ALTER TABLE table DROP PARTITION(yr_no<1);

第一個命令抱怨,因為列是 int,第二個命令抱怨語法 <

有沒有一種簡單的方法可以將它放在 yr_no= HIVE_DEFAULT_PARTITION或 month_no= HIVE_DEFAULT_PARTITION 上

也許您可以首先使用show partitons 然后,使用desc formatted partition(yr_no=xxx,month_no=xxxx)查看詳細信息。

您可以執行以下操作,它會起作用。

ALTER TABLE table DROP PARTITION(yr_no='__HIVE_DEFAULT_PARTITION__');

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM