Compartilhar via


Reparticionar

Retorna um novo DataFrame particionado pelas expressões de particionamento fornecidas. O DataFrame resultante é particionado por hash.

Sintaxe

repartition(numPartitions: Union[int, "ColumnOrName"], *cols: "ColumnOrName")

Parâmetros

Parâmetro Tipo Descrição
numPartitions INT pode ser um int para especificar o número de destino de partições ou uma Coluna. Se for uma Coluna, ela será usada como a primeira coluna de particionamento. Se não for especificado, o número padrão de partições será usado.
cols str ou Column colunas de particionamento.

Devoluções

DataFrame: DataFrame repartitioned.

Exemplos

from pyspark.sql import functions as sf
df = spark.range(0, 64, 1, 9).withColumn(
    "name", sf.concat(sf.lit("name_"), sf.col("id").cast("string"))
).withColumn(
    "age", sf.col("id") - 32
)
df.repartition(10).select(
    sf.spark_partition_id().alias("partition")
).distinct().sort("partition").show()
# +---------+
# |partition|
# +---------+
# |        0|
# ...
# |        9|
# +---------+

df.repartition(7, "age").select(
    sf.spark_partition_id().alias("partition")
).distinct().sort("partition").show()
# +---------+
# |partition|
# +---------+
# |        0|
# ...
# |        6|
# +---------+