Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Devolve uma nova DataFrame particionada pelas expressões de partição dadas. O DataFrame resultante é particionado por identificador de coluna.
Sintaxe
repartitionById(numPartitions: int, *cols: "ColumnOrName")
Parâmetros
| Parâmetro | Tipo | Descrição |
|---|---|---|
numPartitions |
int | o número alvo de partições. |
cols |
str ou Column | particionar colunas. |
Devoluções
DataFrame: DataFrame reparticionado.
Notes
Pelo menos uma expressão particionada deve ser especificada. Isto é semelhante à repartição em distribuição, mas preserva a ordem das linhas dentro de cada partição.
Esta é uma API experimental.
Exemplos
from pyspark.sql import functions as sf
spark.createDataFrame(
[(14, "Tom"), (23, "Alice"), (16, "Bob"), (18, "Alice"), (21, "Alice")],
["age", "name"]
).repartitionById(2, "name").select(
"age", "name", sf.spark_partition_id()
).show()
# +---+-----+--------------------+
# |age| name|SPARK_PARTITION_ID()|
# +---+-----+--------------------+
# | 14| Tom| 0|
# | 23|Alice| 1|
# | 18|Alice| 1|
# | 21|Alice| 1|
# | 16| Bob| 0|
# +---+-----+--------------------+