Un datamart pour l’INRA

Download Report

Transcript Un datamart pour l’INRA

gestion et
d'exploitation d'une base de
données générique de biologie des
Concepts de
populations
Réalisé à l’Inra de Sophia-Antipolis.
 U.M.R. 1112 Biologie des populations en intéraction
 U.R.I.H. Unité de recherche intégrée en horticulture
24 Aout 2006 R.Boll, N.Mezencev
1
Q’est ce qu’un
Data-mart:
• Un data-mart est un magasin de données.
• C’ est une base de données décisionnelle
structurée et formatée en fonction d'un métier
précis ou d'un usage particulier.
• L'information y est préparée pour être
« consommée » telle quelle.
24 Aout 2006 R.Boll, N.Mezencev
2
Le data mining :
C’est l’ensemble des…
 Algorithmes et méthodes
 Destinées à l’exploration et à l’analyse
De grandes bases de données
 Sans à priori
 En vue de détecter dans ces données
 Des Règles
 Des tendances inconnues
 Des structures particulières
 Restituant de façon concise l’essentiel de
l’information utile
 Pour l’aide à la décision
Stéphane Tuffery(2005)
24 Aout 2006 R.Boll, N.Mezencev
3
Le data mining (Suite)
• Le Data Mining effectue l’analyse
exploratoire des données (On recherche un
ordonnancement dans un flot de données collecté avec
peu d’à priori).
• et non plus seulement une analyse
confirmatoire (Analyse d’un essai planifié avec
l’objectif de prouver un phénomène).
24 Aout 2006 R.Boll, N.Mezencev
4
Pourquoi faire du Data Mining ?
• Les volumes de données sont trop
importants pour un traitement à l’aide de
techniques d’analyses classiques ;
• L’utilisateur final n’est pas, en général
statisticien de métier ;
24 Aout 2006 R.Boll, N.Mezencev
5
Objectifs du stage :
 Renforcer le schéma
conceptuel de la base de
donnée BPI existante.
 Développer une interface
web générique avec cette
base répondant aux requêtes
usuelles (data mining).
24 Aout 2006 R.Boll, N.Mezencev
6
La base de données BPI :
Base SQL (structured Query Language) hébergée
par le serveur UNIX du centre.
Constituée de 42 tables créées au fil des
besoins.
Regroupe 97 Mo de données (1,2 millions
d’enregistrements).
24 Aout 2006 R.Boll, N.Mezencev
7
Les choix logiciels :
La base de donnée MySQL 4.1.13_max
La gestion administrative du SGBD (Systeme de
gestion de bases de données) est réalisée avec
phpMyAdmin 2.6.3_pl1
Le requêtage est réalisé en SQL 3
Les langages de programmation choisis sont le
PHP 4.0 et le HTML, pour des raisons de
généricité
24 Aout 2006 R.Boll, N.Mezencev
8
Le nouveau modèle relationnel :
Dérive relationnelles de la base d’origine :
Analyse des blocages fonctionnels par la méthode
Merise assistée par le logiciel Power AMC.
Nouveau ‘modèle physique de données’
aboutissant à une base BPI2, conservant les
informations contenues dans les tables d’origine.
24 Aout 2006 R.Boll, N.Mezencev
9
Principes pour la reconstitution de la base :
1.
2.
3.
4.
5.
Les données doivent occuper le moins de place
possible…mais doivent cependant laisser une liberté
de codage et de commentaires suffisante à l’utilisateur.
La redondance d’information est interdite.
Les mises à jour/suppression de données doivent
laisser la base intègre.
La recherche d’information doit être sécurisée et
rapide.
Les tables ne doivent représenter que des données de
même nature.
24 Aout 2006 R.Boll, N.Mezencev
10
Le Modèle Conceptuel de Données :
Regroupement au sein d’entités homogènes des attributs
indispensables pour caractériser:












