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

MySQL Discussion :

augmentation Performance MYSQL hard/soft


Sujet :

MySQL

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 4
    Points : 2
    Points
    2
    Par défaut augmentation Performance MYSQL hard/soft
    Bonjour,
    Je viens sonder votre opinion pour un problème de performance.
    J'explique ma situation :
    J'utilise une base de données Mysql pour stocker les données de notre GPAO/ERP. Ces données sont lue par des programmes en Qt/C++ et stocké dans des tables MyIsam.
    La base n'est pas énorme en gros la base fait 2Go et la plus grosse table fait 600Mo. Par contre on a un nombre énorme d'accès et de requêtes a la seconde. Et ces requêtes sont réparti a 50/50 en lecture et écriture.
    Le serveur Mysql est un DELL avec un bi-XEON 2.8GHz, 2 giga de ram, 3 disques SCSI 15Ktr/min monté en RAID5.

    En ce moment on fait face a un vrai problèmes de performances auquel on cherche des solutions.

    c'est pour cela que je viens vous demander votre avis. Pour ce type de systèmes et sachant qu'on souhaite avoir une solution pérenne que prendriez vous comme matériel et que changeriez vous pour ne pas avoir a vous dire dans trois ans : "mince ca rame encore" et pour sentir un vrai gain de performance sachant que les investissements ne sont pas forcément une limite?

    Merci d'avance pour vos réponses.

  2. #2
    Expert éminent Avatar de kain_tn
    Homme Profil pro
    Inscrit en
    Mars 2005
    Messages
    1 699
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations forums :
    Inscription : Mars 2005
    Messages : 1 699
    Points : 7 959
    Points
    7 959
    Par défaut
    Je ne sais pas comment sont construites ton application et ta base et tu as peut-être déjà pensé à ce qui suit mais tu peux peut-être gagner en performances de la façon suivante, avant de changer de matériel:

    - faire un explain sur chacun de tes requêtes et poser des index efficaces et si possibles couvrants (http://sqlpro.developpez.com/cours/quoi-indexer/)
    - de la même façon, retirer les indexes inutiles, vérifier que les types et tailles des colonnes sont adaptées
    - pour les requêtes en lecture un peu longues ou compliquées, créer des vues
    - éventuellement, utiliser du partitionnement vertical et/ou horizontal au niveau de tes tables.

    Sinon côté matériel, tu peux peut-être augmenter la RAM de ta machine. La config me parait plus que correcte pour une base moyenne, et les disques sont rapides. En revanche, je pense que tu aurais plus d'I/O en utilisant du Raid1E plutôt que du Raid5.

    Il peut-être intéressant de faire un tour dans la section "informations sur le serveur" dans PHPMyAdmin afin de voir les statistiques de ton serveur et chercher les requêtes les plus utilisées, les plus couteuses en temps, regarder ce que tu peux optimiser au niveau code et ce que tu peux optimiser au niveau des paramètres de ta base.

    Enfin, au niveau architecture, tu peut également essayer avec plusieurs bases (maître/esclaves): tu fais les requêtes en lecture sur les bases esclaves (synchronisées sur la base maître) et les requêtes en écriture sur la base maître.

  3. #3
    Membre éprouvé Avatar de Jester
    Inscrit en
    Septembre 2003
    Messages
    813
    Détails du profil
    Informations forums :
    Inscription : Septembre 2003
    Messages : 813
    Points : 1 057
    Points
    1 057
    Par défaut
    De la RAM., vous avez 2Go de données, il faut 4Go de RAM.

    Peut-être passer en InnoDB qui a un meilleur cache des données (à configurer à 2.5Go), quitte à mettre du write_delay pour ne pas être ralenti par la sécurité de ce moteur.

    Le RAID mirroring sera sans doute plus rapide que le RAID 5 en effet.

    Il faut déjà voir où est la contention, cf www.mysqlperformanceblog.com

  4. #4
    Membre éprouvé
    Avatar de Sivrît
    Profil pro
    Inscrit en
    Février 2006
    Messages
    953
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Février 2006
    Messages : 953
    Points : 1 249
    Points
    1 249
    Par défaut
    Une si forte charge avec un volume de données qui reste faible alors que le ratio de lecture est assez bas, ça laisse penser qu'il y a beaucoup de modifications. Ça rejoint l'avis précédent, il faudrait si le verrouillage par table de MyIsam n'est pas problématique avec une telle concurrence. InnoDb mériterait certainement un test.

Discussions similaires

  1. Niveau de performance MySql
    Par florent_gal dans le forum SQL Procédural
    Réponses: 2
    Dernier message: 17/08/2006, 17h31
  2. performance MySql
    Par Sylvain245 dans le forum Requêtes
    Réponses: 2
    Dernier message: 30/01/2006, 18h33
  3. Réponses: 3
    Dernier message: 21/10/2005, 15h56
  4. performances mysql (10 a 100 millions de rows)
    Par killy-kun dans le forum Outils
    Réponses: 1
    Dernier message: 21/07/2005, 16h06
  5. [Conception][performance] mysql table de 10000 enregistrements / hashmap
    Par debdev dans le forum Collection et Stream
    Réponses: 5
    Dernier message: 09/07/2005, 12h29

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