Pular para o conteúdo principal

baldePor

Agrupa a saída pelas colunas fornecidas. Se especificado, a saída é organizada no sistema de arquivos de forma semelhante ao esquema de buckets 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 a poupar.

col

string, lista ou tupla

Um nome de coluna ou uma lista de nomes.

*cols

str, opcional

Nomes de colunas adicionais. Deve estar vazio se col for uma lista.

Devoluções

DataFrameWriter

Notas

Aplicável para fonte de dados baseada em arquivo em combinação com DataFrameWriter.saveAsTable.

Exemplos

Escreva um DataFrame em uma tabela agrupada e, em seguida, leia-o de volta.

Python
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")