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.
Faz buckets da saída pelas colunas dadas. Se especificado, a saída está disposta no sistema de ficheiros de forma semelhante ao esquema de bucketing do Hive, mas com uma função de hash de bucket diferente e não é compatível com o bucketing do Hive.
Sintaxe
bucketBy(numBuckets, col, *cols)
Parâmetros
| Parâmetro | Tipo | Descrição |
|---|---|---|
numBuckets |
int | O número de baldes para poupar. |
col |
str, lista ou tupla | Um nome de coluna, ou uma lista de nomes. |
*cols |
STR, opcional | Nomes adicionais de colunas. Deve estar vazio se col for uma lista. |
Devoluções
DataFrameWriter
Notes
Aplicável a fontes de dados baseadas em ficheiros em combinação com DataFrameWriter.saveAsTable.
Exemplos
Escreve um DataFrame numa tabela em bucket e lê-o.
spark.sql("DROP TABLE IF EXISTS bucketed_table")
spark.createDataFrame([
(100, "Alice"), (120, "Alice"), (140, "Bob")],
schema=["age", "name"]
).write.bucketBy(2, "name").mode("overwrite").saveAsTable("bucketed_table")
spark.read.table("bucketed_table").sort("age").show()
# +---+------------+
# |age| name|
# +---+------------+
# |100|Alice|
# |120|Alice|
# |140| Bob|
# +---+------------+
spark.sql("DROP TABLE bucketed_table")