невозможно удалить раздел таблицы кустов содержит специальный символ Знак равенства (=) - PullRequest
0 голосов
/ 14 октября 2018
  • вставлены данные в таблицу Hive со значением столбца раздела (CL) в виде ('CL = 18'), которое хранится в виде / db / tbname / CL = CL% 3D18 (недопустимый раздел содержит специальный символ в кодировке URL)для знака равенства).

    • В соответствии с сообществом hortonworks было упомянуто, что hive хранит специальные символы в качестве URL-адреса.

      • Я пытался использовать escape-последовательность для равныхподписать как \ x3D (шестнадцатеричное), \ u0030 (юникод), но не сработало

Пример: изменить таблицу tb drop drop (CL = 'CL\ x3D18' );<- не работает </p>

Может кто-нибудь мне помочь, я что-то не так делаю для знака равенства (=)?

1 Ответ

0 голосов
/ 14 октября 2018

Попробуйте с помощью alter table id drop partition(cl="cl=18"); (или), включив значение раздела также с single quotes(').

Я заново создал сценарий и способен до удалить разделы со специальными символами без использования шестнадцатеричной и т. Д. Последовательности.

Пример:

Я создал таблицу разделов с cl в качестве столбца раздела string тип.

hive> alter table t1 add partition(cl="cl=18"); --add the partition to the table
hive> show partitions t1; --list the partititons in the table
+-------------+--+
|  partition  |
+-------------+--+
| cl=cl%3D18  |
+-------------+--+
hive>  alter table t1  drop partition(cl='cl=18'); --drop the partition from the table.
hive>  show partitions t1; 
+------------+--+
| partition  |
+------------+--+
+------------+--+
...