apache/pinot

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

Offen

#7.510 geöffnet am 04.10.2021

 (4 Kommentare) (0 Reaktionen) (0 zugewiesene Personen)Java (1.234 Forks)batch import
enhancementhelp wantedingestion

Repository-Metriken

Stars
 (4.937 Sterne)
PR-Merge-Metriken
 (PR-Metriken ausstehend)

Beschreibung

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.

Contributor Guide