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 :

Merise et/ou performance ?


Sujet :

Décisions SGBD

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé

    Développeur .NET
    Inscrit en
    Juillet 2008
    Messages
    176
    Détails du profil
    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Juillet 2008
    Messages : 176
    Par défaut Merise et/ou performance ?
    Bonjour à tous et à toutes,

    Voici une question toute bête mais à laquelle moi, pauvre simple utilisateur de BDD, je ne sais répondre.

    Ma problèmatique est simple, je souhaite faire de l'autocompletion sur la liste des communes françaises.

    Je dispose d'une table avec de nombreuses infos.

    Seulement, en y regardant de plus près, je me rends compte qu'il existe beaucoup de redondance. Ainsi, chaque ligne, qui représente une commune, dispose d'un champ region et departement.

    J'étais en train d'envisager de "Meriser" un peu tout ça lorsque je me suis posé la question suivante :

    Sachant que cette table ne servira qu'en lecture, est-ce que le fait de créer des tables de liaisons (pour les départements, régions et autres arrondissements afin d'éviter la redondance) va améliorer mes temps de réponse ?

    La requête aura donc plusieurs Join tandis qu'en conservant mon unique table (avec toutes ses données redondantes), je n'effectue qu'un bête Select, d'où mon interrogation.

    D'avance, merci pour vos éclaircissements.

  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 999
    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 999
    Billets dans le blog
    6
    Par défaut
    Toujours les mêmes questions stupide qui en gros se résument à :
    dans une base de données relationnelle, faut-il faire des tables relationnelles ou bien des fichiers Cobol....

    Et bien entendu toujours le même réponse !
    http://blog.developpez.com/sqlpro/p1...ances-petites/

    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
    Expert éminent
    Avatar de CinePhil
    Homme Profil pro
    Ingénieur d'études en informatique
    Inscrit en
    Août 2006
    Messages
    16 818
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur d'études en informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2006
    Messages : 16 818
    Billets dans le blog
    14
    Par défaut
    Tu as tout intérêt à normaliser ta BDD au maximum donc à séparer les communes, les départements et les régions, puisqu'on parle de la France (cette structure hiérarchique n'existe pas dans les autres pays).

    Comme il s'agit de faire de l'autocomplétion, tu n'as besoin que des noms des communes donc inutile a fortiori de charger la table avec des infos parasites.

    Si tu développes avec Zend-Framework, voir mon billet de blog à ce sujet.
    Philippe Leménager. Ingénieur d'étude à l'École Nationale Supérieure de Formation de l'Enseignement Agricole, en retraite... mais toujours Autoentrepreneur à l'occasion.
    Mon ancien blog sur la conception des BDD, le langage SQL, le PHP... et mon nouveau blog sur les mêmes sujets.
    « Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau)
    À la maison comme au bureau, j'utilise la suite Linux Mageïa !

  4. #4
    Membre habitué
    Homme Profil pro
    Expert Base de Données
    Inscrit en
    Janvier 2009
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Expert Base de Données

    Informations forums :
    Inscription : Janvier 2009
    Messages : 16
    Par défaut
    Il faut normaliser.

    Après classique Une table Communes, Une table région, une table Département

    Tables petites (région et département)
    Donc Jointure en cache le plus souvent si ton serveur de BDD a du cache

    Après on peut optimiser encore coté code de l'application (chargement en cache département, region)

    Le gros avantage de normaliser c'est la mise à jour.

Discussions similaires

  1. [Débat] MERISE versus UML ? Avenir de MERISE ?
    Par Matthieu Brucher dans le forum Méthodes
    Réponses: 51
    Dernier message: 15/02/2022, 17h32
  2. [JDBC][connexion persistante] performances avec JDBC
    Par nawac dans le forum Connexion aux bases de données
    Réponses: 6
    Dernier message: 06/05/2003, 10h37
  3. [BEST_PRACTICE][Merise] MCD & gestion de date
    Par Seb7 dans le forum Schéma
    Réponses: 4
    Dernier message: 16/04/2003, 17h07
  4. [Méthodes]UML vs MERISE Lequel pour quoi ?
    Par Daniel258 dans le forum Méthodes
    Réponses: 5
    Dernier message: 31/03/2003, 11h49
  5. performance entre 3DS, ase, asc ...
    Par amaury pouly dans le forum OpenGL
    Réponses: 3
    Dernier message: 24/03/2003, 11h41

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