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

Décisions SGBD Discussion :

[Débat]Importance des choix de bases dans une architecture orientée service


Sujet :

Décisions SGBD

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Février 2005
    Messages
    55
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Février 2005
    Messages : 55
    Points : 60
    Points
    60
    Par défaut [Débat]Importance des choix de bases dans une architecture orientée service
    Bonjour,

    je souhaiterais lancer un débat sur les cas d'utilisations favorisant l'usage d'une base de données embarquée (H2, Berkeyley DB JE, Derby) et ceux favorisant les BD exclusivement client/serveur (Oracle,Postgres,Mysql)?

    Personnellement:
    je pense que l'usage d'une base embarquée simplifie énormément le déploiement de l'application, améliore son évolutivité et sa robustesse, et surtout permet d'avoir des performances bien meilleures étant donné le shunt client/serveur...

    ...après, Il est clair que même dans des SOA où l'usage client/serveur est déporté entre les services métiers, il reste possible que derrière chaque service soit cablé un sous-systême composé de clients de différentes natures alimentant une même base de données :

    Exemple: admettons qu'un sous-systême soit composé :
    * D'un client indépendant développé en C pour insérer massivement et rapidement des données à partir de fichiers déposés toutes les 30s dans un répertoire FTP;
    * d'un serveur métier EJB servant un conteneur de servlet pour diffuser ou modifier des données de la BD à l'aide d'un intranet;
    * un web service qui expose les services des EJB sessions au bus de services.

    On voit clairement que dans ce cas, l'usage d'une base de données embarquée devient moins triviale.
    Attention!! je vois déja venir ceux qui vont me dire oui mais dans ton exemple l'architecture de ton système est déja pourrie à la base...certe! mais mettre en place une SOA consiste dans un premier temps à interfaçer l'existant (même s'il est vraiment crade!) pour faire la liaison aux bus de services, et après on peut tailler dans le lard...

    Voilà, j'attend vos retours d'expériences : DB Embedded killer or not?

  2. #2
    Membre expérimenté

    Profil pro
    Inscrit en
    Août 2002
    Messages
    1 249
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2002
    Messages : 1 249
    Points : 1 745
    Points
    1 745
    Par défaut
    Personnellement:
    je pense que l'usage d'une base embarquée simplifie énormément le déploiement de l'application, améliore son évolutivité et sa robustesse, et surtout permet d'avoir des performances bien meilleures étant donné le shunt client/serveur...
    Etrange, je travaille dans le domaine internet, et les arguments sont pratiquement les mêmes. Un site internet, donc une base serveur, non embarquée, facilite le déploiement de l'application puisqu'on ne déploie qu'une fois et non sur n postes. Ensuite, l'internet améliore l'évolutivité car on ne dérange pas les utilisateurs pour faire les mises à jours du site. Il suffit de patcher le soir le site.

    Concernant la robustesse, c'est plus ambigue, d'un coté, l'équipe des admin veille sur les serveurs, c'est positif, d'un autre coté, on dépend du réseau donc fragilisation de l'infrastructure.

    Concernant la performance, c'est aussi ambigue, d'un coté, on a la possibilité d'administrer les serveurs, de les dimensionner, d'augmenter la ram, les disques, le nombre de processeurs... d'un autre coté, une application client lourd et une base embarqué, on peut difficilement faire plus rapide. Je dirais que la différence se joue sur la dimension de la base.

    De toute façon, j'ai essentiellement entendu parler d'embarqué dans l'informatique industrielle, quand on a aucun réseau de disponible.

  3. #3
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 849
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 21 849
    Points : 52 971
    Points
    52 971
    Billets dans le blog
    6
    Par défaut
    DB Embedded killer or not
    Débat stérile : pas du tout le même usage... pas du tout du tout la même volumétrie. Aujourd'hui la moindre BD de gestion fait quelques centaines de Go.... le nombre d'accès client quelques milliers. Sans parler de monstres comme FNAC.com ou eurydile.....

    Autrement dit DB Embedded killer, oui, mais de pipi de chat !

    A +

  4. #4
    Membre éclairé

    Profil pro
    Inscrit en
    Mai 2005
    Messages
    414
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 414
    Points : 671
    Points
    671
    Par défaut
    Je rajouterai meme qu'embarquer une base de données embarquée peut avoir un coup de deploiement, evolution prohibitif
    Exemple :
    Une entreprise qui a quelques dizaines de milliers de points de vente dans le monde. Si la solution est d'avoir une bdd embarquée alors à chaque update/correction/livraison/mise à jour de données, il faut redéployer l'application dans tous les points de ventes.... à devenir fou et ruiné !

    Alors qu'une solution en centrale, une mise à jour et hop vu par tout le monde.

    Donc base de données embarquée, oui mais comme le dit SQLPro ca n'est pas pour les mêmes utilisations.

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    98
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2004
    Messages : 98
    Points : 115
    Points
    115
    Par défaut
    Citation Envoyé par gregory.broissard Voir le message
    Je rajouterai meme qu'embarquer une base de données embarquée peut avoir un coup de deploiement, evolution prohibitif
    Exemple :
    Une entreprise qui a quelques dizaines de milliers de points de vente dans le monde. Si la solution est d'avoir une bdd embarquée alors à chaque update/correction/livraison/mise à jour de données, il faut redéployer l'application dans tous les points de ventes.... à devenir fou et ruiné !

    Alors qu'une solution en centrale, une mise à jour et hop vu par tout le monde.

    Donc base de données embarquée, oui mais comme le dit SQLPro ca n'est pas pour les mêmes utilisations.
    On est d'accord, mais ça n'est pas vraiment un bon cas d'utilisation du SOA, des milliers de points de vente.
    Je trouve que l'usage d'une BD embarquée est celui où auparavant, une appli écrivait des données sur plusieurs fichiers, pour un usage local et non distribué. Après, l'intérêt d'une BD par rapport à des fichiers est à soupeser.

Discussions similaires

  1. Création d'une architecture orientée service
    Par SoukainaC45 dans le forum Services Web
    Réponses: 3
    Dernier message: 13/11/2012, 16h20
  2. importer des données d'excel dans la base de données
    Par Cifrine dans le forum VBA Access
    Réponses: 2
    Dernier message: 01/06/2007, 14h48
  3. Insertion des images et vidéos dans une base de données
    Par taouja dans le forum SQL Procédural
    Réponses: 2
    Dernier message: 07/04/2007, 13h31
  4. Creer des user par code dans une base de donnees Interbase
    Par dachir dans le forum Bases de données
    Réponses: 2
    Dernier message: 16/07/2006, 14h55

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