Un projet
Un essai
Une collecte
Un site
Les informations agronomiques correspondant à l’essai réalisé
Le matériel végétal travaillé
Les variables mesurées
Le plan du dispositif.
Les événements liés à la temporalité.
Les éléments de constitution du masque de saisie.
Une table de correspondance entre les méthodes et les variables.
La gestion des droits des utilisateurs.
24 Aout 2006 R.Boll, N.Mezencev
11
Le nouveau modèle physique de données
dispositif
nom_masque
ordre_coord
coorx
coory
nom_masque
ref_var
nclasses
ordre
ref
nom_cult
genre
espece
var
pgre
rem_cult
int
<fk>
char(30)
char(30)
char(30)
char(30)
char(30)
int
decimal(2,1)
decimal(2,1)
char(30)
decimal(2,1)
char(30)
char(30)
char(30)
char(100)
int
<fk>
char(30)
char(30)
char(30)
char(30)
char(30)
char(200)
text
<fk>
char(15)
char(15)
text
text
FK_MESURER
variables_exist
FK_COMPOSER
FK_IMPOSER
ref_var
code_var
signi
genre_esp
stade
com
text
<pk>
char(11)
char(70)
char(30)
char(30)
char(60)
FK_IDENTIFIER
masques
FK_DECRIRE
FK_CORRESPONDRE
nom_masque char(15) <pk>
ref
int
<fk>
nom_createur char(30)
projects
collects
int
<pk>
int
<fk2>
int
<fk1>
int
text
int
char(30)
char(30)
char(30)
int
char(30)
char(30)
char(100)
ref_var
cult
unit_obs
nota
tech
FK_SELECTIONNER
FK_SAISIR
ref_pop
ref_site
org
ref_essai
code_pop
d_collect
collector
plant
fam_plant
nind
genre_esp
h_species
rem_collects
methods
char(15) <fk1>
text
<fk2>
int
int
cultures
agronomie
ref
substrat
texture_sol
proxi_cult
ant_cult
mode_prod
super
serre_hau
serre_hau_tot
ser_ouv
tuteur
ser_couv
irr_mode
paille_type
rem_agro
variables_masques
char(15) <fk>
int
int
int
FK_COMPLETER
org
NomProjet
resp
tel
fax
adr
mail
des
protocole
species
int
<pk>
char(50)
char(20)
char(20)
char(20)
char(50)
char(30)
char(50)
char(200)
char(50)
essais
FK_PARTICIPE
sites
FK_PROVENIR
ref_site
prod1
prod2
prod3
prod4
propri
prenom
telexpl
telpexpl
contact1
contact2
telc1
telc2
lieu_essai
adrexpl
cp_adr1
adr2
alt
mer
lat
longi
vent
typ_lut
rem_sites
pays
int
<pk>
char(15)
char(15)
char(15)
char(15)
char(30)
char(30)
char(30)
char(30)
char(50)
char(50)
char(30)
char(30)
char(100)
char(200)
char(5)
char(100)
int
decimal(4,1)
decimal(8,6)
decimal(7,6)
char(5)
char(20)
char(200)
char(20)
FK_EXPERIMENTER
titre
ref
ref_site
org
année_debut
nblig
nbcol
interCol
interLig
biounit
trait_stat
pechant
diry
quant_mode
ver_ref_mode
protocole
FK_DECODER
spatials
temps
ref_var
coory
coorx
nat
val
rem_spatial
int
<fk1>
text
<fk2>
int
int
text
decimal(12,2)
text
char(50)
int
<pk>
int
<fk1>
int
<fk2>
int
FK_SPATIALISER
int
int
decimal(4,1)
decimal(4,1)
char(15)
temporals
char(30)
temps
int
<pk>
char(15)
ref
int
<fk> FK_DETAILLER
char(3)
FK_OBS_TEMP
annee
int
char(20)
rel
date
int
rrel
int
char(200)
temps_abs int
trait1
char(30)
pro1
char(30)
dose1
char(30)
trait2
char(30)
pro2
char(30)
dose2
char(30)
trait3
char(30)
pro3
char(30)
dose3
char(30)
droits
tsol
text
adv
char(15)
ref
integer
pheno
char(30)
nom
char(50)
pheno_ram char(30)
pwd
char(15)
pheno_fl
char(30)
droitL char(1)
pheno_feu char(30)
droitW char(1)
pheno_fr
char(30)
droitM char(1)
clim_except char(30)
org
integer
irrigation
char(30)
orgL
char(1)
fertilisation char(30)
orgW char(1)
comm
char(200)
orgM char(1)
operateur
char(30)
24 Aout 2006 R.Boll, N.Mezencev
mspa_orchards
temps
ref_var
branche_ref
ram_ref
feu_ref
ram_age
bourg_ref
branche_age
pou_age
pou_nbfl
dir
typ_bourg
prof
hau
pou_nbfr
pou_long
pou_dia
fru_dia
pheno
remarques
pou_ref
val
int
<fk1>
text
<fk2>
int
int
int
int
int
int
int
int
char(2)
char(10)
char(2)
char(1)
int
int
int
int
char(30)
char(50)
int
decimal(12,2)
Power AMC
12
[email protected]
Le menu général :
24 Aout 2006 R.Boll, N.Mezencev
14
Vérification des droits
24 Aout 2006 R.Boll, N.Mezencev
15
[email protected]
Saisie du formulaire projet
24 Aout 2006 R.Boll, N.Mezencev
16
[email protected]
Saisie du formulaire
concernant le site d’essai
24 Aout 2006 R.Boll, N.Mezencev
17
[email protected]
Saisie des paramètres
de l’essai
24 Aout 2006 R.Boll, N.Mezencev
18
[email protected]
Saisie des paramètres
agronomiques :
24 Aout 2006 R.Boll, N.Mezencev
19
[email protected]
Support végétal
de l’essai
24 Aout 2006 R.Boll, N.Mezencev
20
[email protected]
Collecte d’organismes :
24 Aout 2006 R.Boll, N.Mezencev
21
[email protected]
Création
du masque de saisie
24 Aout 2006 R.Boll, N.Mezencev
22
[email protected]
Les coordonnées
du masque :
24 Aout 2006 R.Boll, N.Mezencev
23
[email protected]
Renseignement
des variables :
24 Aout 2006 R.Boll, N.Mezencev
24
[email protected]
saisie des valeurs
spatio-temporelles
Entrée de la date d’échantillonnage
Fourniture de quelques
données temporelles
Liste des dates précédentes
d’échantillonnage sur cet essai
24 Aout 2006 R.Boll, N.Mezencev
25
[email protected]
Evénements survenus
entre 2 saisies :
24 Aout 2006 R.Boll, N.Mezencev
26
[email protected]
Choix d’un masque
pour la saisie des données :
24 Aout 2006 R.Boll, N.Mezencev
27
[email protected]
Le masque de saisie :
Champs de
commentaires
24 Aout 2006 R.Boll, N.Mezencev
Ici pour des
données
en classe
28
[email protected]
Menu de visualisation
des données de la base :
Date de début et de
fin d’extraction
24 Aout 2006 R.Boll, N.Mezencev
29
[email protected]
Choix des champs
à extraire :
24 Aout 2006 R.Boll, N.Mezencev
30
[email protected]
Les tableaux
de données extraites
Triées par variable;
par date et par
coordonnées X et Y
Disponibles sous
format compatible
excel par E_Mail
24 Aout 2006 R.Boll, N.Mezencev
31
Le module de correction :
24 Aout 2006 R.Boll, N.Mezencev
32
Principales qualités
d'un outil de Data Mining :
• Richesses analytiques d'un niveau
équivalent aux outils statistiques
traditionnels.
• destinés à des utilisateurs "métier"
sans compétences statistiques ou
informatiques particulières.
24 Aout 2006 R.Boll, N.Mezencev
33
Cahier des charges
d'un outil de Data Mining :
• L'utilisateur doit pouvoir saisir ses propres
paramètres.
•
Les résultats fournis par l'outil doivent être clairs et
compréhensibles (pas trop de termes statistiques
par exemple)
• L’accès aux données doit être simple.
• Ne doit pas être dédié à un domaine particulier
• Doit pouvoir résoudre des problèmes provenant
de contextes différents.
24 Aout 2006 R.Boll, N.Mezencev
34
Le couplage data mining/data mart
 Développement d’applications statistiques
