SemanticException [Ошибка 10014] Улей UDF - PullRequest
0 голосов
/ 15 мая 2018

Я использую apache hive with и функцию UDF create в eclipse.Поэтому, когда я вызываю функцию в моем sql-запросе, я вижу эту ошибку:

FAILED: SemanticException [Ошибка 10014]: строка 1: 7 Сводка неверных аргументов: нет подходящего метода для класса HiveUDF.TokenizeString с (строка).Возможные варианты:

В чем проблема?

UDF CLASS

package HiveUDF;
public class TokenizeString extends UDF {

public List<String> tokenize (Text text) {
    List<String> prova = new ArrayList<String>();
    if(text == null)
        return null;
    String[] words = text.toString().split("\\n");
    for (String w : words)
        prova.add(w);
    return prova;
}

}

SQL TABLE AND QUERY

id                      bigint                                      
productid               string                                      
userid                  string                                      
profilename             string                                      
helpfulnessnumerator    int                                         
helpfulnessdenominator  int                                         
score                   float                                       
time                    int                                         
summary                 string                                      
text                    string

CREATE TEMPORARY FUNCTION tokenize_summary as 'HiveUDF.TokenizeString';

select tokenize_summary(summary) from amazonproduct;

Ответы [ 2 ]

0 голосов
/ 30 января 2019
package HiveUDF;
public class TokenizeString extends UDF {
public List<String> evaulate (Text text) {
    List<String> prova = new ArrayList<String>();
    if(text == null)
        return null;
    String[] words = text.toString().split("\\n");
    for (String w : words)
        prova.add(w);
    return prova;
}
}

попробуйте это ...

0 голосов
/ 30 января 2019

при расширении класса UDF необходимо переопределить метод оценки (-).

...