2016-06-25 7 views
0

Meine Daten ist in Form von:angezeigt Taschen nach FILTER in apachepig

{Type,    Category,    Region,  Attack on} 
(Enemy Action,  Direct Fire,   RC EAST,  ENEMY) 
(Friendly Action,  Cache Found/Cleared, RC EAST,  FRIEND) 
(Non-Combat Event, Propaganda,   RC SOUTH, NEUTRAL) 
(Suspicious Incident, Surveillance,   RC CAPITAL, ENEMY) 
(Explosive Hazard, IED Explosion,  RC SOUTH, ENEMY) 

so ist meine Aufgabe, alle Ereignisse zu untersuchen, die Explosionsgefahr beinhalten.

Laden der Daten in einen Beutel mit diesem:

a = load '/home/training/Desktop/Project2/afganwardata/afghan.csv' USING PigStorage(',') AS (details:tuple(type:chararray, category:chararray,region:chararray, attack:chararray)); 

die angegebenen Daten für Explosionsgefahr Filtern von

fila = FILTER a by details.type=='Explosive Hazard'; 

dabei die Ergebnisse im mit

dispa = FOREACH fila GENERATE details.type,details.category,details.region,details.attack; 

Nach anzuzeigen Ich zeige die Ergebnisse unter Verwendung

an
dump dispa; 

es zeigt dies:

Input (s):
erfolgreich gelesen Datensätze aus: "/home/training/Desktop/Project2/afganwardata/afghan.csv"

Output (s):
Erfolgreich gespeicherten Datensätze in: "file:/tmp/temp-1199379753/tmp-1030236329"

Aber es zeigt mir nicht die erforderliche Ausgabe.

Fehle ich ein paar Schritte oder mache ich etwas falsch? Bitte helfen!

+0

die Größe des Datensatzes Null sein gespeichert sind, kann der Filterbefehl für jeden Fall nicht wahr ist. Überprüfen Sie die Ausgabe für Dump Fila, möglicherweise erhalten Sie die Ursache des Problems – pratiklodha

Antwort

0

Tatsächlich fügen Sie ein Tupel ein, das bereits mit Komma (,) geteilt ist. Sie müssen nicht im Skript erwähnen;

a = load '/home/training/Desktop/Project2/afganwardata/afghan.csv' AS (details:(type:chararray, category:chararray,region:chararray, attack:chararray)); 

fila = FILTER a by details.type=='Explosive Hazard'; 

dispa = FOREACH fila GENERATE details.type,details.category,details.region,details.attack; 

Dump dispa; 

Ausgang

(Explosionsgefahr, IED Explosion, RC SOUTH, ENEMY)