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. #1
    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 Une petite perle !
    Bonjour,

    Je n'ai pu résister au plaisir de partager avec vous cette petite perle. Incidemment, je suis tombé sur une "petite" requête utilisée par l'ERP que nous utilisons, requête qui m'a fait esquisser un petit sourire en l'analysant. Je trouvais cette requête un tantinet longuette à l'exécution.... Et pour cause : elle retourne 574 colonnes !!!!!!!!

    Si si 574

    Ah, le charme des * .......

  2. #2
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 759
    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 759
    Points : 52 538
    Points
    52 538
    Billets dans le blog
    5
    Par défaut
    Ho ce n'est rien...
    Il m'est arrivé de voir plus de 2000 colonnes dans un SELECT.

    Il y aa quelques années, un internaute du forum PostgreSQL cherchait désespérément comment paramétrer le moteur pour que les table réponse puissent dépasser 1664 colonnes...
    Il utilisait Hibernate !!!
    http://www.developpez.net/forums/d73...eme-jointures/

    A +
    Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
    Le site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
    Blog SQL, SQL Server, SGBDR : http://blog.developpez.com/sqlpro
    Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
    Entreprise SQL SPOT : modélisation, conseils, audit, optimisation, formation...
    * * * * * Expertise SQL Server : http://mssqlserver.fr/ * * * * *

  3. #3
    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
    Effectivement, je joue plutôt niveau maternelle finalement.
    Il n'empêche, je me pose beaucoup de questions sur la compétence des gus qui ont développé le MCD de cet ERP (surement l'un des plus gros en France). Quand tu vois que certaines tables qui peuvent contenir des millions de lignes comportent plus de 200 colonnes, moi ça me laisse pantois !

  4. #4
    Modérateur
    Avatar de kolodz
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2008
    Messages
    2 211
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 211
    Points : 8 316
    Points
    8 316
    Billets dans le blog
    52
    Par défaut
    Citation Envoyé par FMJ Voir le message
    Effectivement, je joue plutôt niveau maternelle finalement.
    Il n'empêche, je me pose beaucoup de questions sur la compétence des gus qui ont développé le MCD de cet ERP (surement l'un des plus gros en France). Quand tu vois que certaines tables qui peuvent contenir des millions de lignes comportent plus de 200 colonnes, moi ça me laisse pantois !
    C'est probablement de la faute de son employeur qui a voulu le payer à la colonne à la place de la ligne
    Si une réponse vous a été utile pensez à
    Si vous avez eu la réponse à votre question, marquez votre discussion
    Pensez aux FAQs et aux tutoriels et cours.

  5. #5
    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 pense surtout qu'ils n'ont pas été foutu de se payer un DBA digne de ce nom. Remarque, même un stagiaire aurait percuté et leur aurait dit que les perfs allaient être misérables avec une pareille structure !
    D'un autre côté, comme ils vendent aussi du matos, je me demande s'il n'y aurait pas un calcul visant à pousser les clients à prendre de grosses babasses ???!!!

  6. #6
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 759
    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 759
    Points : 52 538
    Points
    52 538
    Billets dans le blog
    5
    Par défaut
    Citation Envoyé par FMJ Voir le message
    .... grosses babasses ???!!!
    Ne serais tu pas en train de citer IBM ?

    A +
    Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
    Le site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
    Blog SQL, SQL Server, SGBDR : http://blog.developpez.com/sqlpro
    Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
    Entreprise SQL SPOT : modélisation, conseils, audit, optimisation, formation...
    * * * * * Expertise SQL Server : http://mssqlserver.fr/ * * * * *

  7. #7
    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
    Non, du tout. C'est un éditeur français. Les seules fois où j'ai eu à faire avec IBM, je n'ai pas eu à m'en plaindre !

  8. #8
    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
    Non, du tout. C'est un éditeur français. Les seules fois où j'ai eu à faire avec IBM, je n'ai pas eu à m'en plaindre !
    SAGE X3?
    Prendre conscience, c'est transformer le voile qui recouvre la lumière en miroir.
    MCTS Database Development
    MCTS Database Administration

  9. #9
    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
    SAGE, éditeur anglais à l'origine, appartient désormais à SAP, et est donc allemand. Enfin, si cela veut encore dire quelque chose pour ce genre de mastodonte.
    Il suffit de regarder dans le top 10 du classe Truffle des éditeurs français. Je donnerai un dernier indice : cet éditeur pousse parfois le bouchon un peu trop loin !

  10. #10
    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 FMJ Voir le message
    Et pour cause : elle retourne 574 colonnes !!!!!!!!
    Le problème n'est pas tant le nombre de colonnes (il doit bien y avoir des cas où cela à un sens !), mais le nombre de colonnes inutiles ! Si la requête envoie 574 colonnes alors que seules 3 sont utiles... alors oui, il y a un ENORME problème
    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

  11. #11
    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
    573 colonnes sur une même table un sens? je vous met au défi de me trouver un exemple de table avec autant de colonne et qui respecte, au minimum, la 3ème forme normale!
    Prendre conscience, c'est transformer le voile qui recouvre la lumière en miroir.
    MCTS Database Development
    MCTS Database Administration

  12. #12
    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
    Le problème n'est pas d'avoir une table avec 500 colonnes, mais une requête retournant 500 colonnes. Ce sont deux choses très différentes !
    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

  13. #13
    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 dorinf Voir le message
    Le problème n'est pas d'avoir une table avec 500 colonnes, mais une requête retournant 500 colonnes. Ce sont deux choses très différentes !
    Bien entendu, mais je répondais précisément à cette partie de votre phrase:
    (il doit bien y avoir des cas où cela à un sens !)
    .
    Prendre conscience, c'est transformer le voile qui recouvre la lumière en miroir.
    MCTS Database Development
    MCTS Database Administration

  14. #14
    Modérateur

    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Janvier 2005
    Messages
    5 826
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Haute Garonne (Midi Pyrénées)

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

    Informations forums :
    Inscription : Janvier 2005
    Messages : 5 826
    Points : 12 371
    Points
    12 371
    Par défaut
    A priori c'est de toute façon difficile à saisir pour une personne normalement constituée, un peu comme une requête dont le résultat est affiché dans une page web et qui retorune 10000 lignes ...
    J'en trouve aussi, mais je suis encore loin des 500+ colonnes

    @++

  15. #15
    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
    Citation Envoyé par dorinf Voir le message
    Le problème n'est pas d'avoir une table avec 500 colonnes, mais une requête retournant 500 colonnes. Ce sont deux choses très différentes !
    Les deux mon général !

    Pour la requête, je pense que l'appli doit utiliser 100 champs aux maximum ! Allez soyons fous disons 150 ! Le plus marrant, c'est que cette requête commence avec une liste interminable de colonnes pour finir par les répéter en utilisant [tables].*. Ils sont trop forts !

    Quand aux tables et au nombre de colonnes, je vous rassure cet ERP n'est pas en reste : je pense à une table qui peut contenir des millions de lignes et qui comprend .... 217 colonnes ! A la louche, je dirais qu'une cinquantaine sont utilisés régulièrement ....

  16. #16
    Invité
    Invité(e)
    Par défaut
    De mon bord, j'ai vu une table de 516 colonnes.
    C'était une des rares tables avec clef primaire et indexation de la bd.
    Sur les 516 colonnes, il y en avait moins de 50 qui étaient à autres choses que NULL...

  17. #17
    Expert éminent
    Avatar de Lyche
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Janvier 2007
    Messages
    2 523
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

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

    Informations forums :
    Inscription : Janvier 2007
    Messages : 2 523
    Points : 6 775
    Points
    6 775
    Billets dans le blog
    4
    Par défaut
    Ha tiens, j'ai travaillé récemment sur un ERP ou il y avait précisément 584Colonnes dans une table. A la décharge de l'éditeur, le projet est maintenu en interne et il est possible de faire ce que l'on veut de la base étant donné que c'est un modèle en méta-data et que depuis l'interface il est possible de créer des colonnes dans une table.

    Le soucis de ce modèle c'est, évidemment que n'importe qui peut faire n'importe quoi dans leur base de données.. Et on en arrive à des catastrophes de modélisation et de performances!

    Et quoi que vous fassiez, rien ne sera changé.. La réponse de mon client (et de mon chef à l'époque) "laisse, ça fonctionne comme ça"... 15 jours plus tard la base tombait et il a fallu remonter un serveur avec plus de ressources pour compenser..
    Rejoignez la communauté du chat et partagez vos connaissances ou vos questions avec nous

    Mon Tutoriel pour apprendre les Agregations
    Consultez mon Blog SQL destiné aux débutants

    Pensez à FAQ SQL Server Ainsi qu'aux Cours et Tuto SQL Server

  18. #18
    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
    Vive la CPU ! Vive la RAM ! Vive les licences !

  19. #19
    Expert éminent
    Avatar de Lyche
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Janvier 2007
    Messages
    2 523
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

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

    Informations forums :
    Inscription : Janvier 2007
    Messages : 2 523
    Points : 6 775
    Points
    6 775
    Billets dans le blog
    4
    Par défaut
    Citation Envoyé par FMJ Voir le message
    Vive la CPU ! Vive la RAM ! Vive les licences !
    Remarque, pas toujours, je bosse avec un éditeur en ce moment qui préconises des machines scandaleusement énormes pour au final se rendre compte que le processus est tellement dégueulasse que rajouter CPU+RAM ne change pas les temps de traitement

    Ils chargent leurs données en cache et font du traitement de la base en linéaire... quand j'ai demandé à leur archi pourquoi ils avaient fait ça (15minutes de temps de traitement pour 1Million de lignes et moins de 1Go de data) Il m'a tout simplement répondu qu'il avait les même perfs qu'en SQL et que ça le faisait chier de maintenir du code SQL

    Donc bon... le CPU+RAM ça a bon dos pour justifier des perfs.

    En gros, l'éditeur recommande 16Coeurs et 512 de RAM pour un serveur qui contiendra maximum 1To de base sur 6ans.. et 1To, je suis très très large

    Tout ça pour dire que non, monter le coût de la machine ne veux certainement pas dire amélioration sensible des performances applicatives.. Si le processus est pourrit au départ, il restera pourrit malgré la machine.
    Rejoignez la communauté du chat et partagez vos connaissances ou vos questions avec nous

    Mon Tutoriel pour apprendre les Agregations
    Consultez mon Blog SQL destiné aux débutants

    Pensez à FAQ SQL Server Ainsi qu'aux Cours et Tuto SQL Server

  20. #20
    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 suis tout à fait d'accord. Mon cocorico précédent ne relayait que l'état d'esprit de la plupart des éditeurs / revendeurs matériel. Quand tu as une structure de 4L, c'est pas la peine de lui greffer un V12 Ferrari !

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