apache/arrow-java

Performance concern: fillHoles() method and read buffer expansion efficiency.

Ouverte

#599 ouverte le 10 févr. 2025

 (9 commentaires) (3 réactions) (0 personne assignée)Java (132 forks)auto 404
Type: enhancementhelp wanted

Métriques du dépôt

Stars
 (89 étoiles)
Métriques de merge PR
 (Métriques PR en attente)

Description

Hi everyone,

I have the following use case: I’m benchmarking the read throughput performance when dealing with a large number of non-dictionary string columns (300 columns). Based on the profiler output (see the attached picture), I’ve noticed that a significant amount of time is spent in the fillHoles() method, which is part of the read buffer expansion process.

My question is: why is the buffer filled one element at a time instead of using a bulk operation? Wouldn’t a batch approach be more efficient?

Looking forward to your insights. Thanks!

Image

Guide contributeur