Bonjour à tous,

Je suis en train de réfléchir à un modèle pour une DB (MySQL) et j'ignore s'il est viable.
Il s'agit de statistiques sur des joueurs de poker à des tables de jeux.
J'ai :
GAMES(game_id,variante, limite)
JOUEURS(joueur_id,pseudo)
STATS(joueur_id, game_id, stat1, stat2, ...)
Jusqu'ici aucun problème, je peux faire les calculs que je veux comme je veux.

Mais comme je vais avoir une quantité conséquente de stats (de l'ordre de centaines de millions de lignes), je pense à ce modèle :
- je stocke les GAMES et les JOUEURS dans une DB (DB1)
- je stocke les STATS dans une autre DB (DB2). Chaque table de cette DB a pour nom le game_id de chaque GAMES
Si j'ai GAMES(123,TEXAS,10) et GAMES(456,TEXAS,100), j'aurai les tables
123(joueur_id, stat1, stat2...)
et 456(joueur_id, stat1, stat2,...)
dans DB2

Avantage : je "disperse" mes données, je n'ai pas une table STATS unique et gigantesque.
Inconvénient : je veux faire la moyenne de la stat2 à travers les games 123 et 456 pour le joueur 1000. Donc quelque chose qui serait :
SELECT AVG(123.stat2,456.stat2) FROM 123,456 WHERE 123.joueur_id=1000 AND 456.joueur_id=1000
Sachant que l'idéal serait une requête qui arriverait à utiliser une jointure avec la table DB1.GAMES afin de trouver les bonnes tables dans DB2.

J'ai le sentiment que c'est impossible. Je me trompe ? Mon modèle est il inconséquent ? Y a t'il un modèle plus adapté ?


Merci pour votre aide
Antoine