Wie können wir HIVE-Funktionen testen, ohne auf eine Tabelle zu verweisen?

8

Ich wollte die UDF WeekOfYear verstehen und wie sie die erste Woche startet. Ich musste einen Tisch künstlich treffen und rennen die Abfrage . Ich wollte nicht den Tisch schlagen und die Werte berechnen. Zweitens kann ich den UDF-Quellcode ansehen?

%Vor%     
vkaul11 08.01.2014, 23:00
quelle

4 Antworten

0

Sie brauchen keine Tabelle, um UDF seit Hive 0.13.0 zu testen, siehe dieses Jira: Ссылка

Demo:

%Vor%

Der Quellcode (Masterzweig) ist hier: Ссылка

    
leftjoin 09.10.2017, 17:44
quelle
0

Ich denke nicht, dass das Ausführen von UDF, ohne die Tabellen zu treffen, in Hive möglich ist. Sogar Hive-Entwickler schlagen die Tabelle in UDF Testen.

Um die Abfrage schneller auszuführen, können Sie:

  1. Erstellen Sie eine Tabelle mit nur einer Zeile und führen Sie UDF-Abfragen für diese Tabelle aus
  2. Starten Sie Hive im lokalen Modus.

Hive-Quellcode befindet sich hier . UDFWeekOfYear Quelle ist hier .

    
Nigel Tufnel 09.01.2014 09:31
quelle
0

Wenn Sie Java-Entwickler sind, können Sie Junit-Testfälle schreiben und die UDFs testen.

Sie können den Quellcode aller in Funktionen integrierten Strukuren in grepcode suchen.

Ссылка

    
gopikrishna_BD 01.06.2015 07:00
quelle
0

Sie sollten in der Lage sein, jede Tabelle mit mindestens einer Zeile zu verwenden, um Funktionen zu testen. Hier ist ein Beispiel, das einige benutzerdefinierte Funktionen verwendet, die Arbeit ausführen und ein Zeichenfolgenergebnis ausgeben.

Ersetzen Sie anytable durch eine tatsächliche Tabelle.

SELECT ST_AsText (ST_Intersection (ST_Polygon (2,0, 2,3, 3,0), ST_Polygon (1,1, 4,1, 4,4, 1,4))) FROM anyable LIMIT 1;

HIVE Ergebnisse:

OK

POLYGON ((2 1, 2.6666666666666665 1, 2 3, 2 1))

Benötigte Zeit: 0.191 Sekunden, Abgerufen: 1 Zeile (n)

Bienenstock & gt;

    
jon kish 01.10.2015 02:36
quelle

Tags und Links