Contar el número de filas duplicadas en SPARKSQL

Tengo un requisito donde necesito contar el número de filas duplicadas en SparkSQL para las tablas de Hive.

from pyspark import SparkContext, SparkConf
from pyspark.sql import HiveContext
from pyspark.sql.types import *
from pyspark.sql import Row
app_name="test"
conf = SparkConf().setAppName(app_name)
sc = SparkContext(conf=conf)
sqlContext = HiveContext(sc)
df = sqlContext.sql("select * from  DV_BDFRAWZPH_NOGBD_R000_SG.employee")

A partir de ahora he codificado el nombre de la tabla, pero en realidad viene como parámetro. Dicho esto, no sabemos el número de columnas o sus nombres también. En los pandas de Python tenemos algo como df.duplicated.sum () para contar el número de registros duplicados. ¿Tenemos algo como esto aquí?

+---+---+---+
| 1 | A | B |
+---+---+---+
| 1 | A | B |
+---+---+---+
| 2 | B | E |
+---+---+---+
| 2 | B | E |
+---+---+---+
| 3 | D | G |
+---+---+---+
| 4 | D | G |
+---+---+---+

Aquí el número de filas duplicadas es 4. (por ejemplo)

Respuestas a la pregunta(1)

Su respuesta a la pregunta