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éveloppement SQL Server Discussion :

Une petite perle !


Sujet :

Développement SQL Server

  1. #21
    Modérateur
    Avatar de escartefigue
    Homme Profil pro
    bourreau
    Inscrit en
    Mars 2010
    Messages
    10 133
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loir et Cher (Centre)

    Informations professionnelles :
    Activité : bourreau
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2010
    Messages : 10 133
    Points : 38 555
    Points
    38 555
    Billets dans le blog
    9
    Par défaut Des petites perles ? en voici tout un collier
    Autre petite perle, plutôt rare : j'ai un client qui a tout simplement interdit l'utilisation du type integer dans ses bases de données
    L'argument de poids : c'est plus simple (dixit les responsables des normes internes !)
    Je n'ai pas compris pourquoi ils n'interdisent pas aussi les formats date, decimal et autres, après tout le char c'est bien suffisant...

    Et bien sur, chez ce cumulard, aucune contrainte d'intégrité, des PK de format char, des tables monstrueusement obèses et toutes autres joyeusetés habituelles d'un classicisme navrant

  2. #22
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par escartefigue Voir le message
    Autre petite perle, plutôt rare : j'ai un client qui a tout simplement interdit l'utilisation du type integer dans ses bases de données
    Tu veux dire qu'ils stockent les entiers dans des varchar ? Ça doit travailler fort dans le transtypage lors des traitements...

  3. #23
    Expert éminent sénior

    Avatar de François DORIN
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Juillet 2016
    Messages
    2 757
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2016
    Messages : 2 757
    Points : 10 697
    Points
    10 697
    Billets dans le blog
    21
    Par défaut
    Citation Envoyé par 7gyY9w1ZY6ySRgPeaefZ Voir le message
    Tu veux dire qu'ils stockent les entiers dans des varchar ?
    Des NVARCHAR(MAX). Sinon ce n'est pas drôle...
    François DORIN
    Consultant informatique : conception, modélisation, développement (C#/.Net et SQL Server)
    Site internet | Profils Viadéo & LinkedIn
    ---------
    Page de cours : fdorin.developpez.com
    ---------
    N'oubliez pas de consulter la FAQ C# ainsi que les cours et tutoriels

  4. #24
    Modérateur
    Avatar de escartefigue
    Homme Profil pro
    bourreau
    Inscrit en
    Mars 2010
    Messages
    10 133
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loir et Cher (Centre)

    Informations professionnelles :
    Activité : bourreau
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2010
    Messages : 10 133
    Points : 38 555
    Points
    38 555
    Billets dans le blog
    9
    Par défaut
    J'aurais voté pour un blob perso, mais bon

  5. #25
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par dorinf Voir le message
    Des NVARCHAR(MAX). Sinon ce n'est pas drôle...
    SAP a fait ça à une époque avec les clefs primaires, FK et autres...
    « Pourquoi ma bd est si énorme ? Pourquoi j'ai besoin d'autant de RAM... »
    Un bonheur !

  6. #26
    FMJ
    FMJ est déconnecté
    Membre averti
    Profil pro
    tutu
    Inscrit en
    Octobre 2003
    Messages
    416
    Détails du profil
    Informations personnelles :
    Localisation : France, Aveyron (Midi Pyrénées)

    Informations professionnelles :
    Activité : tutu

    Informations forums :
    Inscription : Octobre 2003
    Messages : 416
    Points : 356
    Points
    356
    Par défaut
    Je ne suis pas consultant en DB, me suis formé sur le tas pour tout ce qui touche au relationnel, et n'ai donc quasiment aucun recul sur ce qui se fait ailleurs. Tout juste ai-je une petite idée du "best practice".
    Pour autant, je suis très perplexe par rapport à toutes ces "pépites" mentionnées. Elles laissent la désagréable impression que le MDB et l'optimisation des bases sont laissés aux bons soins des RH ? Ou du marketing.......? Enfin à tous services, sauf celui qui serait sensé détenir quelques compétences en la matière ! C'est tout de même incroyable !
    Mon coeur de métier, c'est le réseau/télécom. Là j'ai un meilleur recul sur ce qui se fait. Eh bien j'ai l'impression qu'en règle général, c'est beaucoup plus carré. Il faut aussi dire que dans ce domaine, soit ça marche, soit ça marche pas (ou très mal). C'est un peu plus binaire.

  7. #27
    Expert éminent sénior

    Avatar de François DORIN
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Juillet 2016
    Messages
    2 757
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2016
    Messages : 2 757
    Points : 10 697
    Points
    10 697
    Billets dans le blog
    21
    Par défaut
    Je ne sais pas pour SAP, mais il arrive souvent que des gros projets commencent par des proof of concept développé à la va vite par un stagiaire (ça coûte pas cher), voir par plusieurs stagiaires d'affilé. Si c'est concluant, le projet démarre... mais à partir de l'existant au lieu de repartir sur des bases saines. Et après, les dettes techniques s'accumulent...
    François DORIN
    Consultant informatique : conception, modélisation, développement (C#/.Net et SQL Server)
    Site internet | Profils Viadéo & LinkedIn
    ---------
    Page de cours : fdorin.developpez.com
    ---------
    N'oubliez pas de consulter la FAQ C# ainsi que les cours et tutoriels

  8. #28
    FMJ
    FMJ est déconnecté
    Membre averti
    Profil pro
    tutu
    Inscrit en
    Octobre 2003
    Messages
    416
    Détails du profil
    Informations personnelles :
    Localisation : France, Aveyron (Midi Pyrénées)

    Informations professionnelles :
    Activité : tutu

    Informations forums :
    Inscription : Octobre 2003
    Messages : 416
    Points : 356
    Points
    356
    Par défaut
    Cela m'est quelque fois arrivé sur de petits devs : tu ne prends pas la peine de faire un cahier des charges précis, englobant toutes les fonctionnalités nécessaires et les contraintes, tu commences par développer "à vue" ce dont tu as un premier besoin, et puis au fur à mesure du temps ça grossit au point d'arriver à pieuvre dont les tentacules se mordent mutuellement la queue.
    Mais de là ce que cela se passe de la même façon sur un "vrai".....

  9. #29
    Modérateur
    Avatar de escartefigue
    Homme Profil pro
    bourreau
    Inscrit en
    Mars 2010
    Messages
    10 133
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loir et Cher (Centre)

    Informations professionnelles :
    Activité : bourreau
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2010
    Messages : 10 133
    Points : 38 555
    Points
    38 555
    Billets dans le blog
    9
    Par défaut
    D'après mon expérience, ces états de fait sont surtout causés par la méconnaissance des enjeux, méconnaissance qui conduit à la négligence dans la formation des personnes en charge et par un temps et des charges allouées à la partie étude et modélisation, réduits comme peau de chagrin.
    Plutôt que d'investir les sommes nécessaires en début de projet, on dépense des fortunes en CPU et espace disque pour pallier aux défauts de conception.
    C'est ainsi

  10. #30
    Invité
    Invité(e)
    Par défaut
    Pour le SAP, ça a été des nvarchar(max) sur des clefs pour une version.
    De ce que j'ai vu du modèle, je pense que le développement s'est fait pour une autre SGBD (Sybase, Oracle ?) et que la conversion vers MS Sql Server s'est faite à l'arrache pour un client et s'est ensuite retrouvée comme une version de prod.
    Ça a été corrigé pour les versions suivantes.
    Mais bon, quand on voit SAP HANA qui demande une quantité faramineuse de RAM de base, il y a quand même des trucs pas propres là-dedans...

  11. #31
    Membre expert Avatar de iberserk
    Homme Profil pro
    Architecte de base de données
    Inscrit en
    Novembre 2004
    Messages
    1 795
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Architecte de base de données
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2004
    Messages : 1 795
    Points : 3 173
    Points
    3 173
    Par défaut
    Sans parler de l'utilisation massive de GUID dans leur base de données chez certains "architectes" .NET.

    Pas plus tard qu'il n'y a pas longtemps j'ai vu une table avec une colonne "ETAT" de type UNIQUEIDENTIFIER pour représenter le OK/KO!!!
    16 octets contre un bit....

    Enjoy
    Prendre conscience, c'est transformer le voile qui recouvre la lumière en miroir.
    MCTS Database Development
    MCTS Database Administration

  12. #32
    FMJ
    FMJ est déconnecté
    Membre averti
    Profil pro
    tutu
    Inscrit en
    Octobre 2003
    Messages
    416
    Détails du profil
    Informations personnelles :
    Localisation : France, Aveyron (Midi Pyrénées)

    Informations professionnelles :
    Activité : tutu

    Informations forums :
    Inscription : Octobre 2003
    Messages : 416
    Points : 356
    Points
    356
    Par défaut
    Pour un développeur, une BD est un outil comme un autre. Qui a l'idée d'optimiser ou de tuner un composant ou une librairie ? Il n'y a généralement pas de concept de performance derrière. On s'en préoccupe tout à la fin, quand l'utilisateur est devant sa GUI.

  13. #33
    Membre expert Avatar de iberserk
    Homme Profil pro
    Architecte de base de données
    Inscrit en
    Novembre 2004
    Messages
    1 795
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Architecte de base de données
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2004
    Messages : 1 795
    Points : 3 173
    Points
    3 173
    Par défaut
    Citation Envoyé par FMJ Voir le message
    Pour un développeur, une BD est un outil comme un autre. Qui a l'idée d'optimiser ou de tuner un composant ou une librairie ? Il n'y a généralement pas de concept de performance derrière. On s'en préoccupe tout à la fin, quand l'utilisateur est devant sa GUI.
    Un développeur peut-être et encore mais un architecte...
    Prendre conscience, c'est transformer le voile qui recouvre la lumière en miroir.
    MCTS Database Development
    MCTS Database Administration

  14. #34
    FMJ
    FMJ est déconnecté
    Membre averti
    Profil pro
    tutu
    Inscrit en
    Octobre 2003
    Messages
    416
    Détails du profil
    Informations personnelles :
    Localisation : France, Aveyron (Midi Pyrénées)

    Informations professionnelles :
    Activité : tutu

    Informations forums :
    Inscription : Octobre 2003
    Messages : 416
    Points : 356
    Points
    356
    Par défaut
    Encore faudrait-il qu'il y ait eu un architecte, comme disait si bien Escartefigue un peu plus haut. Tout responsable de projet n'est pas forcément convaincu de son utilité ...

  15. #35
    Membre habitué Avatar de olivtone
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Octobre 2010
    Messages
    242
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Eure et Loir (Centre)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2010
    Messages : 242
    Points : 153
    Points
    153
    Par défaut
    CRM produit purement microsoft

    Table principale : 192 colonnes, CRM crée 47 Index par défaut sur cette table....

    Bien sur la PK Clustered est un GUID

    12 millions de lignes, 15 Go D'index...

    3/4 des index ne sont pas utilisés, mais défense absolu de supprimer les index car ce n'est pas supporté par Microsoft...

    C'est tout juste magnifique

  16. #36
    FMJ
    FMJ est déconnecté
    Membre averti
    Profil pro
    tutu
    Inscrit en
    Octobre 2003
    Messages
    416
    Détails du profil
    Informations personnelles :
    Localisation : France, Aveyron (Midi Pyrénées)

    Informations professionnelles :
    Activité : tutu

    Informations forums :
    Inscription : Octobre 2003
    Messages : 416
    Points : 356
    Points
    356
    Par défaut
    Oui mais le produit a été designé avant qu'ils ne rachètent Sybase et ne créent SQL Server
    Enfin, faut espérer !

  17. #37
    Modérateur
    Avatar de al1_24
    Homme Profil pro
    Retraité
    Inscrit en
    Mai 2002
    Messages
    9 080
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Val de Marne (Île de France)

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

    Informations forums :
    Inscription : Mai 2002
    Messages : 9 080
    Points : 30 789
    Points
    30 789
    Par défaut
    J'ai travaillé il y a peu sur une application où les évolutions de la base de données (ajout de tables ou colonnes) étaient effectuées par les développeurs Java sur demande des équipes fonctionnelles, avec avis consultatif des DBA durant la phase de recette.
    D'où ce type d'échange :
    • DBA : Avec cette structure, ça ne va pas être bon en temps de réponse. Voici la bonne manière de faire (normalisation, tables filles, ...)
    • DEV : Tout est déjà développé ; on ne va pas revenir dessus.
    • Exploitation : Ça rame. Qui est le DBA qui a conçu cette base ?
    Modérateur Langage SQL
    Règles du forum Langage SQL à lire par tous, N'hésitez pas à consulter les cours SQL
    N'oubliez pas le bouton et pensez aux balises
    [code]
    Si une réponse vous a aidé à résoudre votre problème, n'oubliez pas de voter pour elle en cliquant sur
    Aide-toi et le forum t'aidera : Un problème exposé sans mentionner les tentatives de résolution infructueuses peut laisser supposer que le posteur attend qu'on fasse son travail à sa place... et ne donne pas envie d'y répondre.

  18. #38
    FMJ
    FMJ est déconnecté
    Membre averti
    Profil pro
    tutu
    Inscrit en
    Octobre 2003
    Messages
    416
    Détails du profil
    Informations personnelles :
    Localisation : France, Aveyron (Midi Pyrénées)

    Informations professionnelles :
    Activité : tutu

    Informations forums :
    Inscription : Octobre 2003
    Messages : 416
    Points : 356
    Points
    356
    Par défaut
    Ah au fait, j'allais oublier (tant qu'à balancer ... autant balancer !)
    Une petite précision sur la méthodologie de mise à jour dans cet ERP. Sa colonne vertébrale s’articule essentiellement autour de 2 tables regroupant d'un côté les pièces et de l'autre les lignes contenues dans ces pièces (la fameuse table à 10^6 colonnes). Jusqu'à là, rien d'extraordinaire. Ce qui est amusant, c'est de regarder ce qu'il se passe lorsque l'on modifie une valeur d'une seule ligne d'une pièce. Eh bien l'ERP supprime purement et simplement TOUTES les lignes de la pièce pour TOUTES les recréer ... à l'identique, en ne modifiant que la valeur qui avait changé. Sachant que certaines pièces contiennent plus de 1000 lignes ... de 250 colonnes ! C'est pas beau la vie ???!!! Bref, bonjour au revoir les indexes, les stats et tout le toutim. Tant qu'à faire, autant faire l'économie d'une licence SQL Server et se servir de fichiers à plat ......

  19. #39
    Membre expert Avatar de iberserk
    Homme Profil pro
    Architecte de base de données
    Inscrit en
    Novembre 2004
    Messages
    1 795
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Architecte de base de données
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2004
    Messages : 1 795
    Points : 3 173
    Points
    3 173
    Par défaut
    Citation Envoyé par olivtone Voir le message
    CRM produit purement microsoft

    Table principale : 192 colonnes, CRM crée 47 Index par défaut sur cette table....

    Bien sur la PK Clustered est un GUID

    12 millions de lignes, 15 Go D'index...

    3/4 des index ne sont pas utilisés, mais défense absolu de supprimer les index car ce n'est pas supporté par Microsoft...

    C'est tout juste magnifique
    J'ai bossé 4 ans sur les ERP dynamics AX et NAVISION, plus rarement sur CRM...
    En revanche je n'hésitais pas à réaliser l'étude d'indexation complète: ajout suppression etc. Microsoft ou pas...
    NOus tenions simplement à jour la liste exhaustive de ces modifications afin de pouvoir les fournir en cas d'audit et les repasser en cas de montée de version
    Prendre conscience, c'est transformer le voile qui recouvre la lumière en miroir.
    MCTS Database Development
    MCTS Database Administration

Discussions similaires

  1. copier une petite texture sur une grosse texture
    Par gaut dans le forum DirectX
    Réponses: 5
    Dernier message: 15/10/2004, 22h12
  2. Réponses: 4
    Dernier message: 20/08/2004, 11h08
  3. Une petite question
    Par Etienne1 dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 10/08/2004, 16h19
  4. Réponses: 2
    Dernier message: 23/03/2004, 12h23
  5. Une petite aide pour les API ?
    Par Yop dans le forum Windows
    Réponses: 2
    Dernier message: 04/04/2002, 21h45

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