apache/pinot

[Segment ingestion job] Multi-threaded segment copy from staging dir to final destination

Open

#7510 aperta il 4 ott 2021

Vedi su GitHub
 (3 commenti) (0 reazioni) (0 assegnatari)Java (1234 fork)batch import
enhancementhelp wantedingestion

Metriche repository

Star
 (4937 star)
Metriche merge PR
 (Merge medio 6g 7h) (186 PR mergiate in 30 g)

Descrizione

SparkIngestionJob uses single threaded copy for segments copy from staging dir to final deep store dir(e.g. S3): https://github.com/apache/pinot/blob/7ce8b756dff2b153151517afd552759e44d46c75/pinot-plugins/pinot-batch-ingestion/pinot-batch-ingestion-spark/src/main/java/org/apache/pinot/plugin/ingestion/batch/spark/SparkSegmentGenerationJobRunner.java#L345

For a few hundred segments being uploaded, it can take forever. In this case, we should consider generating a list of source and destination paths for segment copy then use RDD to parallel this job.

Guida contributor