Ok, je ne sais vraiment pas comment demander ce que je cherche pour savoir pourquoi ma lecture et mes recherches ne donnent rien de relatif. Donc, ce que j'ai actuellement, c'est une seule base de données MySQL, et je sais que tôt ou tard les données vont s'accumuler et je manquerai de place sur ce serveur. Donc, avant que cela ne se produise, je veux mettre les choses en ligne afin de pouvoir répartir la base de données sur plusieurs machines, une pour l'équilibrage de charge et deux pour le facteur de stockage pur.
Donc ma question est, comment ça marche? Peut-être que je pense aussi à 1 Dimensional ici, mais je ne peux pas comprendre comment cela fonctionnerait, est-ce une base de données qui déborde sur la machine suivante et la suivante à mesure que les données augmentent ou s'agit-il de bases de données individuelles avec le même schéma pour chacune, de toute façon, je ne peux pas imaginer dans ma tête et encore moins entrer dans une logique d'épreuvage futur sur laquelle on travaille actuellement. Comme nous ne voulons pas frapper le mur et faire un arrêt total dans le cas où les données sont juste trop pour une seule machine.
Alors, que dois-je lire, rechercher, méthodes, pratiques, etc. pour me mettre sur la bonne voie avec cela?
Réponses:
Vous pouvez en effet, c'est le clustering MySQL dont vous avez besoin.
Une fonctionnalité en particulier - le " partage automatique " - répartira vos données sur plusieurs machines. La "mise à l'échelle en ligne" vous permet d'ajouter de nouveaux nœuds si vous avez besoin de plus de capacité pendant que la base de données est en cours d'exécution. Plutôt cool. Vous pouvez le télécharger ici .
Cependant, il existe quelques autres éléments que vous pouvez envisager pour résoudre le problème, qui peuvent être plus faciles à réaliser:
Obtenez un disque dur plus grand!
Cela semble un peu évident, mais si vous pouviez dire en toute sécurité qu'un disque dur de xxx Go durerait Y ans, cela pourrait valoir la peine. Vous pouvez soit prendre une image du lecteur et l'installer sur le nouveau, soit l'installer en tant que lecteur supplémentaire et déplacer les fichiers de données MySQL vers le nouveau lecteur. <
Répartissez les tables sur plusieurs bases de données.
Répartissez les tables sur plusieurs bases de données, qui peuvent ensuite être stockées sur plusieurs lecteurs. Windows Azure a des limitations de taille sur ses bases de données et Microsoft recommande cette approche. Il améliore également un peu les performances.
Pouvez-vous archiver des données?
Pouvez-vous archiver de grandes tables sur un autre lecteur? Les données sont-elles vraiment nécessaires? S'il est historique et uniquement requis pour référence, pouvez-vous mettre en place un processus d'archivage qui le pousse dans des fichiers sur un autre lecteur, ou dans des tables d'archives dans une autre base de données qui pointe vers des fichiers de données sur un autre lecteur?
la source