Forum

 FAQFAQ   RechercherRechercher   Liste des MembresListe des Membres  Chat   S'enregistrerS'enregistrer 
 ProfilProfil   Se connecter pour vérifier ses messages privésSe connecter pour vérifier ses messages privés   ConnexionConnexion 

Recherche informaticien/programmeur turfiste
Aller à la page Précédente  1, 2, 3, 4, 5, 6  Suivante
 
Poster un nouveau sujet   Répondre au sujet    Forum -> Discussions sur les courses en général
Voir le sujet précédent :: Voir le sujet suivant  
Auteur Message
lazare



Inscrit le: 21 Juin 2005
Messages: 1063

MessagePosté le: 27 Mai 2016 21:27    Sujet du message: Répondre en citant

Merci pour l'attention que vous avez portée à ces deux deux tableaux.

Je vais tâcher de répondre à chacune de vos requêtes mais accordez-moi un peu temps car j'ai encore un petit souci avec ma base : il y quelques semaines, une de mes 74 tables a été corrompue pour une raison que je ne connais pas : c'était une table d'une importance capitale pour la base. Résultat : presque 100 000 courses à récupérer !

J'ai déjà passé presque 3 semaines à la réparer mais il me faudra encore plusieurs jours pour tout remettre en ordre.

Citation:
en fonction de l'hippodrome, et uniquement en terrain lourd et défoncé.
C'est difficile de faire ça, vu qu'il y a 479 hippodromes, toutes disciplines confondues.

Selon cette table il y a 13 états différents, "lourd et défoncé" correspond à quels idTerrain ?

Revenir en haut
Voir le profil de l'utilisateur
Invité






MessagePosté le: 27 Mai 2016 22:57    Sujet du message: Répondre en citant

Lazre,
Pour du terrain profond (collant, lourd, très lourd), je dis IdTerrain in (10, 6, 2).
Pour ce qui est des chevaux avec des numéros de cordes, ceci s'applique au plat, logiquement tu auras beaucoup moins d'hippodromes.
Pour ta table endommagée, au pire tu ne peux pas la réinjecter dans une autre table ? Insert into table_destination (id, champ1, champ2) select id, champ1, champ2 from table_source.
En mettant avant et après set identity on / off
Avec mysql, je ne connais pas leur syntaxe, si c'était du ms sql serveur, je pourrais te dépanner.
Revenir en haut
Invité






MessagePosté le: 27 Mai 2016 23:01    Sujet du message: Répondre en citant

Si j'ai parlé de cordes, il ne peut s'agir que de la discipline du PLAT et les hippodromes PMU pas l'hippodrome de Plouescat ou de Tataouine les Ombrelles.

Hippodromes Gazon: Chantilly-Châteaubriand-Clairefontaine-Compiègne-Craon-Deauville-Fontainebleau-Le Croisé Laroche-Longchamp-Lion d'Angers-Lyon Parilly-Maisons Laffite-Saint Cloud-Strasbourg-Toulouse-Vichy

Terrain: 02-06-10-12
Revenir en haut
lazare



Inscrit le: 21 Juin 2005
Messages: 1063

MessagePosté le: 27 Mai 2016 23:36    Sujet du message: Répondre en citant

Hello Ludo Cool
ludo96x a écrit:
Pour ce qui est des chevaux avec des numéros de cordes, ceci s'applique au plat, logiquement tu auras beaucoup moins d'hippodromes.
Evidemment que ça ne m'a pas échappé mais c'était juste pour dire qu'il y a bcp d'hippodromes ..

ludo96x a écrit:
Avec mysql, je ne connais pas leur syntaxe, si c'était du ms sql serveur, je pourrais te dépanner.
Merci pour ta proposition Ludo, c'est gentil. J'y ai passé des nuits à tenter de sauver cette foutue table, j'ai tout essayé (tentative de désactivation des contraintes, voire suppréssion des liens etc.) mais rien n'y fait :

Toujours ce message : "ERROR 1712 (HY000): Index Partant is corrupted".

J'ai fini par me resoudre à faire table rase et restaurer ce que j'avais dans un vieux fichier de backup (encore heureux !). Ce qui m'a quand même grandement limité les dégâts. Sur les 100 000 perdus, il me reste environ 15 000 à restaurer, plus qu'une histoire de patience et de courage ...

