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 :

Conseils Application serveur JAVA et base de données.


Sujet :

Persistance des données Java

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 5
    Points : 3
    Points
    3
    Par défaut Conseils Application serveur JAVA et base de données.
    Bonjour à tous,

    Je suis en train d'écrire une application en JAVA qui fera office de serveur ou se connectera un grand nombre de clients...

    le point ou je voudrais avoir des conseils est pour la base de données.

    Cette application devra enregistrer plusieurs dizaines d'informations par secondes, de tailles relativement petites (en moyenne 10 octets), et ce en permanence... Donc je voudrais savoir la meilleur façon d'enregistrer ces informations dans une base de données.


    Est ce qu'utiliser JDBC est une bonne solution (avec le serveur de la base la meme machine) ? Y en a t-il des meilleurs (plus performantes) ?

    Et dans la façon d'enregistrer les données, vaut il mieux les enregistrer au fur et à mesure (c'est à dire plusieurs dizaines de requettes par seconde) ou bien de mettre les données en mémoire et d'exécuter par exemple un thread qui enregistrerait periodiquement (par ex: toutes les 30 secondes) les informations dans la base...

    Mon but étant de rechercher le meilleur taux rapidité/cout en ressourses système, et pour la base de données un compromis si possible gratuit ou peu couteux.


    Merci pour vos réponses.

  2. #2
    Membre expert
    Avatar de ®om
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    2 815
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 815
    Points : 3 080
    Points
    3 080
    Par défaut
    Ça dépend...
    Elles correspondent à quoi les données qui arrivent en permanence?

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

    Informations forums :
    Inscription : Août 2004
    Messages : 8 765
    Points : 12 977
    Points
    12 977
    Par défaut
    Pour le choix du SGBD, il faudra faire en fonction de la volumétrie totale attendue (on va dire que MySQL n'est pas le top pour pour des volumétries un peu élevées, mieux vaut prendre du PostGRESQL dans ce cas, et pour les très grosses volumétries on va tapper directemlent du coté d'Oracle, Sybase & cie, à moins de faire du cluster sur plusieurs bases, mais là ça commence à être gros comme projet).

    Ensuite pour la communication avec les SGBD, a moins d'écrire du JNI pour faire une surcouche directe de l'api native du SGBD je te conseille fortement de t'en tenir à JDBC qui dans la plupart des cas est déjà une surcouche native des api natives mais organisée de façon à implémenter la norme JDBC.

    Ensuite tu peux éventuellement utiliser des outils de mapping O/R, de persistence mais là tu perdras encore en perf.
    Hey, this is mine. That's mine. All this is mine. I'm claiming all this as mine. Except that bit. I don't want that bit. But all the rest of this is mine. Hey, this has been a really good day. I've eaten five times, I've slept six times, and I've made a lot of things mine. Tomorrow, I'm gonna see if I can't have sex with something.

  4. #4
    Candidat au Club
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 5
    Points : 3
    Points
    3
    Par défaut
    Déja merci pour vos réponses,

    ®om, en fait ce sera en grande partie des nombres entiers.


    sinok, j'avais pensé en premier lieu a MySQL mais très vite je me suis posé la question par rapport à la taille future de la base.

    En fait je ne suis pas du tout sûr de cette volumétrique et donc justement je veux taper asez haut pour éviter d'être pris de court.

    Il n'y aura pas de très gros enregistrements mais ils seront je pense très nombreux et comme l'accès aux données sera vraiment très fréquent...

    Donc je vais m'orienter vers du PostGRESQL ou Orcale que je connais un peu et rester sur du JDBC.

    En tout cas merci beaucoup


    Ne me reste plus qu'à être plus ou moins orienté quand à la façon d'enregistrer ces données (au compte goutte ou par groupes) car je pense que ca risque de jouer beaucoup quant aux performances du reste du programme.

  5. #5
    Membre expert
    Avatar de ®om
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    2 815
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 815
    Points : 3 080
    Points
    3 080
    Par défaut
    Ils correspondent à quoi ces entiers?

  6. #6
    Membre éclairé
    Avatar de sironimo
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    669
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Mai 2004
    Messages : 669
    Points : 756
    Points
    756
    Par défaut
    Salut, je pense avoir à rencontrer le même problème. Je dois développer une application avec une base de données assez conséquante.

    En effet, il s'agit d'une base de données médicales avec donc un enregistrement par minute et par client pour analyser sa situation physique. Cela représente donc 1440 enregistrements par jour et par patient.

    Je cherche donc une base de données robuste et efficace. Je me pose aussi la même question : dois-je gérer un système de multi-threads pour que plusieurs patients puissent envoyer leurs infos en même temps sur la base toutes les minutes ou bien alors faire une sorte de cron qui récupère à intervalle régulier les informations de chaque patient, la durée entre chaque mise à jour restant à déterminer.

    Voilà j'aimerais votre avis même si cela ressemble au problème existant.

    ps : pour ma part, je stocke des relevés cliniques donc pas mal de valeurs à virgules.
    "Le calendrier, c'est la bureaucratie du temps." Quino

  7. #7
    Candidat au Club
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 5
    Points : 3
    Points
    3
    Par défaut
    Ces entiers correspondent en grande partie à des propriétés que je veux enregistrer des clients connectés. Dans la majorité ils seront initialement extraits de la bdd et travaillés dans l'appli avant d'y être réintroduis.
    Donc si je devais faire les requetes au fur et a mesure il y en aurait des dizaines par secondes pour introduire quelques octets à chaque fois.

  8. #8
    Membre éclairé
    Avatar de sironimo
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    669
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Mai 2004
    Messages : 669
    Points : 756
    Points
    756
    Par défaut
    Vu la volumétrie de données à gérer dans mon application, je pense que je vais devoir m'orienter vers des solutions de type Oracle, Sybase.

    En ce qui concerne les payants et robustes, des préférences, d'autres possibilités, des avis sur la question?
    "Le calendrier, c'est la bureaucratie du temps." Quino

Discussions similaires

  1. Application WEB Java (jsp = base de données)
    Par rockncaly dans le forum Servlets/JSP
    Réponses: 3
    Dernier message: 20/01/2013, 10h38
  2. Connexion Application Java Avec Base de données Oracle
    Par Invité dans le forum NetBeans
    Réponses: 2
    Dernier message: 09/05/2012, 15h28
  3. Livre pour application Java avec base de données
    Par JCD21 dans le forum Débuter avec Java
    Réponses: 5
    Dernier message: 02/04/2011, 09h16
  4. Application java avec base de donné
    Par charrynsasi dans le forum JDBC
    Réponses: 3
    Dernier message: 29/06/2010, 09h18
  5. Réponses: 5
    Dernier message: 10/12/2007, 19h41

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