Logo du forum
 

Forum TT-Hardware

| Inscription | | Recherche | | FAQ | | Accueil | | Liste des membres |
| Calendrier |
 
Vous n'êtes pas identifié! [Connexion] ou [Inscription] Forum » Programmation » [SQL / PL-SQL / SGBD] » Optimisation de table
Login Mot de passe

3 visiteurs sur ce topic (0 membre(s), 3 invité(s) )


Auteur
Sujet : Optimisation de table
Bartmoss
Membre actif
Membre # 12351

 Avatar du membre
Lieu : Paris

Messages :
78 (0.04 par jour)


Score :

Message du 19-11-2007 @ 11:36   Afficher le profil   Envoyer un message privé   Editer le message   Citer le message      Afficher l'adresse IP   Alerter les modérateurs   


Bonjour a tous,

Voila mon pb:
Je developpe un site communautaire. Une des table principale de ce site era bien sur la table qui stockera les news/articles.
Cette table ce présente comme ceci:

Code :


art_id     int(11)        PRI    NULL    auto_increment
sec_id     int(11)            
art_flag     varchar(50)               
art_title     varchar(50)                
art_intro     text                
art_text     text                
art_url1     varchar(255)                
art_url2     varchar(255)                
art_img     varchar(50)                
art_img_url varchar(255)                
user_id     int(11)
status_id    tinyint(4)   
art_timestamp    timestamp   



Ma question est la suivante: sachant qu'il y aura environs 30 news/article par mois. Selon votre experience, a partir de combien de record dans cette table on pourrais ressentir une baise de performance notable pour la lecture / ecriture / update.
Je me pose cette question car j'aimerais optimiser les performance ce cette table en faisant par exemple, tout les "N" record, un transferer de certaines news vers une autre table similaire ( un genre de back up dans la bdd ) consultable uniquement sur demande de news archivé

Base: MySQL script: PHP

merci

[message édité le 19-11-2007 @ 11:38 Par Bartmoss]
- Haut de page -
Soulmanto
Codeur du forum
Membre # 5373

 Avatar du membre
Lieu : Lille

Messages :
12837 (5.72 par jour)


Score :

Message du 19-11-2007 @ 13:53   Site personnel   Afficher le profil   Envoyer un message privé   Editer le message   Citer le message      Afficher l'adresse IP   Alerter les modérateurs   

si ta table est correctement indexée, tu pourras avoir un sacré paquet de records avant de sentir une baisse de perfs! :)
----------
Core 2 Duo E6750 2,66 GHz | Asrock Conroe 1333 D667 | 2 Go DDR-II 667 | GeForce 8800 GT 512 Mo | Acer X192W (qui marche bien, sisi spook' :p )
Dell Inspiron 6400 | Core2Duo T5500 | 1 Go DDR-II | ATI X1300 128 Mo

Enfin!! 300 au bowling sur Wii Sports :classe:
- Haut de page -
Bartmoss
Membre actif
Membre # 12351

 Avatar du membre
Lieu : Paris

Messages :
78 (0.04 par jour)


Score :

Message du 19-11-2007 @ 14:17   Afficher le profil   Envoyer un message privé   Editer le message   Citer le message      Afficher l'adresse IP   Alerter les modérateurs   

OK merci

d'ou ma 2eme question comment bien indexer cette table? :)
- Haut de page -
Soulmanto
Codeur du forum
Membre # 5373

 Avatar du membre
Lieu : Lille

Messages :
12837 (5.72 par jour)


Score :

Message du 19-11-2007 @ 14:37   Site personnel   Afficher le profil   Envoyer un message privé   Editer le message   Citer le message      Afficher l'adresse IP   Alerter les modérateurs   

les indexs bien placés sont sur les champs par lesquels tu accèdes le plus souvent à la table : n° d'article, n° de catégorie, n° de rédacteur, statut. Idéalement, un index sera placé sur un champ de type numérique, ce qui est le cas des champs que je t'ai cités en exemple! :)
Rien ne t'empêche aussi de faire des index sur plusieurs champs si cela est nécessaire (par exemple, catégorie + n° de rédacteur, au pif), ça accélèrera les traitements de recherche multicritères, et sur du numérique tes indexs ne seront pas trop gros.

[message édité le 19-11-2007 @ 14:39 Par Soulmanto]
----------
Core 2 Duo E6750 2,66 GHz | Asrock Conroe 1333 D667 | 2 Go DDR-II 667 | GeForce 8800 GT 512 Mo | Acer X192W (qui marche bien, sisi spook' :p )
Dell Inspiron 6400 | Core2Duo T5500 | 1 Go DDR-II | ATI X1300 128 Mo

Enfin!! 300 au bowling sur Wii Sports :classe:
- Haut de page -
Bartmoss
Membre actif
Membre # 12351

 Avatar du membre
Lieu : Paris

Messages :
78 (0.04 par jour)


Score :

Message du 19-11-2007 @ 14:42   Afficher le profil   Envoyer un message privé   Editer le message   Citer le message      Afficher l'adresse IP   Alerter les modérateurs   

ok merci c'est tres claire

mais mon champs art_id étant ma clé primaire en auto increment, n'est t'elle pas automatiquement indexé?

[message édité le 19-11-2007 @ 14:44 Par Bartmoss]
- Haut de page -
Soulmanto
Codeur du forum
Membre # 5373

 Avatar du membre
Lieu : Lille

Messages :
12837 (5.72 par jour)


Score :

Message du 19-11-2007 @ 14:46   Site personnel   Afficher le profil   Envoyer un message privé   Editer le message   Citer le message      Afficher l'adresse IP   Alerter les modérateurs   

sisi, la clé primaire est un index.
----------
Core 2 Duo E6750 2,66 GHz | Asrock Conroe 1333 D667 | 2 Go DDR-II 667 | GeForce 8800 GT 512 Mo | Acer X192W (qui marche bien, sisi spook' :p )
Dell Inspiron 6400 | Core2Duo T5500 | 1 Go DDR-II | ATI X1300 128 Mo

Enfin!! 300 au bowling sur Wii Sports :classe:
- Haut de page -


Aller dans le forum :  

Plan du forum | Contacter l'administrateur

Powered by SoulBB 3.0.1
© Soulmanto, 2003-2006

Valid XHTML 1.0 Transitional

Page générée en 0.096 secondes