stats, optimiser le calcul du délai de traitement (#81734) #883

Merged
vdeniaud merged 3 commits from wip/81734-vdeniaud into main 2023-11-30 16:42:48 +01:00
Owner

Version largement allégée de la version de Pierre (#777).

Le problème c'est qu'on charge toutes les évolutions, ça représente des Go de données, donc la solution c'est d'éviter de charger ce dont on a pas besoin.

Pierre proposait de tout faire en SQL, et ma proposition c'est de garder un mix, en faisant attention côté SQL à récupérer le moins de données possible, sans toutefois trop complexifier la requête.

0001 : puisqu'on va traduire du python en SQL, c'est utile de simplifier le python au max avant, ici une gymnastique inutile
0002 : il manquait des tests pour des cas pas si limites
0003 : le patch

Version largement allégée de la version de Pierre (https://git.entrouvert.org/entrouvert/wcs/pulls/777). Le problème c'est qu'on charge toutes les évolutions, ça représente des Go de données, donc la solution c'est d'éviter de charger ce dont on a pas besoin. Pierre proposait de tout faire en SQL, et ma proposition c'est de garder un mix, en faisant attention côté SQL à récupérer le moins de données possible, sans toutefois trop complexifier la requête. 0001 : puisqu'on va traduire du python en SQL, c'est utile de simplifier le python au max avant, ici une gymnastique inutile 0002 : il manquait des tests pour des cas pas si limites 0003 : le patch
vdeniaud force-pushed wip/81734-vdeniaud from 85e4d565cf to 32bf18f82c 2023-11-29 12:00:20 +01:00 Compare
vdeniaud changed title from WIP: stats, optimiser le calcul du délai de traitement (#81734) to stats, optimiser le calcul du délai de traitement (#81734) 2023-11-29 13:19:09 +01:00
fpeters approved these changes 2023-11-30 15:42:07 +01:00
fpeters left a comment
Owner

Je valide avec ma petite remarque.

Je valide avec ma petite remarque.
wcs/sql.py Outdated
@ -2328,0 +2353,4 @@
'''
sql_statement += ' WHERE ' + ' AND '.join(where_clauses)
sql_statement += ' GROUP BY f.id'
sql_statement += ' ORDER BY res_time'
Owner

Il me semble qu'il y aurait moyen de tout mettre dans la même f-string,

...
WHERE {' AND '.join(where_clauses)}
GROUP BY f.id
ORDER BY res_time
Il me semble qu'il y aurait moyen de tout mettre dans la même f-string, ``` ... WHERE {' AND '.join(where_clauses)} GROUP BY f.id ORDER BY res_time ```
Author
Owner

Je suis trop vieux pour penser à mettre les appels de fonctions à l'intérieur d'une chaîne de caractère :)

Je suis trop vieux pour penser à mettre les appels de fonctions à l'intérieur d'une chaîne de caractère :)
vdeniaud force-pushed wip/81734-vdeniaud from 32bf18f82c to ff91ce5181 2023-11-30 16:14:04 +01:00 Compare
vdeniaud force-pushed wip/81734-vdeniaud from ff91ce5181 to 78d64f0b04 2023-11-30 16:14:15 +01:00 Compare
vdeniaud merged commit 78d64f0b04 into main 2023-11-30 16:42:48 +01:00
vdeniaud deleted branch wip/81734-vdeniaud 2023-11-30 16:42:48 +01:00
Sign in to join this conversation.
No reviewers
No Label
No Milestone
No Assignees
2 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: entrouvert/wcs#883
No description provided.