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

JDBC Java Discussion :

Choix d'une base de données


Sujet :

JDBC Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Février 2006
    Messages
    62
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 62
    Par défaut Choix d'une base de données
    Bonjour,

    Je développe un logiciel de gestion d'activités scolaires pour une association.
    Pour suivre l'évolution des utilisateurs, je dois bien sur utiliser une base de données.
    Cette base pourra soit être exploiter localement soit sur un réseaux ou plusieurs utilisateurs enregistreront leur résultats à partir de différents postes.
    Ce logiciel sera installé et utilisé par un public non averti. Il doit donc être simple à installer et avoir un minimum de contraintes à l'utilisation. Je souaiterais donc à tout prix éviter de demander à l'utilisateur d'installer un serveur de base de données sur un pc car c'est, par expérience, une solution d'avance vouée à l'échec.

    Voyez-vous comment faire autrement?

    Merci d'avance pour vos conseils !

  2. #2
    Rédacteur
    Avatar de CyberChouan
    Homme Profil pro
    Directeur technique
    Inscrit en
    Janvier 2007
    Messages
    2 752
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Janvier 2007
    Messages : 2 752
    Par défaut
    Le sujet vient d'être traité dans le forum général... (et avait déjà été traité il y a quelques temps plus tôt dans le forum JDBC)

    Pour rappel, il y a un post "A lire avant de poster" qui précise qu'on ne doit poster une question qu'après avoir fait une recherche et vérifié que la réponse ne se trouve pas déjà sur le forum!
    Avant de poster, pensez à regarder la FAQ, les tutoriaux, la Javadoc (de la JRE que vous utilisez) et à faire une recherche
    Je ne réponds pas aux questions techniques par MP: les forums sont faits pour ça
    Mes articles et tutoriaux & Mon blog informatique

  3. #3
    Membre émérite Avatar de zorm
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    584
    Détails du profil
    Informations personnelles :
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Décembre 2004
    Messages : 584
    Par défaut
    Si c'est un logiciel que tu developpes, sache que les bases de données ne sont pas les seuls facon de stocker des informations. Tu peux te debrouiller à mon avis à créer un fichier sur le poste des utilisateurs. Le format n'a que peu d'importance mais comme ca tu évites d'avoir une installe qui peut etre trop dur pour des utilisateurs non averti.

  4. #4
    Membre confirmé
    Inscrit en
    Février 2006
    Messages
    62
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 62
    Par défaut
    J'avais déjà fait une recherche au préalable. Encore faut il trouver les bons critères ^^. CyberChouan pourrais tu poster les liens auxquels tu penses, je ne les trouve pas
    Toutes mes excuses pour avoir recréé un topic déjà existant !

    Pour en revenir à mon problème, comme l'a fait remarquer zorm, je ne suis pas sur qu'il faille passer par une base de données dans la mesure ou c'est un fichier unifié. Il ne faut pas non plus créer un fichier sur le poste des utilisateurs car toutes les ressources sont partagées et donc au même endroit.

    Dans le cas d'une base de données embarquée, partagée par plusieurs utilisateurs au travers d'un réseau, j'ai noté les problèmes suivants:
    Si la base est téléchargée puis gérée localement et une fois la session terminée mise à jour sur le serveur (comme avec hsqldb):
    - les données des utilisateur et activités ne sont pas mises à jour en temps réel
    - il y a une perte de données puisqu'elle sont mises en concurrence et que la fermeture de chaque session écrase toutes les autres sessions mises à jour pendant son execution.
    Si la base de données est téléchargée, mise à jour puis retéléchargée sur le serveur, il y a toujours un risque de pertes de données et les délais d'attente sont très long. Le problème de pertes de données peut évidemment être résolu par un système de sémaphores mais c'est une solution qui ne ferait qu'accroitre considérablement les temps d'accès. Léger problème de sécurité, certes, mais ce n'est pas ma priorité et je peux toujours inclure une entête dans mes fichiers.

    Je pense que la seule solution valable serait de répartir toutes les données sous forme de dossiers / fichiers de manière à augmenter les temps d'accès (on ne télécharge que ce qui nous intéresse) et éviter les problèmes de perte de données.
    Pour cela, quel formats ou règles me conseilleriez vous ?
    Il y a t'il des librairies qui permettent de gérer tout ca aisément ?

  5. #5
    Membre émérite
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    548
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 548
    Par défaut
    Si tu as plusieurs utilisateurs et qu'en plus ils travaillent en parallèle, la solution éprouvée c'est une base de données sur un serveur.

    Si tu répartis les données sur différents postes tu vas avoir des problèmes de cohérence de donnée. En plus tu vas devoir créer ton propre système de communication (puis résoudre les bugs que tu auras mis dedans...)

  6. #6
    Membre confirmé
    Inscrit en
    Février 2006
    Messages
    62
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 62
    Par défaut
    Comme je l'ai précisé dans mon premier post, la mise en place d'une base de données sur un serveur serait top mais elle ne convient pas du tout à mon public visé.
    J'ai opté pour une sérialisation XML où toute la base de données est divisée en multiples fichiers dans une arborescence spécifique pour limiter les problèmes de concurrence de données. L'utilisateur travaille en local sur sa session en mémoire (Plus rapide ^^) et une fois terminée elle est mise à jour. Dans la mesure où un utilisateur ne travaille pas sur différents postes, cela ne spose aucun problème. Je pourrais églament envisager la mise à jour en temps réel des données utilsateurs mais e préfere déjà voir ce que ca donne sur un réseau surchargé. En ce qui concerne les données indépendantes des utilisateurs, elle sont mises à jour en temps réel : les modif sont peu fréquentes et uniquement autorisées aux administrateurs, peu nombreux.

Discussions similaires

  1. choix d'une Base de donnée
    Par haganidjamel dans le forum Bases de données
    Réponses: 2
    Dernier message: 29/08/2005, 22h44
  2. choix d'une base de données simple
    Par semenzato dans le forum Décisions SGBD
    Réponses: 3
    Dernier message: 12/07/2005, 14h18
  3. choix d'une base de donnée
    Par frisouille dans le forum Décisions SGBD
    Réponses: 1
    Dernier message: 17/06/2005, 15h52
  4. Choix d'une base de données
    Par AlexB59 dans le forum Décisions SGBD
    Réponses: 1
    Dernier message: 07/06/2005, 17h02
  5. Choix d'une base de données
    Par maurice66 dans le forum Décisions SGBD
    Réponses: 1
    Dernier message: 15/07/2004, 10h14

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