2016-10-27 3 views
0

Ich habe eine json mit allen Datensätzen mit fusionierte Ich brauche die fusionierte json und Last in separaten Datenbank mit NifiSplit json Nifi mit

Meine Datei zu teilen, wenn ich

db.collection.findOne()

Mein ausführen Eingabe sieht wie aus:

[ 
    { 
    "name": "sai", 
    "id": 101, 
    "company": "adsdr" 
    }, 
    { 
    "name": "siva", 
    "id": 102, 
    "company": "shar" 
    }, 
    { 
    "name": "vanai", 
    "id": 103, 
    "company": "ddr" 
    }, 
    { 
    "name": "karti", 
    "id": 104, 
    "company": "sir" 
    } 
] 

Ich bekomme alle JSON. Ich muss erhalten Ausgabe als:

{name: sai, I'd:101, company: sdr}

so dass ich nur ein aufnehmen wollen, wie kann ich die json mit Nifi analysieren?

+0

Meine JSON-Datei {{name: sai, ich würde: 101, Firma: adsdr} {Name: siva, ich würde: 102, Firma: shar} {Name: Vanai, ich würde: 10 3, Firma: ddr} {name: karti, ich würde: 104, Firma: sir}} –

+0

Ich habe deine Frage für dich aktualisiert, ich würde überprüfen, ob du mit den Änderungen zufrieden bist. In Zukunft sollten Sie wichtige Informationen wie Beispieleingaben zur eigentlichen Frage und nicht als Kommentar hinzufügen. Ich habe die Tatsache ignoriert, dass das Beispiel JSON nicht gültig ist. –

Antwort

0

Als Bryan sagte Sie können SplitJson processor verwenden. Und dann können Sie den geteilten Datenfluss an die anderen Datenbanken weiterleiten.

Der Prozessor intern verwendet this json Pfadfinder. Sie können in der Dokumentation nachlesen, welche Operationen unterstützt werden.

Gerade diese verwenden das erste Element zu erhalten, indem:

// JSON Path Expression for the first element: 
$[0] 

[ 
    { 
    "name": "sai", 
    "id": 101, 
    "company": "adsdr" 
    } 
] 
0

Verwenden Split json Prozessor mit folgenden Konfigurationen, wie im Screenshot unten gezeigt

SplitJson Config

enter image description here