repartição
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 |
|---|---|---|
| int | Pode ser um número inteiro para especificar o número de partições desejado ou uma coluna. Se for uma coluna, será usada como a primeira coluna de particionamento. Caso não seja especificado, será utilizado o número default de partições. |
| str ou Coluna | colunas de particionamento. |
Devoluções
DataFrame: DataFrame reparticionado.
Exemplos
Python
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|
# +---------+