par
pierreC » 17 déc. 2008, 17:29
Hello,
Toujours dans mes soucis de calcul intense de données, j'ai opté pour les bases en memoire, c'est pour l'instant très concluant mais mon imagination à encore une nouvelle idée mais je sais pas si c'est possible.
Actuellement mon algo :
CREATE TABLE table_mem TYPE=MEMORY SELECT une,dizaine,de,col FROM client WHERE (une dizaine de condition SQL)
et ensuite j'effectue une multitude de calcul sur cette table en mémoire (et ca boost vraiment beaucoup, que du bonheur)
Le problème c'est que la création de la table_mem prend entre 2 et 4 minutes (c'est pas affreux dans mon cas, mais je ne pouvais passer à 30s sa serait super)
Là où mon imagination est débordante est que dans l'utilisation du site web, je connais avec quelque clic d'avance la requete sql à executer pour créer ma table_mem avant que le user demande toutes la suite de calcul.
Ma question est donc : est t"il possible de précalculer le create table de manièrer désynchoniser en php (pas d'attente de la réponse) et par la suite executer des requetes sur cette table_mem qui si elle n'est pas encore finit d'etre créer, les requetes seront en attente ?
C'est clair ?
expliquer par l'exemple :
Le users se connecte -> lancement du create table table_mem en asynchrone (Il faut 4min pour la fin de la création)
le user clic clic clic et se balade
40 secondes plus tard le user décide du lancement des calcul
Execution du multitude de requete du genre select count(col1) from table_mem (mais la table mem n'est peut etre pas finit d'etre crée).
Merci
Hello,
Toujours dans mes soucis de calcul intense de données, j'ai opté pour les bases en memoire, c'est pour l'instant très concluant mais mon imagination à encore une nouvelle idée mais je sais pas si c'est possible.
Actuellement mon algo :
CREATE TABLE table_mem TYPE=MEMORY SELECT une,dizaine,de,col FROM client WHERE (une dizaine de condition SQL)
et ensuite j'effectue une multitude de calcul sur cette table en mémoire (et ca boost vraiment beaucoup, que du bonheur)
Le problème c'est que la création de la table_mem prend entre 2 et 4 minutes (c'est pas affreux dans mon cas, mais je ne pouvais passer à 30s sa serait super)
Là où mon imagination est débordante est que dans l'utilisation du site web, je connais avec quelque clic d'avance la requete sql à executer pour créer ma table_mem avant que le user demande toutes la suite de calcul.
Ma question est donc : est t"il possible de précalculer le create table de manièrer désynchoniser en php (pas d'attente de la réponse) et par la suite executer des requetes sur cette table_mem qui si elle n'est pas encore finit d'etre créer, les requetes seront en attente ?
C'est clair ?
expliquer par l'exemple :
Le users se connecte -> lancement du create table table_mem en asynchrone (Il faut 4min pour la fin de la création)
le user clic clic clic et se balade
40 secondes plus tard le user décide du lancement des calcul
Execution du multitude de requete du genre select count(col1) from table_mem (mais la table mem n'est peut etre pas finit d'etre crée).
Merci