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

Optimisations SGBD Discussion :

Recherche dans db ? diff entre 2 et x champs


Sujet :

Optimisations SGBD

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    opérateur
    Inscrit en
    Avril 2023
    Messages
    30
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : Belgique

    Informations professionnelles :
    Activité : opérateur

    Informations forums :
    Inscription : Avril 2023
    Messages : 30
    Par défaut Recherche dans db ? diff entre 2 et x champs
    Bonjour,

    Une question sur l’existence ou non d'une différence de temps de réponse lors d'une recherche portant sur 1, ou 2 champs dans une table.

    Y'a aurait il un gain de performance et une utilité à créer deux tables plutôt qu'une.

    Par exemple;

    Dans le cas ou une table utilise par exemple 25 champs tout type et que, le principal des recherches dans celle-ci portent sur 3 champs, par exemple id et 2 varchar.
    Vaut-il mieux créer une table avec ces 3 champs et porter les recherches dans celle-ci, pour ensuite utiliser une autre table différenciée et l'utiliser selon la nécessité.

    Merci et la bonne journée

  2. #2
    Modérateur
    Avatar de al1_24
    Homme Profil pro
    Retraité
    Inscrit en
    Mai 2002
    Messages
    9 138
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 65
    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 138
    Par défaut
    Bonjour,

    Une troisième voie existe : créer un index sur ces colonnes de recherche.
    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.

  3. #3
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    22 022
    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 : 22 022
    Billets dans le blog
    6
    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/ * * * * *

  4. #4
    Modérateur
    Avatar de Waldar
    Homme Profil pro
    Sr. Specialist Solutions Architect @Databricks
    Inscrit en
    Septembre 2008
    Messages
    8 454
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Sr. Specialist Solutions Architect @Databricks
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2008
    Messages : 8 454
    Par défaut
    Citation Envoyé par PrincessLoiseau Voir le message
    Dans le cas ou une table utilise par exemple 25 champs tout type et que, le principal des recherches dans celle-ci portent sur 3 champs, par exemple id et 2 varchar.
    Vaut-il mieux créer une table avec ces 3 champs et porter les recherches dans celle-ci, pour ensuite utiliser une autre table différenciée et l'utiliser selon la nécessité.
    C'est ce qu'on appelle parfois le partitionnement vertical, ça a son intérêt dans certains cas avec de fortes volumétries.
    Sinon vous pouvez utiliser un SGBD colonne, ainsi la question ne se pose plus (mais ces SGBD sont adaptés à de l'analytique et non du transactionnel).

    Pour des recherches "simples" je rejoins les préconisations précédentes de mes collègues à savoir l'ajout d'index.

  5. #5
    Membre averti
    Homme Profil pro
    opérateur
    Inscrit en
    Avril 2023
    Messages
    30
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : Belgique

    Informations professionnelles :
    Activité : opérateur

    Informations forums :
    Inscription : Avril 2023
    Messages : 30
    Par défaut
    Et sur le plan technique,

    Outre l'importance d'ordre des champs.

    Vous appliqueriez ceci à partir de quel quantité de ligne attendues.

    J'imagine que sous 100 ou 1000, cela n'a pas d'influence.

    vous partiriez à partir de ?

  6. #6
    Modérateur
    Avatar de Waldar
    Homme Profil pro
    Sr. Specialist Solutions Architect @Databricks
    Inscrit en
    Septembre 2008
    Messages
    8 454
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Sr. Specialist Solutions Architect @Databricks
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2008
    Messages : 8 454
    Par défaut
    Ça dépend de votre SGBD et du hardware derrière, mais en-dessous de x millions de lignes ça n'a probablement qu'un intérêt limité.

  7. #7
    Membre averti
    Homme Profil pro
    opérateur
    Inscrit en
    Avril 2023
    Messages
    30
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : Belgique

    Informations professionnelles :
    Activité : opérateur

    Informations forums :
    Inscription : Avril 2023
    Messages : 30
    Par défaut
    Citation Envoyé par Waldar Voir le message
    ..., mais en-dessous de x millions de lignes ça n'a probablement qu'un intérêt limité.
    lol

    Un bon ordre des champs et un index me semble déjà pas mal.

    Le million de lignes

  8. #8
    Modérateur
    Avatar de Waldar
    Homme Profil pro
    Sr. Specialist Solutions Architect @Databricks
    Inscrit en
    Septembre 2008
    Messages
    8 454
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Sr. Specialist Solutions Architect @Databricks
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2008
    Messages : 8 454
    Par défaut
    J'ai quelques clients qui ont dépassé le billion de lignes (mille milliards ou encore un million de million) dans la même table.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 3
    Dernier message: 06/02/2009, 19h39
  2. Rechercher le début d'entrées dans une table
    Par adrien.gendre dans le forum VBA Access
    Réponses: 3
    Dernier message: 17/07/2007, 11h25
  3. Réponses: 5
    Dernier message: 13/07/2007, 15h46
  4. Recherche dans table de BDD par rapport à deux champs
    Par kiops dans le forum Bases de données
    Réponses: 4
    Dernier message: 09/03/2007, 13h21
  5. Réponses: 5
    Dernier message: 27/01/2007, 22h19

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