Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1144 connectés 

  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  [SGBD/SQL] Utiliser un index ? Quand ? Comment ?

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[SGBD/SQL] Utiliser un index ? Quand ? Comment ?

n°1708903
gniii2
Posté le 27-03-2008 à 19:02:21  profilanswer
 

Hello,
j'aimerais avoir des informations sur "index".
D'après ce que j'ai compris ça permet d'exécuter plus rapidement les SELECT, mais ça ralentis les INSERT.
Je dis pas trop de bêtises ?
 
Et si je décide de mettre des index dans ma table, est ce que je vais devoir modifier les requêtes sur mes pages PHP ou pas ?
 
Est ce que ça peu valoir le coup de mettre mon champ id qui est actuellement en PRIMARY KEY en index ?
 
Merci d'avance pour votre aide ! :)


Message édité par gniii2 le 27-03-2008 à 19:04:56
mood
Publicité
Posté le 27-03-2008 à 19:02:21  profilanswer
 

n°1708905
ccp6128
Syntax error
Posté le 27-03-2008 à 19:15:31  profilanswer
 

Quelques petites révisions sur ce topic : http://forum.hardware.fr/hfr/Progr [...] 6416_1.htm

n°1708914
gniii2
Posté le 27-03-2008 à 19:36:07  profilanswer
 

merci c'est très intéressant comme liens ! Je comprend mieux les index :)
Et donc pour être sur : si je met des champs en index, les requêtes SQL que j'utilise actuellement resterons les même donc.
Et comme mettre en index un champ est très simple, je peu facilement modifier les index de ma table pour faire des tests.
Je me trompe pas trop ? ^^
 
Ha, et en ce qui consscerne ca :  

Citation :

Est ce que ça peu valoir le coup de mettre mon champ id qui est actuellement en PRIMARY KEY en index ?


 
Encore merci.


Message édité par gniii2 le 27-03-2008 à 19:37:50
n°1708935
olivthill
Posté le 27-03-2008 à 20:19:20  profilanswer
 

Oui, l'ajout ou la suppression d'index ne necessite aucun changement dans les requêtes.
Les primary keys sont déja indexées par défaut.


Message édité par olivthill le 27-03-2008 à 20:20:33
n°1708957
gniii2
Posté le 27-03-2008 à 21:13:57  profilanswer
 

Merci beaucoup !
 
Une dernière question à propos des index.
Prenons l'exemple de mon site : un jeu en PHP.
J'utilise souvent l'expérience des joueurs : pour afficher le classement, les joueurs attaquables, la position du joueurs, etc.
Je pensais donc le mettre en index. Mais il y a souvent des UPDATE sur l'expérience d'un joueur.
Est ce que ça peut être intéressant de faire un index sur l'expérience ?

n°1709010
MagicBuzz
Posté le 28-03-2008 à 01:51:50  profilanswer
 

a tester.
 
les problèmes de performances de mise à jour des index, ça se pose surtout quand on met à jour des milliers de lignes par seconde... j'imagine que ton jeu en PHP, c'est plutôt de l'ordre de 1000 lignes toutes les heures.
vérifie tout de même dans la doc de mysql que tes index se réordonnent automatiquement : en effet, un index, ça se résume grossomodo comme un arbre, et qui dit arbre, dit chutte massive des performances lorsqu'il est déséquilibré (ce qu'on appelle pollution pour un index). généralement, les SGBD actuel réordonnent automatiquement les index lorsqu'ils détectent une trop grand pollution quand ils sont paramétrés par défaut, mais ce n'est pas toujours le cas : à surveiller donc


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  [SGBD/SQL] Utiliser un index ? Quand ? Comment ?

 

Sujets relatifs
creation d'un indexQuel SGBD choisir?
[Builder 6]récpere le résultat d'une requête SQL d'un composant TQuery[SQL Server] Jointure avec valeur de champ comme nom de table
[résolu] liens vers requetes SQL(débutant) mise en page requete SQL.
Requête SQLSQL - Transfert base de donnée importante
SQl pourquoi plusieurs type de jointure[Résolu] Redirection htaccess index.php vers index.php?page=
Plus de sujets relatifs à : [SGBD/SQL] Utiliser un index ? Quand ? Comment ?


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR