• Aucun résultat trouvé

1 - Création d'une base informatique pour l’exploitation de données d’expression génique et de

CHAPITRE III : VERS UNE RECHERCHE DE CANDIDATS A LA DETOXICATION METALLIQUE

I. 1 - Création d'une base informatique pour l’exploitation de données d’expression génique et de

Le développement constant des techniques d’analyses à haut débit (puces à ADN et spectrométrie de masse par exemple) et la grande quantité de données qu’elles génèrent nécessitent de mettre en place des structures informatiques capables de les accueillir. Les Systèmes de Gestion de Bases de Données Relationnelles (SGBDR) permettent l’implémentation, le stockage, la modification, et l’interrogation de données informatiques. Le « package » EasyPHP (v1.7) est disponible gratuitement (www.easyphp.org) et contient le SGBDR « MySQL » (v4.0.15). L’installation d’EasyPHP inclut l’insallation du serveur « Apache » (v.1.3.27), un logiciel destiné à héberger la base de données et à traiter les flux d’informations entrant et sortant de celle-ci, et qui servent à son exploitation (Figure 35-A). Ce serveur communique avec le reste de l’ordinateur et notamment avec le navigateur internet (partie client), puisque c’est via ce dernier que l’utilisateur peut interagir avec la base (Figure 35).

La base de données relationelle que nous avons créée, en collaboration avec Olivier Bastien (LPCV, CEA-Grenoble), a été nommée ArHeS (Arabidopsis Heavy metal Stress), et contient deux tables (Figure 35-B) : microarray, qui stocke les valeurs issues des analyses d’expression génique sur puce (Herbette et al., 2006), et proteomics, qui accueille les résultats de l’analyse protéomique vacuolaire que nous avons réalisée (Jaquinod et al., 2007a). La table proteomics (qui contient 709 entrées) comprend une série de champs contenant les différentes valeurs issues de nos analyses (valeurs de score, fonctions des protéines etc …) et un champ unique pour l’identification de chacune des entrées de la table : le champ AGI (qui correspond au numéro d’accession AGI (The Arabidopsis Genome Initiative (AGI), 2000) de chaque protéine). De la même manière, la table microarray contient 23 797 entrées, et des champs correspondants aux résultats des différentes comparaisons (2 h d’exposition à 5 µM Cd vs. contrôle à 2 h, 6 h d’exposition à 50 µM Cd vs. contrôle à 6 h, etc …). L’identifiant unique de cette table est constitué du couple de champs AGI et Index, un même locus pouvant être représenté par plusieurs sondes nucléiques sur la puce à ADN (auquel cas plusieurs entrées de la table auraient le même champ AGI). Un index (a, b, c …) de la

Chapitre III : Vers une recherche de candidats à la détoxication métallique vacuolaire

- 144 -

sonde permet donc de différencier des résultats provenant de sondes différentes pour un même gène. Les données ont été insérées dans la base grâce à un script PHP (hypertext preprocessing ; Figure 36), un langage de programmation côté serveur destiné à faire le lien avec la partie client (Figure 35-D). - N° AGI - Index - Annotation - Résultat_1 - … - Résultat_n microarray -N° AGI - Fonction - Score_Mb - Score_Sol - Score_2D - … proteomics Utilisateur Formulaire Liste des réponses Fichier de N° AGI Interface d’utilisation Scripts de création de la requête en SQL Interrogation de la base (SQL)

Récolte des données sélectionnées

Scripts de traitement des données Fichier de valeurs Base de données SERVEUR CLIENT Base de données

(B)

(A)

(D)

(E)

(C)

(F)

Figure 35 : Structure générale de la base de données ArHeS et de son interface d’exploitation. Le serveur Apache

(A) héberge la base de données ArHeS (B) et l’intepréteur PHP qui permet de générer automatiquement les requêtes SQL permettant de l’interroger (C). L’utilisateur peut exploiter les données contenues dans la base grâce à une interface codée en HTML (interprétée par un navigateur internet), ou via la lecture de fichiers informatiques (Excel® ou texte). Les formulaires HTML ou les fichiers informatiques sont ensuite interprétés par les scripts PHP (D) pour l’interrogation de la base, et les résultats à nouveau traités par des scripts PHP (E). Ils peuvent être alors affichés à l’écran via l’interface HTML ou exportés sous forme de fichier informatique (F).

L’interface graphique d’interrogation de la base et de présentation des résultats à l’écran est codée par des scripts HTML (HyperText Markup Langage), interprétés par un navigateur internet (Microsoft Internet Explorer® ou Mozilla Firefox® par exemple) à la manière de pages web (Figure 35-C). Cette interface se compose notamment de deux formulaires contenant des informations à saisir et des options à spécifier pour interroger les données de transcriptomique

Chapitre III : Vers une recherche de candidats à la détoxication métallique vacuolaire

- 145 -

(Figure 37-A) et de protéomique (Figure 37-B). Ces sripts intègrent également des scripts PHP servant à créer de façon automatique des requètes SQL (Structured Query Language), un langage informatique d’administration et d’interrogation de certaines bases de données (Figure 35-D). Une fois que les informations qui ont été saisies par l’utilisateur sont transcrites en requète SQL, la base de données peut être interrogée et les entrées de la base répondant aux critères spécifiés sont sélectionnées. Ces entrées sont alors traitées par un nouveau script PHP afin qu’elles soient intégrées à un nouveau script HTML (Figure 35-E), servant à afficher la liste des gènes / protéines renvoyées par ArHeS (Figure 35-F, Figure 38-A). Les N° AGI de cette liste sont « cliquables », ce qui a pour effet de renvoyer une requête SQL vers la base de données, qui à son tour retourne les informations spécifiques au locus sélectionné. Elles sont affichées sur une nouvelle page HTML, spécifique aux informations que souhaite consulter l’utilisateur : résultats de protéomique (Figure 38-B) ou de transcriptomique (Figure 38-C).

Cette base de données s’est révélée très utile dans l’exploitation de nos résultats d’analyses protéomiques vacuolaires, notamment grace à un module supplémentaire de l’interface qui permet d’exporter les données dans un fichier texte ou dans un tableur (Microsoft Excel® par exemple, Figure 35-F). Mais c’est surtout dans l’exploitation des données de transcriptomique que l’utilisation d’une base de données informatique s’est trouvée être adapté, en particulier pour la sélection des gènes dont les produits ont été identifiés dans la vacuole et dont l’expression est régulée par le stress cadmium.

Figure 36 : Script PHP d’insertion des valeurs contenues dans le fichier « nom_de_fichier » dans la base de

données « nom_de_la_base_de_données ».

<?php

$file = "nom_du_fichier_de_valeurs" $db = "nom_de_la_base_de_données" $ficreq = fopen ($file,"w"); fwrite($ficreq,"use ".$db.";\n");

fwrite($ficreq,"LOAD DATA LOCAL INFILE '".$file."' INTO TABLE `nom_de_le_table`

\ FIELDS TERMINATED BY ';' ENCLOSED BY '\"' ESCAPED BY '\\\'

\ LINES TERMINATED BY '\n' (`liste`,`des`,`champs`,`de`,`la`,`base`)\n");

fclose($ficreq);

$maj = "C:\Progra~1\EasyPHP1-7\mysql\bin\mysql -u root < ".$file; exec($maj);

Chapitre III : Vers une recherche de candidats à la détoxication métallique vacuolaire

- 146 -

Figure 37 : Captures d’écran des interfaces d’interrogation des tables proteomics (A) et microarray (B) d’ArHeS. Les requêtes SQL pour sélectionner des données de la

base peuvent être générées à partir de formulaires. Une interface graphique, adaptée à la table que l’on souhaite interroger, permet de sélectionner les champs sur lesquels on souhaite effectuer la requête, et de spécifier la valeur souhaitée. Une requête est créée par l’ajout successif de conditions reliées les unes aux autres par des opérateurs bouléens (et, ou, et non, ou non). La requête est affichée en langage SQL au fur et à mesure de l’ajout de conditions, et éventuellement modifiable par l’utilisateur avant d’être transmise à la base de données.

Chapitre III : Vers une recherche de candidats à la détoxication métallique vacuolaire

- 147 -

Figure 38 : Captures d’écran de

l’interface de présentation des résultats d’ArHeS. Après interrogation, la base de données retourne les valeurs des entrées correspondant aux critères spécifiés par l’utilisateur. (A) : Un premier traitement des données permet d’afficher la liste des AGI sélectionnés ainsi que leur annotation, et indique combien d’entrées lui correspondent dans chacune des tables proteomics et

microarray. Cette liste est présentée sous

forme d’une série de liens hypertextes, qui permettent d’afficher, pour chaque AGI, les valeurs stockées dans la base de données, en fonction de la table que l’on souhaite consulter : proteomics (B),

microarray (C).

(A)

(B)

Chapitre III : Vers une recherche de candidats à la détoxication métallique vacuolaire

- 148 -

I.2 - Analyse croisée des données d’analyses transcriptomiques et