2017-02-12 1 views
0

haben Eingabedaten wie unten inpu1 als {Spalte1: "Val1", Spalte2: "Val2", Spalte3: "Val3", .....} input2 als acctno ^^ email_id Ich mache linken Outer-Join, um diesem 2-Datensatz beizutreten und geben die endgültige Ausgabe als {Spalte1: "val1", Spalte2: "val2", Spalte3: "val3", Spalte4: email_id} Das folgende Code-Snippet, das ich bisher gemacht habe, finden Sie hier.So entfernen Sie doppelte Datensätze von DataFrame nach linkem äußeren Join in Spark Java

Aber die endgültige Ausgabe hat doppelte Datensätze, die nicht benötigt wird. Ich möchte die doppelten Datensätze entfernen. Um doppelte Datensätze zu entfernen, habe ich distinct() und dropDuplicates() in joinedDF versucht, aber es ist nicht in der Lage, die doppelten Datensätze zu entfernen und die Ausgabe hat doppelte Datensätze.

Input1 hat einige 4897 Datensätze, input2 hat 2198765 Datensätze. Die endgültige Ausgabe sollte 4897 Datensätze haben, aber in meinem Fall kommt es als 5101 Datensätze. Ich bin neu bei Spark-Programmierung mit Java.Kindly helfen mir, das oben genannte Problem mit doppelten Datensätzen zu lösen.

+0

Können Sie nicht einfach 'SELECT DISTINCT' in der Abfrage? –

+0

Ich habe es versucht..aber es löst nicht meinen Zweck ..... immer noch die Ausgabe hat doppelte Datensätze. –

Antwort

0

Es könnte einige Duplikate in der accntno. Wenn Spalte1 Duplikate in accntno findet, kann dies Auswirkungen auf die gewünschten Datensätze haben. Betrachten Sie nur accntno und verbinden Sie sich.

Verwandte Themen