2016-04-27 14 views
0

Hallo ich möchte mehrere Hive-Abfragen über eine einzige Komponente tun. Durch tHiveRow kann ich einzelne Abfragen ausführen, aber nicht mehrere Abfragen gleichzeitig ausführen.Ausführen von mehreren Hive-Abfragen mit tHiveRow-Komponente in Talend

Ich weiß, dass wir mehrere SQL-Abfragen, nachdem sie durch den folgenden Link http://www.vikramtakkar.com/2013/05/example-to-execute-multiple-sql-queries.html

Aber jeder hat man laufen kann eine Idee, wie man mehrere Abfragen ausgeführt werden?

+0

haben Sie versucht, mehrere Anweisungen mit Semikolon Trennung zu schreiben..wie unten "analysieren Tabelle1; analysieren Tabelle2; analysieren Tabelle3;" in thiveRow – garpitmzn

+0

Ja, das war das erste, was ich ausprobiert habe, aber kompilierte Fehler – Mohana

Antwort

1

Ihre Linkreferenz zeigt eine MySQL-Verbindung ... dies sagt nichts über die Hive-JDBC-Treiberfähigkeiten aus, da das Ausführen mehrerer Anweisungen in einer JDBC-Anweisung eine treiberspezifische Funktion ist!

So führen Sie mehrere Abfragen aus: Starten Sie mit einer Komponente tFixedFlowInput. Konfigurieren Sie eine String-Spalte und wählen Sie die Tabelleneingabeoption; Sie erhalten einen Tisch mit einer Spalte. Jede Zeile, die Sie hinzufügen, ist eine Hive-Anweisung. Verbinden Sie es nun mit einer tHiveRow-Komponente und verwenden Sie die Spalte des eingehenden Flusses im SQL-Textbereich von <flowName>. <columnName> Beispiel: row1.sqlStatement (wenn die String-Spalte in Ihrem tFixedFlowInput den Namen "sqlStatement" hat und die Verbindung zwischen der tFixedFlowInput- und der tHiveRow-Komponente "row1" genannt wird).

+0

nicht funktionierte, warf mir diesen Fehler, während Sie Ihre Lösung folgen. Fehler beim Kompilieren von Anweisung: FAILED: ParseException Zeile 1:20 irrelevante Eingabe ';' erwartet EOF nahe '' [FEHLER]: staging.newcomp_0_1.newComp - tHiveRow_2 - Fehler beim Kompilieren der Anweisung: FAILED: ParseException Zeile 1:20 irrelevante Eingabe ';' erwartet EOF in der Nähe von '' –

+0

Eine JDBC SQL-Anweisung endet nicht mit einem ";" (Semikolon) - es sollte ohne arbeiten. entferne es einfach. – gclaussn

+0

es funktioniert, danke –

Verwandte Themen