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 :

Base de données avec un niveau d'abstraction élevé


Sujet :

Décisions SGBD

  1. #1
    Membre éprouvé
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    957
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 957
    Points : 1 177
    Points
    1 177
    Par défaut Base de données avec un niveau d'abstraction élevé
    J'aurais pu intituler mon poste "Comment faire compliqué quand on peut faire simple" comme aurait dit mon prof de math à la fac.

    Je travaille actuellement sur un projet où le développeur/architecte a décidé d'abstraire très fortement la base de données. En fait il a utilisé un modèle dont je ne connais pas le nom mais que j'ai déjà vu. Ca consiste à ne pas avoir de tables reliées directement à des objets mais plutôt une table par type de données:

    - tbl_data_int contient tous les entiers

    - tbl_data_varchar contient tous les chaines de caractères

    Par exemple pour un objet de type Adresse, le code postal sera stocké dans la tbl_data_int et la ville dans la table tbl_data_varchar. Ca a le gros avantage d'une extrême flexibilité. Vous êtes autorisé à modifier à la volée les propriétés de votre objet.

    La clé de la réussite réside dans une couche d'accès aux données sans faille. Il faut pouvoir récupérer facilement n'importe quel objet. Vous pouvez imaginer la tache quand les propriétés sont éclatées sur plusieurs tables.
    Voir cet bon exemple : http://wiki.freeglobes.net/index.php/Database_kernel

    Je travaille donc sur un projet qui utilise cette merveilleuse méthode mais l'architecte a foiré la couche d'accès aux données. Si bien que c'est impossible de faire des tâches aussi simples qu'un tri sur colonne ou ajouter un filtre pour ne récupérer que certaines données. Au final même ajouter une nouvelle propriété est pénible.

    Magento pour ce qui ne connaisse pas est un CMS dédié aux magasins virtuels (http://www.magentocommerce.com/). Il utilise ce système, la complexité des produits qui peuvent être vendu dans un magasin en ligne justifie ce choix. Un magasin de vêtements ou un magasin de musique en ligne vendent des produits très différents mais les deux utiliseront le même Objet "Produit".

    Moi je travaille pour un média en ligne, les données sont ultra simples et n'évoluerons que très peu. Video, Blog, Forum, User...Je n'ai toujours pas compris pourquoi un choix aussi étrange a été fait. Un collègue m'a dit que certains développeurs aiment se sentir intelligent. Pour eux c’est une vraie reconnaissance sociale. Moi je pense tout le contraire "Keep it simple". Réussir une architecture simple et robuste dans un environnement complexe est pour moi une grande réussite. Les projets doivent être simple à comprendre, facile à maintenir et surtout coller aux besoins.
    - Travaillez-vous avec des gens qui pensent être dans un labo de recherche?
    - Qui font ou ont fait des choix certes impressionnants (pour ceux qui se laissent impressionnés) mais qui amèneront au final plus de problèmes qui en ont résolus.

  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 772
    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 772
    Points : 52 737
    Points
    52 737
    Billets dans le blog
    5
    Par défaut
    C'est le problème générique des "techno victimes". La plupart des informaticiens sont jeunes, fans de technologies et totalement réfractaire à l'histoire. D'ou le versement dans des technologies absconses qui brillent de tous feux, mais sont de réel veaux en exploitation...
    Lisez les papiers que j'ai écrits sur ce genre de sujets :

    http://sqlpro.developpez.com/Fondeme...formatique.pdf

    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
    Modérateur
    Avatar de Waldar
    Homme Profil pro
    Customer Success Manager @Vertica
    Inscrit en
    Septembre 2008
    Messages
    8 452
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Customer Success Manager @Vertica
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2008
    Messages : 8 452
    Points : 17 820
    Points
    17 820
    Par défaut
    Ça me rappelle un article en anglais dont mnitu a publié le lien il n'y a pas longtemps : bad-carma

  4. #4
    Expert éminent sénior
    Avatar de fsmrel
    Homme Profil pro
    Spécialiste en bases de données
    Inscrit en
    Septembre 2006
    Messages
    8 002
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Spécialiste en bases de données
    Secteur : Conseil

    Informations forums :
    Inscription : Septembre 2006
    Messages : 8 002
    Points : 30 906
    Points
    30 906
    Billets dans le blog
    16
    Par défaut
    Citation Envoyé par batataw Voir le message
    Je travaille actuellement sur un projet où le développeur/architecte...
    Développeur pourquoi pas, architecte, on peut fortement en douter. S’il était rompu à l’art de la modélisation des données (MCD Entité/Association, diagrammes de classes UML), s’il connaissait les possibilités des SGBD relationnels, il ne se serait évidemment pas enfermé dans son paradigme shadock. Faut-il qu'il soit inconscient...
    (a) Faites simple, mais pas plus simple ! (A. Einstein)
    (b) Certes, E=mc², mais si on discute un peu, on peut l’avoir pour beaucoup moins cher... (G. Lacroix, « Les Euphorismes de Grégoire »)
    => La relativité n'existerait donc que relativement aux relativistes (Jean Eisenstaedt, « Einstein et la relativité générale »)

    __________________________________
    Bases de données relationnelles et normalisation : de la première à la sixième forme normale
    Modéliser les données avec MySQL Workbench
    Je ne réponds pas aux questions techniques par MP. Les forums sont là pour ça.

  5. #5
    Membre éprouvé
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    957
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 957
    Points : 1 177
    Points
    1 177
    Par défaut
    Citation Envoyé par fsmrel Voir le message
    Développeur pourquoi pas, architecte, on peut fortement en douter. S’il était rompu à l’art de la modélisation des données (MCD Entité/Association, diagrammes de classes UML), s’il connaissait les possibilités des SGBD relationnels, il ne se serait évidemment pas enfermé dans son paradigme shadock. Faut-il qu'il soit inconscient...
    C'est tout le problème une base de données aussi simple ne requière pas de DBA. Un architecte junior ou un développeur aguerri suffit. Seulement comme le décrit SQLpro. La culture informatique a évolué, une partie des informaticiens sont prêt a utiliser n'importe quelle techno a la mode.

    PS: SQLpro merci pour les articles ils sont très instructifs.

Discussions similaires

  1. Réponses: 0
    Dernier message: 19/03/2011, 01h17
  2. meilleure base de données avec java
    Par mial dans le forum JDBC
    Réponses: 11
    Dernier message: 10/11/2010, 11h49
  3. Récupérer ma base de donnée avec des tables en .frm uniqueme
    Par Michas dans le forum Administration
    Réponses: 5
    Dernier message: 31/08/2005, 13h57
  4. création base de données avec easyphp
    Par Battosaiii dans le forum Débuter
    Réponses: 5
    Dernier message: 29/06/2004, 18h50
  5. Modifier le nom d'une base de donnée avec erreur sy
    Par mmn dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 25/11/2003, 10h12

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