apache/pinot

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

Open

#7.510 aberto em 4 de out. de 2021

Ver no GitHub
 (3 comments) (0 reactions) (0 assignees)Java (1.234 forks)batch import
enhancementhelp wantedingestion

Métricas do repositório

Stars
 (4.937 stars)
Métricas de merge de PR
 (Mesclagem média 6d 7h) (186 fundiu PRs em 30d)

Description

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.

Guia do colaborador