2016-10-26 2 views
-1

sammelt oder speichert Ich möchte die herausgefilterten Daten speichern oder sammeln, d. H. Die jsons, die die Validierungen für hdfs oder hbase nicht bestehen.Wie man herausgefilterte jsons in der Spark-Filterfunktion

dstream.filter { data => VitalValidator.isVitalJSONValid(data) } 

wo DSTREAM ist DSTREAM [Zeichenfolge] und isVitalJSONValid akzeptiert String und gibt boolean

+0

Haben Sie http://stackoverflow.com/help lesen? – reporter

+0

kurz ich war durchgegangen, pls sag mir was ist falsch daran? – vivek

+0

Eine Codezeile ist nicht genug. Bitte fügen Sie mehr Quellcode hinzu, damit die anderen besser analysiert werden können. – reporter

Antwort

0

ich so etwas wie dies mit Scala tun würde.

def isVitalJSONValid(data: String): Boolean = { 
    var isValid = false 

    //peroforms some validation 
    if(data.equals("some/validation")){ 
    isValid = true 
    } 
    !isValid 
} 


//existing goes on here 
dstream.filter(data => isVitalJSONValid(data)).saveAsHadoopFiles("file_prefix") 

Output operations on dstreams

+0

danke für Ihre Antwort Srinivas, aber Ihr Code sammelt die Daten nur, wenn die Validierungen wahr sind. Außerdem möchte ich die gültigen Daten weiter verarbeiten und die ungültigen Daten in hbase oder hdfs speichern – vivek

+0

hier Collect funktioniert nicht, da es Dstream ist [String] – vivek

+0

pls check the edit. Sie können 'isVitalJSONValid' Methode nach Ihren Bedürfnissen ändern. – mrsrinivas

Verwandte Themen