2013-03-17 5 views
2

Salut s'associe je suis en train de mettre en œuvre simple rejoindre algorithim en Java ...Structures de données en Java pour mettre en œuvre

J'ai trois relations i.e. M (ABX) N (ACY) et O (BCZ). Ces relations sont actuellement dans un fichier séparé par des virgules et tous les entiers (exemple le fichier M aura des valeurs comme 1,5,6; 2,7,9; ..) se demandait quelle était la meilleure structure de données à utiliser en Java pour implémenter la jointure MxNxO M et N se joindront à l'attribut A produisant un schéma (ABCXY) qui rejoindra ensuite O sur les attributs B et C produisant un résultat final de ABXCYZ qui aura tous les résultats de jointure.

Répondre

0

Il n'existe aucune structure de données spécialisée que vous pouvez facilement utiliser pour cela.
Vous devez représenter les tables extraites de vos fichiers CSV via List<List>> puis vous devez parcourir les listes et comparer l'attribut approprié représentant le nom de la colonne pour créer des listes intermédiaires et ainsi de suite jusqu'à ce que vous ayez joint toutes les relations.
I.e. vous auriez besoin de mettre en œuvre cette logique vous-même.
Le meilleur moyen pour cette IMHO est de suivre la réponse de @Ernest Friedman-Hill.
Non seulement vous obtiendrez cette fonctionnalité plus rapidement, mais vous l'obtiendrez sans erreur car vous n'aurez pas besoin de tester que l'algorithme de jointure fonctionne correctement sur n'importe quel ensemble de données. La base de données intégrée le fera pour vous.

4

Peut-être une base de données intégrée comme hsqldb serait le bon choix. C'est flexible, performant et facile à utiliser.

Questions connexes