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

Affichage des résultats du sondage: Rencontrez-vous des réticences d'usage des outils de mapping O/R de vos DBA

Votants
48. Vous ne pouvez pas participer à ce sondage.
  • Non, pas de réticence du tout

    24 50,00%
  • Oui, des réticences au départ mais plus maintenant

    10 20,83%
  • Oui, des réticences et même que l'on ne peut pas utiliser ces outils

    14 29,17%
Persistance des données Java Discussion :

Comment sont perçus les outils de mapping Objet / Relationnel (JPA, Hibernate, etc.) par vos DBA ? [Débat]


Sujet :

Persistance des données Java

  1. #41
    Membre éclairé Avatar de Arkhena
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    552
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 552
    Points : 769
    Points
    769
    Par défaut
    Bonjour,

    En regardant les bases de données que je gère, le souci ne vient pas de l'utilisation d'un ORM mais du fait qu'on confie à des apprentis-jardiniers la modélisation des données!!!

    Après on nous demande de tuner des installs pour améliorer les performances et on fait ce qu'on peut mais on ne peut pas faire de miracle...

    Ensuite, les ORM ont un inconvénient certain pour moi : ça fait croire aux développeurs qu'ils n'ont rien à connaître en ce concerne les BDD. Du coup, on se retrouve à débugguer l'appli à leur place parce qu'ils ont fait une faute de frappe dans un fichier de config et parce qu'ils sont incapables de se connecter à une base de données en direct pour tester leur requête!

    Voilà pour moi!

    Arkhena
    A bove ante, ab asino retro, a stulto undique caveto

  2. #42
    Expert éminent
    Avatar de _skip
    Homme Profil pro
    Développeur d'applications
    Inscrit en
    Novembre 2005
    Messages
    2 898
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Suisse

    Informations professionnelles :
    Activité : Développeur d'applications
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Novembre 2005
    Messages : 2 898
    Points : 7 752
    Points
    7 752
    Par défaut
    Citation Envoyé par brice01 Voir le message
    Windev a évolué depuis la version 8 : Il fait du client-seveur. Mais là n'est pas la question. Windev fait du multi base sans changer le code source.
    Je sais qu'il existe une version client serveur, je me suis assez battu avec. L'aspect multi-base concerne les ordres H* et les bindings db-fenetre, et encore c'est si vous voulez bien acheter les accès natifs. Vous verrez toutefois que changer de base aura un impact sur votre schéma de données, même si une partie des changements est encapsulée par les drivers PCSOFT, ce n'est pas trivial et ça ne concerne pas les requêtes écrites à la main.

    Vous pourriez aussi dire qu'on peut faire du multi base via OLEDB ou ODBC, mais là aussi hors de la théorie ça pose vite des soucis.

    Ce que je voulais dire, c'est que à la manière des ORM windev masque et simplifie la persistance des données et ce fonctionnement peut amener à des performances amoindrie.

    Je ne juge pas hibernate, ibatis ou tout autre ORM (j'ai jamais essayer .. à tort peut être) etje suis à 100% pour l'ORM pour faire du CRUD (mono-table) et seulement pour le CRUD.
    A partir du moment, où la requête est plus complexe (genre sous requêtes....) je ne suis pas sur que les ORM savent le gérer.
    De plus pour que le client serveur soit le plus performant possible il faut éviter les aller retour avec le serveur (requete avec sous requetes...).
    Vous sous-estimez totalement les ORM, les sous-requêtes, les jointures conditionnelles et le chargement efficace de graphes d'objets sont pris en charge... en générant simplement du SQL dynamiquement.

  3. #43
    ego
    ego est déconnecté
    Rédacteur

    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Juillet 2004
    Messages
    1 883
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Architecte de système d'information
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2004
    Messages : 1 883
    Points : 3 510
    Points
    3 510
    Billets dans le blog
    2
    Par défaut
    Citation Envoyé par Arkhena Voir le message
    Bonjour,

    En regardant les bases de données que je gère, le souci ne vient pas de l'utilisation d'un ORM mais du fait qu'on confie à des apprentis-jardiniers la modélisation des données!!!

    Après on nous demande de tuner des installs pour améliorer les performances et on fait ce qu'on peut mais on ne peut pas faire de miracle...

    Ensuite, les ORM ont un inconvénient certain pour moi : ça fait croire aux développeurs qu'ils n'ont rien à connaître en ce concerne les BDD. Du coup, on se retrouve à débugguer l'appli à leur place parce qu'ils ont fait une faute de frappe dans un fichier de config et parce qu'ils sont incapables de se connecter à une base de données en direct pour tester leur requête!

    Voilà pour moi!

    Arkhena
    Sur cet aspect, je suis 100% d'accord avec toi.
    Mais ceci est vraiment un problème d'éducation à la base (c'est le cas de le dire).
    Il est totalement clair que la conception de la base EST LE NERF DE LA GUERRE, avec aussi son mode d'utilisation par l'application.
    De ma modeste expérience, les problèmes de performance dans les applications sont bien souvent (je ne veux pas donner de chiffre mais je pencherai avec quelque chose de très gros !!) liés à la conception de la base et aux requêtes mal foutues. Ce n'est pas une garantie, je vous l'accord, mais je suis "assez vieux" dans l'informatique, j'ai commencé par du Pro*C avec Oracle dans le code C donc le SQL "natif", j'en ai fait pas mal.
    Mais pour autant, je trouve que les ORM sont vraiment une très bonne solution. Ca ne veut pas dire qu'il faut mettre les DBA à la poubelle et qu'il ne faut pas savoir concevoir une base (tables, vues, indexes, tablespaces, répartition disque,...)

  4. #44
    Membre actif
    Profil pro
    Inscrit en
    Décembre 2009
    Messages
    90
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Décembre 2009
    Messages : 90
    Points : 214
    Points
    214
    Par défaut
    Citation Envoyé par GLDavid Voir le message
    Hello

    Autre chose, si ces frameworks miment les tables en objets, dites, pour des grosses bases de données (>100 tables) votre application doit grossir méchamment, non ?

    @++
    De toute manière si on souhaite faire les choses correctement il faut développer une couche d'abstraction pour dissocier l'accès aux données de l'interface. En général ca revient en gros à écrire une classe pour chaque table avec une propriété pour chaque champ. Alors si un orm le fait à ma place, je suis preneur, quitte à faire le ménage après coup en supprimant les classes dont je n'ai pas l'utilité. Il me semble que ca peut apporter un bon gain en temps de développement mais je n'ai encore jamais utilisé ce genre d'outils, pour l'instant j'utilise encore de bonnes vieilles procédures stockées

  5. #45
    Membre confirmé Avatar de NicoL__
    Homme Profil pro
    Architecte
    Inscrit en
    Janvier 2011
    Messages
    399
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Architecte

    Informations forums :
    Inscription : Janvier 2011
    Messages : 399
    Points : 577
    Points
    577
    Par défaut
    Donc à la réponse : Comment sont perçus les outils de mapping Objet /Relationnel (JPA, Hibernate, etc.) par vos DBA ? On peut dire que les DBA réagissent mal !
    Si on se tourne du coté des éditeurs et autre on remarquera que l'ORM a pris une grand place : Microsoft met en avant Entity Framework et en 2010 ne parle plus trop du bienfait des procsock et JPA est là pour unifier tout le monde java. Donc l'ORM monte en puissance.
    Et puis JPA est portable sur beaucoup d'implémentation donc beaucoup de base (y a des limitations potentielles) et même sur des bases NoSql (là y a plus de DBA pour ronchonner) le genre de techno poussée par google.
    L'ORM permet des gains de productivité du développeur au détriment d'un optimisation fine et des gain de performance. Or on compense la performance avec des serveurs de plus en plus puissants. Alors que le développeur il coûte toujours plus cher...

Discussions similaires

  1. Réponses: 11
    Dernier message: 01/04/2010, 17h27
  2. Quel outil de mapping objet-relationnel choisir ?
    Par mamelouk dans le forum Persistance des données
    Réponses: 63
    Dernier message: 21/08/2008, 12h11
  3. Etat des lieux des outils de mapping objet/relationnel (ORM)
    Par Exsilius dans le forum Général Dotnet
    Réponses: 12
    Dernier message: 12/02/2008, 08h50
  4. Outil de mapping objet/relationnel OR not ?
    Par Exsilius dans le forum Général Dotnet
    Réponses: 5
    Dernier message: 01/02/2007, 18h52
  5. Réponses: 2
    Dernier message: 02/08/2005, 13h53

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