partitionedBy

Partitioner utdatatabellen som skapats av , createeller createOrReplace med hjälp av replacede angivna kolumnerna eller transformeringarna. När de anges lagras tabelldata av dessa värden för effektiva läsningar.

När en tabell till exempel partitioneras per dag kan den lagras i en kataloglayout som:

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

Partitionering är en av de mest använda teknikerna för att optimera layouten för fysiska data. Det ger ett grovt index för att hoppa över onödiga dataläsningar när frågor har predikat på de partitionerade kolumnerna. För att partitioneringen ska fungera bra bör antalet distinkta värden i varje kolumn vanligtvis vara mindre än tiotusentals.

col och cols stöder endast följande transformeringsfunktioner:

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

Syntax

partitionedBy(col, *cols)

Parameters

Parameter Type Beskrivning
col Kolumn eller str Den första partitioneringskolumnen eller transformeringen.
*cols Kolumn eller str, valfritt Ytterligare partitioneringskolumner eller transformeringar.

Retur

DataFrameWriterV2