Параллельные и распределенные вычисления

Семинар 11

Hive

Пономаренко Роман
@rerand0m
rerandom@ispras.ru

User-defined functions

[ Строка на входе -> строка на выходе ]

Для реализации нужно создать java класс, наследник org.apache.hadoop.hive.ql.exec.UDF, и реализовать в нём метод evaluate().

В HQL создать функцию на основе этого класса: CREATE TEMPORARY FUNCTION <my_udf> AS '<my.udf.class>'.

(Не забыв при этом положить jar в dfc)

User-defined table functions

[ Строка на входе -> таблица на выходе ]

Для реализации нужно создать java класс, наследник org.apache.hadoop.hive.ql.udf.generic.GenericUDTF, и реализовать в нём методы initialize(), process(), close().

В HQL создать функцию на основе этого класса: CREATE TEMPORARY FUNCTION <my_udf> AS '<my.udf.class>'.

(Не забыв при этом положить jar в dfc)

UDAF

Ещё более лютая штука для агрегации.

В домашке не будет, но если хотите углубиться, вот линк.

Joins в SQL

Пример join в HQL