У меня есть секционированная таблица (по идентификатору), которая содержит следующее:
Name,ID,PASS
A,1,abc
B,2,dfg
C,3,jkl
Я хочу вставить новые строки в вышеприведенную таблицу, но также обновить старую (если она существует).
То, что я хочу добавить:
NAME,ID,PASS
D, 4, asd
B, 2, kkk
C, 3, rrr
Как вы можете видеть, наблюдения B и C являются обновлениями старой таблицы, и в качестве окончательного варианта я хочу получить следующее:
Name,ID,PASS
A, 1, abc # existed and stay as it was
B, 2, kkk # existed but replaced with the new PASS
C, 3, rrr # existed but replaced with the new PASS
D, 4, asd # not existed and has appended
В результате мы обновили старые строки, которые были общими с таблицей, которую мы хотели добавить, а также добавили новые строки.
Я попытался использовать INSERTКоманда OVERWRITE в Hive, но это просто заменило новую таблицу на старую, потеряв информацию, которую я хотел сохранить.Любые предложения о том, как это можно сделать в Улей?