@ pluche Clin d'oeil
Revenir en haut
Voir le profil de l'utilisateur
lazare



Inscrit le: 21 Juin 2005
Messages: 1063

MessagePosté le: 28 Mai 2016 2:28    Sujet du message: Répondre en citant

Polo a écrit:
grouper par nombre de partants, sinon les pourcentages sont faussés.

Oui, c'est ce que je m'étais dit aussi.

Il y a des bases de données en vente sur certains sites, du style gigaturf (en fin de vie ?), turfbase et quelques unes qui ont l'air très intéressantes. On en a souvent parlé ici. Tu peux peut-être y trouver ton bonheur. Je te le souhaite ...Sourire

J'ai fait ces 6 tableaux qui concernent uniquement les courses de 16 partants effectifs. C'était très pénible à faire en fait mais quel plaisir une fois que c'est fait et j'ai grandement amélioré la rapidité des réponses en faisant intervenir des tables intermédiaires (temporaire ou non).
(Peut-être aurais-je mieux fait d'utiliser des procédures stockées ou autres choses Ludo ?)

J'ai choisi "16" car en testant les différentes catégories de lots, j'ai vu que c'est le nombre de partants le plus fréquent. (le nombre de partants variant de 2 à plus de 30).

Au-delà du numéro 16, rien de significatif car il y a relativement peu de partants portant ces numéros-là pour les courses à 16 partants.

Courses à 16 partants :




Trot à 16 partants :




Plat à 16 partants :


Revenir en haut
Voir le profil de l'utilisateur
Polo



Inscrit le: 26 Mai 2016
Messages: 34

MessagePosté le: 28 Mai 2016 5:27    Sujet du message: Répondre en citant

@juandepedro
Salut,
tu m'as contacté par MP et j'ai tenté de t'y répondre, mais mon mail reste désespérément dans la boîte d'envoi... car tu sembles avoir disparu des écrans de contrôle (profil supprimé ?).
Si tu me lis et que tu veux connaître le contenu de ma réponse, tu sais quoi faire.
Revenir en haut
Voir le profil de l'utilisateur
Polo



Inscrit le: 26 Mai 2016
Messages: 34

MessagePosté le: 28 Mai 2016 5:51    Sujet du message: Répondre en citant

Salut Lazare et merci pour le temps que tu y as passé. Cool J'espère pour toi, pas une bonne partie de la nuit, vue l'heure de ton post ! Je vais regarder ça de près.

Par curiosité, ta base, tu l'as achetée parmi un des revendeurs que tu cites ou bien tu te l'es construite en siphonnant un site (dans ce cas, si tu peux me préciser lequel en MP, ça serait sympa) ?
Revenir en haut
Voir le profil de l'utilisateur
Invité






MessagePosté le: 28 Mai 2016 7:42    Sujet du message: Répondre en citant

Lazare,

Je confirme, lorsque tu peux passer par des procédures stockées avec des tables temporaires surtout pour faire des stats, n'hésite pas.

De plus lorsque tu la relances ou tu l'appelles avec d'autres paramètres, ce sera dans ton cache d'exécution, du coup bien plus rapide.

De plus je vois que tu utilises des requêtes imbriquées, c'est hyper lent, si c'est pour du "one shot" pourquoi pas. Si tu peux joindre des tables par des INNER JOIN si tes tables sont bien indexées avec clefs primaires, tu verras que tu y gagneras en performance.

Avec MySql, je ne sais pas s'ils on mis un outil en place, sur Ms SqlServeur celui-ci s'appelle "Afficher le plan d'exécution". Il te dit justement les index manquants, les taux de calculs utilisés pour chaque instructions de la requête, ...

Pour ton souci de table corrompues, tu dois avoir un peu trop d'index sur celle-ci, du coup il est obligé de recalculé tous les index dès que celle-ci est appelée.
Visiblement c'est une table avec les différents rapports. Pour ma part, il y a juste une clef primaire sur la colonne d'IdCourse et c'est tout.
Il faut juste avoir à l'esprit que trop d'index tuent une base. Rien ne t'empêche de supprimer tous les index de toutes les tables et les revoir un par un, je sais c'est long, mais c'est ce qu'on appelle du tunning de base. Tous les DBA passent malheureusement par cette étape.

Pour ce qui est de la sauvegarde, heureusement que tu en fais comme tu dis. Tu le fais en full ou en différentielle ? Ce que je veux savoir c'est si tu laisse ta base en mode de sauvegarde complète ou simple car dans le cas du complet tu auras des logs qui vont augmenter mais que tu pourras rejouer par différentielle. Surtout penses à ton enveloppe de base car tes logs peuvent très vite saturées ton disque.

N'hésite as si tu as des questions, en espérant que les syntaxes de MySql seront compatibles avec ce que je te dis....

Amicalement.
Revenir en haut
Invité






MessagePosté le: 28 Mai 2016 8:54    Sujet du message: Répondre en citant

Lazare,

Si tu veux comparer tes chiffres avec les miens, sur ce lien, j'ai mis que les informations de la réunion 1 (logiquement on devrait avoir les mêmes courses) :

http://ludo96x.free.fr/xls/pourcentage_chevaux_full_reunion_1.xls

C'est pour toutes les disciplines, les courses annulées sont retirées et les chevaux non partants ne sont pas comptabilisés.
Revenir en haut
lazare



Inscrit le: 21 Juin 2005
Messages: 1063

MessagePosté le: 29 Mai 2016 0:18    Sujet du message: Répondre en citant

@ Ludo,

Merci beaucoup pour tes précieux conseils sur la jointure. La différence est phénoménale !
Je n'ai pas utilisé de procédure cataloguée ici mais c'est notée, ça me servira toujours de toute façon.

Je n'ai plus le courage d'essayer de sauver ma table corrompue. J'ai lu des pages et des pages du site dba.stackexchange.com, entre autres, tout essayé sans succès ... impossible de faire quoi que ce soit : supprimer les index, copier la table ou faire n'importe quelle opération ou requête dessus. De plus, j'ai lu quelque part, que quand un cas décrit comme le mien arrive, il n'y a absolument rien à faire ou alors il faudrait intervenir "en bas niveau", bref, une grosse prise de tête et je me suis dit : "tant pis, ça me sert de leçon !"

Mon fichier de backup.sql est issu de l'instruction mysqldump, en full, impossible à faire quand la base contient une table corrompue.

Revenons à nos moutons : nous retombons donc sur nos pieds, à quelques exceptions près. Ça rassure !! (Il y a eu 3002 courses dans les réunions 1 de l'année 2015 et nos résultats sont presque identiques).

Je ne sais pas si tu as fais ça juste pour un essai mais Polo avait tout à fait raison : ces résultats sont faussés :

Si on ne fixe pas le nombre de partants, le numéro 1 par exemple est avantagé par effet de nombre : ce n'est pas pareil de viser une place quand il y a juste 4 partants que quand tu as un lot de 20 partants. Le numéro 1 et 2 sont en moyenne également les plus avantagés et le numéro 20 le plus "lésé".



Revenir en haut
Voir le profil de l'utilisateur
lazare



Inscrit le: 21 Juin 2005
Messages: 1063

MessagePosté le: 29 Mai 2016 0:30    Sujet du message: Répondre en citant

Une erreur (un manque) s'est glissée dans la première image. Voici les instructions magiques avant la requête finale :



Il y a donc eu 36349 partants dans les 3002 courses des réunions 1 de l'année 2015, soit en moyenne 12 partants par course.
Revenir en haut
Voir le profil de l'utilisateur
Invité






MessagePosté le: 29 Mai 2016 6:53    Sujet du message: Répondre en citant

Lazare,

Ravi de t'avoir aiguillé pour les optimisations.

Le "presque" ne me rassure pas trop. Un de nous a une erreur ou nous deux.

Pour 2015, cela fait 3026 courses, il y a eut 25 courses annulées, du coup il s'est couru 3001 courses. Nous avons un delta d'une course. grrr.
Il devait y avoir 37294 chevaux à courir, en retirant les Non-Partants il y avait 36347 qui ont couru.

Voila donc ce que j'ai eu pour 2015 (en filtrant sur les courses annulées et les non partants) :

14/11/2015 (Saint-Cloud) et 15/11/2015 (Auteuil), tu ne devrais pas avoir de courses (c'était suite aux attentats du 13 novembre).

Journée | Nbre Partants
2015-01-01 | 127
2015-01-02 | 116
2015-01-03 | 125
2015-01-04 | 104
2015-01-05 | 102
2015-01-06 | 107
2015-01-07 | 113
2015-01-08 | 114
2015-01-09 | 111
2015-01-10 | 125
2015-01-11 | 111
2015-01-12 | 115
2015-01-13 | 96
2015-01-14 | 82
2015-01-15 | 107
2015-01-16 | 116
2015-01-17 | 129
2015-01-18 | 119
2015-01-19 | 81
2015-01-20 | 98
2015-01-21 | 102
2015-01-22 | 105
2015-01-23 | 105
2015-01-24 | 120
2015-01-25 | 136
2015-01-26 | 124
2015-01-27 | 115
2015-01-28 | 113
2015-01-29 | 128
2015-01-30 | 91
2015-01-31 | 120
2015-02-01 | 110
2015-02-02 | 95
2015-02-03 | 108
2015-02-04 | 115
2015-02-05 | 116
2015-02-06 | 114
2015-02-07 | 115
2015-02-08 | 106
2015-02-09 | 102
2015-02-10 | 105
2015-02-11 | 83
2015-02-12 | 92
2015-02-13 | 102
2015-02-14 | 80
2015-02-15 | 120
2015-02-16 | 96
2015-02-17 | 106
2015-02-18 | 89
2015-02-19 | 109
2015-02-20 | 101
2015-02-21 | 103
2015-02-22 | 107
2015-02-23 | 80
2015-02-24 | 99
2015-02-25 | 117
2015-02-26 | 111
2015-02-27 | 82
2015-02-28 | 108
2015-03-01 | 87
2015-03-02 | 91
2015-03-03 | 96
2015-03-04 | 111
2015-03-05 | 91
2015-03-06 | 88
2015-03-07 | 100
2015-03-08 | 86
2015-03-09 | 90
2015-03-10 | 71
2015-03-11 | 132
2015-03-12 | 88
2015-03-13 | 125
2015-03-14 | 94
2015-03-15 | 86
2015-03-16 | 87
2015-03-17 | 95
2015-03-18 | 122
2015-03-19 | 92
2015-03-20 | 123
2015-03-21 | 125
2015-03-22 | 84
2015-03-23 | 85
2015-03-24 | 84
2015-03-25 | 108
2015-03-26 | 98
2015-03-27 | 89
2015-03-28 | 74
2015-03-29 | 88
2015-03-30 | 100
2015-03-31 | 102
2015-04-01 | 139
2015-04-02 | 95
2015-04-03 | 80
2015-04-04 | 107
2015-04-05 | 73
2015-04-06 | 86
2015-04-07 | 76
2015-04-08 | 103
2015-04-09 | 92
2015-04-10 | 75
2015-04-11 | 124
2015-04-12 | 84
2015-04-13 | 107
2015-04-14 | 97
2015-04-15 | 119
2015-04-16 | 72
2015-04-17 | 85
2015-04-18 | 98
2015-04-19 | 82
2015-04-20 | 83
2015-04-21 | 88
2015-04-22 | 119
2015-04-23 | 91
2015-04-24 | 96
2015-04-25 | 86
2015-04-26 | 80
2015-04-27 | 91
2015-04-28 | 106
2015-04-29 | 94
2015-04-30 | 86
2015-05-01 | 89
2015-05-02 | 108
2015-05-03 | 60
2015-05-04 | 85
2015-05-05 | 81
2015-05-06 | 104
2015-05-07 | 82
2015-05-08 | 96
2015-05-09 | 119
2015-05-10 | 108
2015-05-11 | 96
2015-05-12 | 85
2015-05-13 | 114
2015-05-14 | 91
2015-05-15 | 79
2015-05-16 | 103
2015-05-17 | 104
2015-05-18 | 82
2015-05-19 | 77
2015-05-20 | 118
2015-05-21 | 100
2015-05-22 | 83
2015-05-23 | 127
2015-05-24 | 83
2015-05-25 | 111
2015-05-26 | 105
2015-05-27 | 80
2015-05-28 | 13
2015-05-29 | 94
2015-05-30 | 79
2015-05-31 | 82
2015-06-01 | 93
2015-06-02 | 75
2015-06-03 | 139
2015-06-04 | 106
2015-06-05 | 86
2015-06-06 | 119
2015-06-07 | 93
2015-06-08 | 70
2015-06-09 | 78
2015-06-10 | 82
2015-06-11 | 82
2015-06-12 | 68
2015-06-13 | 112
2015-06-14 | 98
2015-06-15 | 102
2015-06-16 | 139
2015-06-17 | 101
2015-06-18 | 100
2015-06-19 | 83
2015-06-20 | 75
2015-06-21 | 123
2015-06-22 | 90
2015-06-23 | 100
2015-06-24 | 85
2015-06-25 | 107
2015-06-26 | 99
2015-06-27 | 105
2015-06-28 | 82
2015-06-29 | 77
2015-06-30 | 132
2015-07-01 | 101
2015-07-02 | 111
2015-07-03 | 80
2015-07-04 | 94
2015-07-05 | 73
2015-07-06 | 91
2015-07-07 | 113
2015-07-08 | 124
2015-07-09 | 75
2015-07-10 | 76
2015-07-11 | 96
2015-07-12 | 88
2015-07-13 | 78
2015-07-14 | 78
2015-07-15 | 120
2015-07-16 | 76
2015-07-17 | 78
2015-07-18 | 94
2015-07-19 | 75
2015-07-20 | 110
2015-07-21 | 83
2015-07-22 | 105
2015-07-23 | 80
2015-07-24 | 87
2015-07-25 | 99
2015-07-26 | 87
2015-07-27 | 113
2015-07-28 | 85
2015-07-29 | 95
2015-07-30 | 81
2015-07-31 | 101
2015-08-01 | 80
2015-08-02 | 75
2015-08-03 | 92
2015-08-04 | 90
2015-08-05 | 109
2015-08-06 | 93
2015-08-07 | 105
2015-08-08 | 118
2015-08-09 | 98
2015-08-10 | 110
2015-08-11 | 100
2015-08-12 | 99
2015-08-13 | 101
2015-08-14 | 84
2015-08-15 | 102
2015-08-16 | 85
2015-08-17 | 85
2015-08-18 | 78
2015-08-19 | 104
2015-08-20 | 77
2015-08-21 | 93
2015-08-22 | 100
2015-08-23 | 74
2015-08-24 | 100
2015-08-25 | 99
2015-08-26 | 92
2015-08-27 | 106
2015-08-28 | 76
2015-08-29 | 112
2015-08-30 | 84
2015-08-31 | 98
2015-09-01 | 100
2015-09-02 | 100
2015-09-03 | 78
2015-09-04 | 79
2015-09-05 | 114
2015-09-06 | 85
2015-09-07 | 83
2015-09-08 | 119
2015-09-09 | 86
2015-09-10 | 83
2015-09-11 | 85
2015-09-12 | 127
2015-09-13 | 98
2015-09-14 | 108
2015-09-15 | 107
2015-09-16 | 98
2015-09-17 | 114
2015-09-18 | 88
2015-09-19 | 86
2015-09-20 | 113
2015-09-21 | 93
2015-09-22 | 88
2015-09-23 | 140
2015-09-24 | 98
2015-09-25 | 91
2015-09-26 | 93
2015-09-27 | 128
2015-09-28 | 127
2015-09-29 | 88
2015-09-30 | 125
2015-10-01 | 85
2015-10-02 | 103
2015-10-03 | 90
2015-10-04 | 127
2015-10-05 | 124
2015-10-06 | 93
2015-10-07 | 114
2015-10-08 | 89
2015-10-09 | 91
2015-10-10 | 78
2015-10-11 | 103
2015-10-12 | 108
2015-10-13 | 89
2015-10-14 | 127
2015-10-15 | 87
2015-10-16 | 96
2015-10-17 | 104
2015-10-18 | 89
2015-10-19 | 112
2015-10-20 | 113
2015-10-21 | 96
2015-10-22 | 99
2015-10-23 | 76
2015-10-24 | 88
2015-10-25 | 114
2015-10-26 | 65
2015-10-27 | 89
2015-10-28 | 118
2015-10-29 | 77
2015-10-30 | 76
2015-10-31 | 83
2015-11-01 | 85
2015-11-02 | 129
2015-11-03 | 102
2015-11-04 | 132
2015-11-05 | 126
2015-11-06 | 83
2015-11-07 | 88
2015-11-08 | 89
2015-11-09 | 105
2015-11-10 | 126
2015-11-11 | 89
2015-11-12 | 104
2015-11-13 | 106
2015-11-16 | 131
2015-11-17 | 93
2015-11-18 | 138
2015-11-19 | 114
2015-11-20 | 102
2015-11-21 | 125
2015-11-22 | 121
2015-11-23 | 114
2015-11-24 | 131
2015-11-25 | 114
2015-11-26 | 126
2015-11-27 | 92
2015-11-28 | 128
2015-11-29 | 92
2015-11-30 | 100
2015-12-01 | 123
2015-12-02 | 118
2015-12-03 | 127
2015-12-04 | 77
2015-12-05 | 122
2015-12-06 | 146
2015-12-07 | 100
2015-12-08 | 120
2015-12-09 | 115
2015-12-10 | 119
2015-12-11 | 128
2015-12-12 | 126
2015-12-13 | 109
2015-12-14 | 105
2015-12-15 | 109
2015-12-16 | 117
2015-12-17 | 123
2015-12-18 | 130
2015-12-19 | 127
2015-12-20 | 123
2015-12-21 | 147
2015-12-22 | 122
2015-12-23 | 94
2015-12-24 | 108
2015-12-25 | 105
2015-12-26 | 114
2015-12-27 | 117
2015-12-28 | 112
2015-12-29 | 128
2015-12-30 | 70
2015-12-31 | 117

Amicalement.
Revenir en haut
lazare



Inscrit le: 21 Juin 2005
Messages: 1063

MessagePosté le: 29 Mai 2016 12:43    Sujet du message: Répondre en citant

Hi Ludo,

Ton aspirateur avait oublié cette course du 5 mai 2015 : http://www.geny.com/arrivee-et-rapports-pmu?id_course=710222

Et le mien, le 16 juin 2015, le 613 Sha Tin qui était tombé et qui se trouvait tout en bas de la liste.

D'où l'incohérence de nos deux bases.

J'ai juste effacé la course et relancé mon aspi et tout est rentré dans l'ordre : un vrai mystère de l'informatique pour moi !
Revenir en haut
Voir le profil de l'utilisateur
Invité






MessagePosté le: 29 Mai 2016 16:20    Sujet du message: Répondre en citant

Bien vu,

Pour cette course je n'ai pas les arrivées, c'est balot !
Revenir en haut
hardmaster



Inscrit le: 11 Mai 2013
Messages: 5

MessagePosté le: 30 Mai 2016 20:43    Sujet du message: base de données Répondre en citant

Bonsoir,

est-ce que dans votre gigantesque base de données vous auriez les rapports Quadrio de 2007 à 2009 ?

Merci.
Revenir en haut
Voir le profil de l'utilisateur
Voir le sujet précédent :: Voir le sujet suivant  
Poster un nouveau sujet   Répondre au sujet    Forum -> Discussions sur les courses en général Toutes les heures sont au format GMT + 1 Heure
Aller à la page Précédente  1, 2, 3, 4, 5, 6  Suivante
Page 5 sur 6

 
Vous ne pouvez pas poster de nouveaux sujets dans ce forum
Vous ne pouvez pas répondre aux sujets dans ce forum
Vous ne pouvez pas éditer vos messages dans ce forum
Vous ne pouvez pas supprimer vos messages dans ce forum
Vous ne pouvez pas voter dans les sondages de ce forum


Powered by phpBB © 2001, 2005 phpBB Group
Traduction par : phpBB-fr.com



Je gagne aux courses