Dans Spark version 1.2. on pourrait utiliser subtract
avec 2 SchemRDD
s pour ne disposer que du contenu différent du premier une
val onlyNewData = todaySchemaRDD.subtract(yesterdaySchemaRDD)
onlyNewData
contient les lignes de todaySchemRDD
qui n'existent pas dans yesterdaySchemaRDD
.
Comment cela peut-il être réalisé avec DataFrames
in Spark version 1.3.?
Selon le api docs , faites:
dataFrame1.except(dataFrame2)
retournera un nouveau DataFrame contenant des lignes dans dataFrame1 mais pas dans dataframe2.
Dans pyspark DOCS il serait soustrait
df1.subtract(df2)
J'ai essayé de soustraire, mais le résultat n'était pas cohérent. Si j'exécute df1.subtract(df2)
, toutes les lignes de df1 ne sont pas affichées dans le cadre de données résultant, probablement à cause de distinct
cité dans la documentation.
Cela a résolu mon problème: df1.exceptAll(df2)