Non sono stato in grado di trovare molte informazioni su questo argomento, ma diciamo che usiamo un dataframe per leggere in un file parquet che è 10 Blocks spark creerà naturalmente 10 partizioni. Ma quando il dataframe legge nel file per elaborarlo, non elaborerà un rapporto di dati di grandi dimensioni perché se elaborasse il file non compresso, la dimensione del blocco sarebbe stata molto più ampia, il che significa che anche le partizioni sarebbero più grandi.Spark DataFrames with Parquet and Partitioning
Quindi mi permetta di chiarire, parquet compresso (questi numeri non sono completamente accurati). 1GB Par = 5 Blocks = 5 Partizioni che potrebbero essere decompressi a 5 GB rendendole 25 blocchi/25 partizioni. Ma a meno che non si partiziona il file par da 1 GB, si resteranno bloccati con solo 5 partizioni quando in modo ottimale sarebbero 25 partizioni? O è la mia logica sbagliata.
Avrebbe senso ripartire per aumentare la velocità? O sto pensando a questo torto. Qualcuno può far luce su questo?
Ipotesi:
- 1 blocco = 1 Partizione scintilla
- 1 core operati 1 Partizione
"elaborare molte più informazioni" rispetto a cosa? –
Quello che voglio dire è che leggiamo un file parquet con diciamo 10 blocchi, ma quando non è compresso si usano ancora 10 partizioni in Spark. Dovresti ripartizionare perché il file non compresso è naturalmente più grande? – theMadKing
aggiunto ulteriori chiarimenti – theMadKing