Compartilhar via


partitionedBy

Particiona a tabela de saída criada por create, createOrReplaceou replace usando as colunas ou transformações fornecidas. Quando especificados, os dados da tabela são armazenados por esses valores para leituras eficientes.

Por exemplo, quando uma tabela é particionada por dia, ela pode ser armazenada em um layout de diretório como:

  • table/day=2019-06-01/
  • table/day=2019-06-02/

O particionamento é uma das técnicas mais usadas para otimizar o layout de dados físicos. Ele fornece um índice de granulação grosseira para ignorar leituras de dados desnecessárias quando as consultas têm predicados nas colunas particionadas. Para que o particionamento funcione bem, o número de valores distintos em cada coluna normalmente deve ser menor que dezenas de milhares.

col e cols dê suporte apenas às seguintes funções de transformação:

  • pyspark.sql.functions.years
  • pyspark.sql.functions.months
  • pyspark.sql.functions.days
  • pyspark.sql.functions.hours
  • pyspark.sql.functions.bucket

Sintaxe

partitionedBy(col, *cols)

Parâmetros

Parâmetro Tipo Descrição
col Coluna ou str A primeira coluna ou transformação de particionamento.
*cols Coluna ou str, opcional Colunas ou transformações de particionamento adicionais.

Devoluções

DataFrameWriterV2