Поскольку вы не указали полный поток вашего logi c, я просто добавляю ниже logi c для соответствия одному столбцу из обеих таблиц.
//load data for first dataframe.
val dfa = dfaData.withColumn("id",monotonically_increasing_id).withColumn("id",row_number().over(Window.partitionBy($"id").orderBy($"id".asc)))
//load data for second dataframe.
val dfb = dfbData.withColumn("id",monotonically_increasing_id).withColumn("id",row_number().over(Window.partitionBy($"id").orderBy($"id".asc)))
//Used cross join to match dfa columns to dfb columns.
dfa.crossJoin(dfb).withColumn("matched",when($"filtereddescription" === $"name", lit("matched")).otherwise("not matched")).show(false)