[Java] Improve VectorSchemaRoot.getVector(String name) lookup performance
Les mainteneurs répondent en général sous 3 jours
Personne n'a encore pris cette issue.
Évaluation
- Difficulté
- 3/5
- Temps estimé
- 1-2 jours
- Accessibilité débutants
- 72/100
- Type d'issue
- Fonctionnalité
- Clarté
- Clairement spécifiée
- Activité
- Calme
- Stack technique
- java
- Domaine
- data, performance
Piste de recherche
Commencez dans vector/src/main/java/org/apache/arrow/vector/VectorSchemaRoot.java au niveau de getVector(String name), puis examinez le fieldVectorsMap existant et les chemins de construction des vecteurs de champs. Vérifiez que la recherche par nom conserve le comportement actuel et comparez-la sur un schéma comportant de nombreux vecteurs ; le travail est considéré comme terminé lorsque les recherches répétées par nom ne parcourent plus chaque vecteur de champ.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
Describe the enhancement requested
The Java VectorSchemaRoot.getVector(String name) can be quite slow if a schema has many vectors. The code currently loops over all the field vectors until it finds the string match. Link to code.
Could we stroe a hash map of the FieldVector String name to the actual FieldVector? Basically the same thing as the fieldVectorsMap that maps the Field to FieldVector. For really wide datasets the trade off of a bit more memory for faster vector lookups would be really nice to have!
Happy to open up a PR with the improvement, thanks!
- Langage dominant
- Java
- Étoiles
- 97
- Forks
- 158
- Merge moyen
- 9 j 4 h
- PR mergées (30 j)
- 13
Préparer son environnement
- Fournit un Dockerfile ou un fichier Docker Compose
- Propose un modèle de pull request
- Lire le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de apache/arrow-java
-
Difficulté 2/5 1-3 heures Accessibilité débutants 74/100
apache/arrow-java#1261 ·
Les mainteneurs répondent en général sous 3 jours
-
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100
apache/arrow-java#1236 ·
Les mainteneurs répondent en général sous 3 jours
-
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100
apache/arrow-java#1230 ·
Les mainteneurs répondent en général sous 3 jours
-
Type: bug
Difficulté 2/5 1-3 heures Accessibilité débutants 85/100
apache/arrow-java#1205 ·
Les mainteneurs répondent en général sous 3 jours
-
Type: bug
Difficulté 2/5 1-3 heures Accessibilité débutants 68/100
apache/arrow-java#1196 · 1 commentaire ·
Les mainteneurs répondent en général sous 3 jours
Toutes les issues de apache/arrow-java
Issues similaires
-
type: possible bug
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
-
Difficulté 2/5 1-3 heures Accessibilité débutants 88/100
-
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
grimmory-tools/grimmory#2850 · 1 commentaire ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 90/100
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 65/100
aoqia194/leaf-loader#19 ·