2016-06-06 7 views
-1

Ich habe Daten in einer Datei wie unten (Komma (,) getrennt).Meine Hadoop-Interview-Szenario-basierte Abfrage-Lösung kann in HIVE/PIG/MapReduce sein

ID,Name,Sal 
101,Ramesh,M,1000 
102,Prasad,K,500 

Ich mag, dass die Ausgabetabelle sein wie unter

101, Ramesh M, 1000 
102, Prasad K, 500 

dh Namen und Vornamen in einer einzigen Spalte in der Ausgabe

In Hive, wenn ich Zeilenformat getrennte Felder durch 'beendet geben ,' es wird nicht funktionieren. Müssen wir eine Serde schreiben?

Lösung kann in MR oder PIG auch sein.

+0

Können wir irgendwelche Versuche sehen, die Sie in Ihre Frage redigiert haben? Auf dieser Website wird im Allgemeinen erwartet, dass einige vorherige Anstrengungen oder Forschungen nachgewiesen werden. – halfer

Antwort

2

Warum Sie concat Funktion nicht verwenden, wenn Sie Daten Prozess nicht und nur die Rohdaten abfragen, denken Sie an eine view darauf zu erstellen:

select ID,concat(Name ,' ' ,Surname),Sal from table; 
0

Sie concat-Funktion nutzen können.

Erstens können Sie die Tabelle erstellen (zB Tabelle 1) mit Rohdaten mit 4 Spalten durch Komma getrennten:

ID, first_name,last_name, salary 

Dann Concat die first_name und last_name Auswahlabfrage verwenden und speichern die Ergebnisse in einer anderen Tabelle CTAS(Create TABLE AS SELECT) mit Funktion

CREATE TABLE EMP_TABLE AS SELECT ID, CONCAT(first_name,' ','last_name) as NAME, salary from table1 
+0

Die gleiche Antwort habe ich dem Interviewer gesagt: D, Er akzeptiert das nicht. – silentshadow

+0

er gab nur einen Hinweis wie, wir können dies mit serde tun ... – silentshadow