apache/pinot

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

Open

#7.510 geöffnet am 4. Okt. 2021

Auf GitHub ansehen
 (3 Kommentare) (0 Reaktionen) (0 zugewiesene Personen)Java (1.234 Forks)batch import
enhancementhelp wantedingestion

Repository-Metriken

Stars
 (4.937 Stars)
PR-Merge-Metriken
 (Durchschn. Merge 6T 7h) (186 gemergte PRs in 30 T)

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