Можем ли мы выполнить грубую операцию над «текстовым файлом» в улье - PullRequest
0 голосов
/ 08 февраля 2019

Я новичок в Hadoop, перед тем как опубликовать этот вопрос, я уже искал в Google и нашел все примеры грубых операций только с файлами ORC.Поэтому хотелось узнать, можем ли мы сделать то же самое с текстовым файлом или какие-либо изменения требуются в синтаксисе.Заранее спасибо.

1 Ответ

0 голосов
/ 08 февраля 2019

Типичные шаблоны для операций CRUD в не-ACID режиме:

C: вставка такая же (может быть из выбора)

INSERT INTO TABLE table_name VALUES... or SELECT FROM ...

R: это просто

SELECT * FROM TABLE table_name WHERE ...

U: Записать всю таблицу или раздел с помощью , выбрать из себя (использовать объединенияобновить значениями из другой таблицы).Обновите столбцы, используя операторы CASE.

INSERT OVERWRITE TABLE table_name [PARTITION(key=value)] 
SELECT --update columns using CASE
       case when col=some_value then some_other_value end as col,
       ...
       case when coln=some_value then some_other_value end as coln,
       col_x --not updated column
  FROM table_name [WHERE partition_key=value]
       JOIN...

D: Это полная перезапись таблицы или раздела с использованием выбора из себя с фильтром .Может сочетаться с обновлением.

INSERT OVERWRITE TABLE table_name [PARTITION(key=value)] 
SELECT *
  FROM table_name [WHERE partition_key=value]
WHERE --Filter out records you want to delete

Также, пожалуйста, прочитайте этот ответ о MERGE .

См. Руководство по Улей DML .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...