apache/pinot

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

Aperta

#7510 aperta il 4 ott 2021

 (4 commenti) (0 reazioni) (0 assegnatari)Java (1234 fork)batch import
enhancementhelp wantedingestion

Metriche repository

Star
 (4937 stelle)
Metriche merge PR
 (Metriche PR in attesa)

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