et graphiques :
Un véritable outil de data mining se doit d’etre
couplé avec des outils statistiques, ceux-ci peuvent etre
réalisés en php ou profiter de possibilités d’interfaçage
avec des logiciels statistiques.
 Développement d’outils graphiques :
PHP offre une classe graphique complete
(jpgraphe) Permettant le tracé de courbes et
d’histogrammes…
24 Aout 2006 R.Boll, N.Mezencev
35
Perspectives et discussion :
Extension du data mart sur des données
climatiques.
L’affichage spatial ou temporel d’une
observation, sous la forme d’un histogramme,
d’une courbe ou de toute autre représentation.
Intégration des modèles de dénombrement
existants.
Intégration de modèles prédictifs de D.D.P.
24 Aout 2006 R.Boll, N.Mezencev
36
Remerciements :
•
Je tiens à remercier tout d’abord, Roger Boll pour ses conseils et ses
encouragements.
•
Je remercie Christine Poncet directrice de l’unité qui m’a donné l’opportunité de
réaliser ce stage.
•
Merci à Séverine Doise dont l’aide m’a été précieuse dans l’élaboration de
l’INTRANET de l’URIH.
•
Merci à Alexandre Bout qui fut notre beta testeur
•
Merci à mon épouse qui m’a laissé partir pendant quatre longs mois, et à mes
enfants qui cochent scupuleusement les cases du calendrier.
•
Merci à tous enfin, dont les encouragements et les conseils m’ont donné envie de
poursuivre mes efforts dans le domaine de l’informatique.
24 Aout 2006 R.Boll, N.Mezencev
37