IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Persistance des données Java Discussion :

échange rapide de données


Sujet :

Persistance des données Java

  1. #1
    Membre habitué
    Inscrit en
    Septembre 2010
    Messages
    11
    Détails du profil
    Informations forums :
    Inscription : Septembre 2010
    Messages : 11
    Par défaut échange rapide de données
    Bonjour à tous,

    J'aurais deux questions à poser, j'espère être dans la bonne catégorie.

    Je développe actuellement une application qui demande en local des transferts très rapides de données, d'une classe à une autre (threads de calcul) et de classes vers un GUI (mise à jour plusieurs fois par seconde de graphes avec JFreeChart et d'images).
    J'aurais voulu avoir votre avis sur les types de variables à utiliser pour optimiser les performances, sachant que ces variables sont presque toujours partagées par au moins deux threads en même temps.

    Les classes BufferedOutputStream et BufferedInputStream, ou bien l'accès à un ArrayList, HashMap,... partagé, ou encore une autre solution ?

    Dans le cadre de cette appli j'aurais également besoin d'enregistrer des grandes quantités de données organisées dans un même fichier, qui seront amenées à être réutilisées comme source en entrée des blocs de calcul dont je parlais avant.
    En terme de performances là aussi, je voulais avoir votre avis sur les méthodes à utiliser.

    La sérialisation d'un objet contenant toutes les données, ou l'utilisation des API ZIP pour compresser les données, ou une autre solution ?

    Merci!

  2. #2
    Modérateur
    Avatar de dinobogan
    Homme Profil pro
    ingénieur
    Inscrit en
    Juin 2007
    Messages
    4 073
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France

    Informations professionnelles :
    Activité : ingénieur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2007
    Messages : 4 073
    Par défaut
    Construit ton appli morceau par morceau en faisant des tests de charges à chaque fois. Tu feras des optimisations si les tests ne sont pas concluant.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java
    Que la force de la puissance soit avec le courage de ta sagesse.

  3. #3
    Membre habitué
    Inscrit en
    Septembre 2010
    Messages
    11
    Détails du profil
    Informations forums :
    Inscription : Septembre 2010
    Messages : 11
    Par défaut
    D'accord, pour les threads de calcul je pense effectivement que je vais devoir tester comme ça.

    Savez vous ce qui est le plus utilisé pour le stockage d'importantes quantités de données organisées ?

  4. #4
    Membre chevronné
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    342
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 342
    Par défaut
    salut une basse de donnée pour le stockage des données ça ne te conviendra pas ?

  5. #5
    Membre habitué
    Inscrit en
    Septembre 2010
    Messages
    11
    Détails du profil
    Informations forums :
    Inscription : Septembre 2010
    Messages : 11
    Par défaut
    Non, l'exécution sera faite en local, l'accès à une base de données n'est pas prévu pour le moment.
    La sérialisation, est-ce un problème en termes de performance si les données contenues sont importantes ?
    Dans mon cas il s'agirait de plusieurs tableaux de 20 000 données pour chaque objet.

  6. #6
    Expert confirmé
    Avatar de sinok
    Profil pro
    Inscrit en
    Août 2004
    Messages
    8 765
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2004
    Messages : 8 765
    Par défaut
    Tu peux très bien utiliser un SGBD embarqué dans ton application comme Derby ou encore HDSLDB. Ces SGBD sont codés en java et s'ajoutent à l'application sous forme d'un jar.

  7. #7
    Membre chevronné
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    338
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mars 2008
    Messages : 338
    Par défaut
    Si tu dois faire des recherches croisées sur ces données une base de données intégrée semble approprié et facilitera grandement la persistance et la restitution des données d'une façon plus performante qu'une simple sérialisation/désérialisation dans un fichier.

Discussions similaires

  1. Webservice+SGBD+Accès rapide au données
    Par 100%fluor dans le forum Débuter
    Réponses: 0
    Dernier message: 16/04/2010, 19h40
  2. Ecrire et lire rapidement des données
    Par rambc dans le forum Général Python
    Réponses: 6
    Dernier message: 20/04/2009, 21h15
  3. Taux de change, actualisation de données
    Par Joachim49 dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 14/03/2008, 17h53
  4. Acces rapide aux données
    Par new.proger dans le forum JDBC
    Réponses: 4
    Dernier message: 18/07/2007, 16h19
  5. Réponses: 15
    Dernier message: 05/09/2006, 17h10

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo