Agregări Ierarhice OLAP cu df.cube și df.rollup în Apache Spark & PySpark

dataframe Apache Spark 3.5 / PySpark Q&A / Distribuie cod

Generarea automată a subtotalurilor și a calculelor pe toate combinațiile de dimensiuni pentru analize multidimensionale.

Sintaxă
df.cube('an', 'trimestru').sum('valoare') / df.rollup('regiune', 'oras').sum('vanzari')

Pentru rapoarte de Business Intelligence și analize de tip cub multidimensional, Spark oferă două transformări puternice:

  • rollup(): Calculează agregările urmând o ierarhie strictă de la stânga la dreapta (ex. Regiune > Județ > Oraș > Total general).
  • cube(): Calculează agregările pentru toate combinațiile posibile ale coloanelor specificate (2^N combinații). Rândurile agregate conțin NULL pe dimensiunile agregate la nivel superior.
Exemplu: Raport ierarhic de vânzări cu rollup
from pyspark.sql import functions as F

df_raport = df_vanzari.rollup("tara", "an") \
    .agg(F.sum("valoare").alias("total_vanzari")) \
    .orderBy("tara", "an")

df_raport.show()

Comunitate & Schimb de cunoștințe

Întrebări & Exemple de Cod: Agregări Ierarhice OLAP cu df.cube și df.rollup

Ai o nelămurire despre utilizarea comenzii Agregări Ierarhice OLAP cu df.cube și df.rollup sau ai descoperit un truc / fragment de cod util? Distribuie-l cu ceilalți programatori!

💬

Fii primul care pune o întrebare sau distribuie un fragment de cod / prompt!

Nu au fost adăugate încă întrebări sau exemple de cod pentru această pagină. Dacă ai întâlnit o problemă sau ai un snippet util, adaugă-l mai jos pentru a-i ajuta pe ceilalți.

Comunitate Adaugă o întrebare sau distribuie un cod

Moderare & Siguranță:

Pentru a menține calitatea și securitatea informațiilor, fiecare întrebare sau fragment de cod/prompt este analizat (manual sau prin moderare asistată de AI) înainte de publicare.