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

Administration MySQL Discussion :

Performances de MySQL


Sujet :

Administration MySQL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2003
    Messages
    179
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Nouvelle-Calédonie

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mai 2003
    Messages : 179
    Par défaut Performances de MySQL
    Bonjour à tous

    J'ai besoins de ranger, dans une base MySQL les données d'un grand nombre de clients (>1000). "L'espace de travail" de chaque client comporte une cinquantaine de tables. Pour caractériser les tables d'un client, le nom des tables est préfixé par un numéro de client.
    - faut-il tout mettre dans la même base avec plus de 50 000 tables !!!
    - faut-il limiter le nombre de client par base de données et multiplier le nombre de base de données. (100 clients par base sur 10 bases)

    Dans quel cas aura-t-on les meilleures performances ?
    Merci de vos lumières.
    YC

  2. #2
    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
    Il vaut mieux faire une seule BDD et ne pas faire des tables par client !
    Il suffit d'une clé étrangère dans les tables pour différentier les données entre les clients.
    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 !

  3. #3
    Membre éclairé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2003
    Messages
    179
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Nouvelle-Calédonie

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mai 2003
    Messages : 179
    Par défaut
    OK, là c'est pas du tout ce que j'avais prévu !!!
    Bien sûr la gestion devient tout d'un coup plus simple... mais mes tables risque prendre des tailles colossales !!
    Je n'ai pas fait une étude très précise des volumes par client, mais je pense que chaque clients pèsera en moyenne 300Mo et donc 1000 clients 300Go
    Ça m'effraye un peu !

    Cette grande tailles des tables ne risque telle pas plomber les temps de réponses ?

    Merci pour ta réponse.
    YC

  4. #4
    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
    1000 clients, ce n'est vraiment pas beaucoup. Quelles données font qu'il y a 300 Mo par client ? Aurais-tu stocké des fichiers dans la BDD ?
    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 !

  5. #5
    Membre éclairé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2003
    Messages
    179
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Nouvelle-Calédonie

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mai 2003
    Messages : 179
    Par défaut
    En fait, tout ça existe déjà chez les clients, mais sous forme d'applications installées sur PC exploitant une base de données informix sur un serveur local UNIX. Entre 5 et 10 postes par clients. Les bases de donnée informix font environ 300Mo. L'une d'elle fait même 500Mo.
    Voila ce qui est a l'origine de mes déductions de taille.
    Aujourd'hui nous avons de bonnes performances, tout étant un peu surdimensionné.
    Les données sont des très gros textes des scans et un ensemble de données propres a chaque client (de nos client). Bien sur on devrait pouvoir faire mieux et améliorer la taille des données mais ce n'est pas a l'ordre du jour.

    Je ne voudrais pas qu'en externalisant les données on perde trop de performances.

  6. #6
    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
    Je ne sais pas comment Informix gère les fichiers en BDD. Peut-être utilise t-il le même principe que SQL Server qui ne stocke pas réellement les fichiers en BDD mais dans un espace de stockage qu'il contrôle entièrement, ce qui fait que le volume de données est moins important.

    En MySQL, il est recommandé de ne stocker en BDD que le nom du fichier et d'enregistrer les fichiers réels dans un espace de stockage séparé de la BDD. C'est le programme applicatif qui s'occupe alors du téléchargement des fichiers vers l'espace de stockage et qui va les lire à partir des informations fournies par la BDD.

    Voir l'article de SQLPro à ce sujet.

    Mais puisque tout est sur Informix chez les clients, pourquoi vouloir tout mettre sur MySQL chez toi ? Les types de colonnes sont-ils identiques ? Les fonctions utilisées dans les BDD Informix sont-elles toutes compatibles avec ce que sait faire MySQL ?

    Bref, il faut étudier ça plus en détail et commencer par se demander pourquoi vous voulez rapatrier toutes les données des clients chez vous. En avez vous même le droit étant donné que les données des clients leur appartiennent ?
    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 !

Discussions similaires

  1. Performances de MySQL
    Par toffff dans le forum Outils
    Réponses: 6
    Dernier message: 06/03/2007, 08h57
  2. Performance maximal MySQL
    Par LhIaScZkTer dans le forum Requêtes
    Réponses: 3
    Dernier message: 06/02/2007, 19h19
  3. Performances SimpleXML / MySQL
    Par Benji76 dans le forum Langage
    Réponses: 1
    Dernier message: 11/01/2007, 22h29
  4. Performance de MySQL
    Par dragonspyro93 dans le forum Débuter
    Réponses: 8
    Dernier message: 05/06/2006, 20h50
  5. Performances de MySQL pour de grandes bases
    Par arthix dans le forum Outils
    Réponses: 6
    Dernier message: 06/03/2006, 14h46

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