Optimisation MySQL par division dans plusieurs tables
Bonjour à toutes et à tous,
Je viens tout juste de m'inscrire sur les forums de Developpez.com, site sur lequel je consulte régulièrement les nombreux articles :)
Mon premier message concernera donc l'optimisation d'une table MySQL (autrement que par les INDEX ou autres méthodes traditionnelles).
Contexte : Pour les sites ayant de très grosses bases de données de membres (par exemple 1,000,000 de membres actifs), il parait évident de diviser ces membres en plusieurs tables (ou bases).
Et c'est là que ma question intervient, pour moi, il y a deux solutions possibles :
- Créer, de manière automatique ou manuelle, plusieurs tables membres_1, membres_2, membres_3 dans lesquelles seraient répartis de manière équilibrée tous les membres.
- Créer plusieurs bases de données (base_1, base_2, base_3, ...) où chaque base contiendrait une table membres. Chaque base accueillant un nombre équilibré de membres.
Ces solutions se valent elles ou y en a t-il une mieux que l'autre ?
Pour faire simple, vaut il mieux une simple division des membres en plusieurs tables ou alors carrément une division en plusieurs bases ?
Je précise que j'utilise MySQL 5 sur un serveur dédié (je n'ai donc pas de limitation de taille par base).
Pouvez vous me donnez votre propre avis sur la question ?
Merci d'avance :)