partitionedBy

Partycjonuje tabelę wyjściową utworzoną przez create, createOrReplacelub replace przy użyciu podanych kolumn lub przekształceń. Po określeniu dane tabeli są przechowywane przez te wartości pod kątem wydajnych operacji odczytu.

Na przykład gdy tabela jest partycjonowana według dnia, może być przechowywana w układzie katalogu, na przykład:

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

Partycjonowanie jest jedną z najczęściej używanych technik optymalizacji układu danych fizycznych. Zapewnia on gruboziarnisty indeks umożliwiający pomijanie niepotrzebnych odczytów danych, gdy zapytania mają predykaty w kolumnach partycjonowanych. Aby partycjonowanie działało dobrze, liczba unikatowych wartości w każdej kolumnie powinna zwykle być mniejsza niż dziesiątki tysięcy.

col obsługują cols tylko następujące funkcje przekształcania:

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

Składnia

partitionedBy(col, *cols)

Parametry

Parameter Typ Opis
col Kolumna lub str Pierwsza kolumna partycjonowania lub przekształcenie.
*cols Kolumna lub str, opcjonalnie Dodatkowe partycjonowanie kolumn lub przekształceń.

Zwroty

DataFrameWriterV2