Требуются все повторяющиеся записи из указанных 4 столбцов API Spark Dataset org.apache.spark.sql.Dataset [org.apache.spark.sql.Row] - PullRequest
0 голосов
/ 27 февраля 2019

На основе этих 4 столбцов (db_name, tb_name, column_name, latest_partition) мне нужны все дубликаты значений

     scala> val df = spark.table("dbname.tbname").distinct()

Схема для df

     scala> df.printSchema
                root
                 |-- column_name: string (nullable = true)
                 |-- latest_partition: string (nullable = true)
                 |-- row_cnt: string (nullable = true)
                 |-- comments: string (nullable = true)
                 |-- db_name: string (nullable = true)
                 |-- tb_name: string (nullable = true)
                 |-- Date_Processed: date (nullable = true)  

Получение уникальных значений из df

    scala> val uniqueData = df.dropDuplicates("column_name","latest_partition","db_name","tb_name") 

Я пытаюсь получить все повторяющиеся записи из этих указанных 4 столбцов

    scala> val Dup = df.withColumn("cnt", count("*").over(Window.partitionBy("column_name","latest_partition","db_name","tb_name"))).where(col("cnt") > 1)

    scala> Dup.count
    res8: Long = 0

Можете ли вы помочь мне, как получить все повторяющиеся значения из набора данных df?

...