partitionedBy

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

Por exemplo, quando uma tabela é particionada por dia, pode ser armazenada num layout de diretórios como:

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

O particionamento é uma das técnicas mais amplamente utilizadas para otimizar o layout físico dos dados. Fornece um índice grosseiro para saltar leituras de dados desnecessárias quando as consultas têm predicados nas colunas particionadas. Para que a partição funcione bem, o número de valores distintos em cada coluna deve normalmente ser inferior a dezenas de milhares.

col e cols suportam apenas as 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 de particionamento ou transformação.
*cols Coluna ou força, opcional Colunas ou transformações adicionais de partição.

Devoluções

DataFrameWriterV2