UNIVERSITE NATIONALE DU VIETNAM, HANOI INSTITUT FRANCOPHONE INTERNATIONAL LÊ NGỌC LUYỆN DÉVELOPPEMENT D’UN SYSTÈME CONNAISSANCE POUR BIG DATA APPLICATION AUX DONNÉES DE PHÉNOTYPAGE CHEZ LE RIZ (O. SATIVA) PHÁT TRIỂN MỘT HỆ NHẬN DẠNG CHO DỮ LIỆU LỚN: ỨNG DỤNG CHO DỮ LIỆU PHENOTYPING VỀ LÚA (O. SATIVA) MEMOIRE DE FIN D’ETUDES DU MASTER INFORMATIQUE HANOI – 2015 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com UNIVERSITE NATIONALE DU VIETNAM, HANOI INSTITUT FRANCOPHONE INTERNATIONAL LÊ NGỌC LUYỆN DÉVELOPPEMENT D’UN SYSTÈME CONNAISSANCE POUR BIG DATA APPLICATION AUX DONNÉES DE PHÉNOTYPAGE CHEZ LE RIZ (O. SATIVA) PHÁT TRIỂN MỘT HỆ NHẬN DẠNG CHO DỮ LIỆU LỚN: ỨNG DỤNG CHO DỮ LIỆU PHENOTYPING VỀ LÚA (O.
SATIVA) Spécialité: Systèmes intelligents et Multimédia Code: Programme pilote MEMOIRE DE FIN D’ETUDES DU MASTER INFORMATIQUE Sous la direction de: Ingénieur IRD, responsable de l’AXE Intégration de données de l’Institut de Biologie Computationnelle, Dr. Pierre LARMANDE Ingénieur INRA, Mme. Anne TIREAU HANOI – 2015 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com ATTESTATION SUR L’HONNEUR J’atteste sur l’honneur que ce mémoire a été réalisé par moi-même et que les données et les résultats qui y sont présentés sont exacts et n’ont jamais été publiés ailleurs. La source des informations citées dans ce mémoire a été bien précisée.
LỜI CAM ĐOAN Tôi cam đoan đây là công trình nghiên cứu của riêng tôi. Các số liệu, kết quả nêu trong Luận văn là trung thực và chưa từng được ai công bố trong bất kỳ công trình nào khác. Các thông tin trích dẫn trong Luận văn đã được chỉ rõ nguồn gốc. Fait à Hanoı̈, le 20 octobre 2015 Hà nội, Ngày 20 tháng 10 năm 2015 Lê Ngọc Luyện i LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Remerciements Je tiens à remercier dans un premier temps, toute l’équipe pédagogique de l’Institut Francophone International (IFI) de Hanoı̈ et les intervenants professionnels responsable de la formation en master de recherche en informatique, pour avoir assuré la partie théorique de celle-ci.
Je tiens à exprimer toute ma reconnaissance à M. Pierre LARMANDE qui est chercheur à l’IRD et Reponsbale de l’axe de données de l’Institut de Biologie Computationnelle, Mme. Anne TIREAU qui est ingénieur à l’INRA Montpellier SupAgro dans l’UMR MISTEA, pour leur encardrement sans faille, le suivi qu’ils ont apporté à mon stage, leurs conseils, les nombreuses discussions que nous avons pu avoir tout au long de la réalisation de ce stage, aussi pour l’inspiration et pour le temps qui’ils ont bien voulu me consacrer. Je souhaite remercie la famille de Pierre LARMANDE et la famille François PHAN pour leurs aides chaleureuses pendant mon séjour de six mois en France.
Je tiens à remercie également Mlle Caroline BENOIST secrétaire du LIRMM, et Mlle NGUYEN Thi Van Tu, secrétaire de l’IFI pour ses aides à plusieurs reprises. Depuis mes premiers jours dans cet institut, j’ai reçu beaucoup d’aides, de conseils et d’encourage- ments de mes amis, en particulier ceux de la promotion 18. Tout cela m’a permis de murir chaque jour. Je les remercie et je ne pourrais jamais oublier les souvenirs gais et tristes que j’ai passé avec eux durant ces deux ans à l’IFI.
Je voudrais aussi remercier aussi les confrères de l’Université de Da Lat où je suis en train de travailler, qui m’ont donné les meilleures conditions pour que je puisse bien passer ma scolarité à l’IFI. Enfin, j’adresse mes plus sincères remerciements à mes parents, mes frères qui m’a toujours soutenue et encouragée dans les moments les plus difficiles de ma scolarité à l’IFI. Merci à tous et à toutes LE Ngoc Luyen Da Lat - Viet Nam, automne 2015 ii LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Résumé Depuis quelques années, le déluge de données dans plusieurs domaines de la recherche scientifique soulève des défis dans le traitement et l’exploitation des données. La recherche dans le domaine bioinforma- tique n’est pas épargnée par ce phénomène.
Ce mémoire présente des approches pour résoudre le problème de données volumineuses stockées dans des entrepôts NoSQL en y associant la capacité de recherche sémantique sur les données dans un contexte de recherche agronomique. Ces approches sémantiques permettent d’aider à enrichir les données issues d’expériences grâce aux moteurs d’inférence générant de nouvelles connaissances. Nous pouvons résumer ces deux approches d’une part avec la réécriture de requêtes et d’autre part avec la matérialisation de données en triplets RDF. Un état de l’art nous a permis d’identifier et d’évaluer les différentes méthodes se rapportant aux approches mentionnées.
En pratique, seule l’approche de matérialisation de données a été choisie pour continuer à travailler. Les données triplets obtenues étant volumineuses, nous avons réalisé un benchmark sur différents systèmes de gestion de base de données de triplets afin de pouvoir comparer les avantages et les inconvénients de chacun et de choisir le meilleur système pour notre étude de cas. Mot-clés : Base de connaissance, Ontologie, Raisonnement, Inférence, SPARQL, xR2RML, Bench- mark, NoSql, BigData, TripleStore iii LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Abstract In the recent years, the data deluge in many areas of scientific research brings challenges in the treat- ment and improvement of farm data. Research in bioinformatics field does not outside this trend.
This thesis presents some approaches aiming to solve the big Data problem by combining the increase in se- mantic search capacity on existing data in the plant research laboratories. This helps us to strengthen user experiments on the data obtained in this research by the engine automatic inference of new knowledge. To achieve this, each approach has different characteristics and using different platforms. Nevertheless, we can summarize it in two main directions : the transformation of query or Re-write requests and data transformation to triples.
In reality, we can solve the problem from origin of increasing capacity on seman- tic data with triplets. Thus, the triplets to data transformation direction is chosen to continue working in the practical part. However, the synchronization data in the same format is required before processing the triplets because our current data are heterogeneous. The data obtained for triplets are larger that regular triplestore could manage.
So we evaluate some of them thus we can compare the benefits and drawbacks of each and choose the best system for our problem. Keyworks : Knowledge base, Ontology, Reasoning, Inference, SPARQL, xR2RML, Benchmark, NoSQL, Big Data, Triplestore iv LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Table des matières Remerciements ii Résumé iii Abstract iv Table des matières v Liste d’abréviations vii Table des figures viii Liste des tableaux x INTRODUCTION 1 Chapitre 1 Présentation Générale 2 1.1 Présentation de l’établissement d’accueil .1 Présentation de l’Institut de Biologie Computationelle (IBC) .2 Présentation de l’Institut National de la Recherche Agronomique (INRA) .2 Description du stage .4 Contexte du sujet .1 Contexte de données massives .2 Contexte de recherche sémantique. 7 Chapitre 2 État de l’art 11 2.2 Analyse et évaluation des solutions courantes .1 MongoGraph - une association du Mongodb et AllegroGraph .2 Base de données orientée graphe Neo4j .3 JSON for Linking Data (JSON-LD) et MongoDB .4 Ontology-Based Data Access (ODBA) et frameworks Ontop .5 Matérialisation de données en triplets RDF. 22 Chapitre 3 Solution proposée 23 v LUAN VAN CHAT LUONG download : add luanvanchat@agmail.2 Modèle général .3 Transformation et synchronisation de données dans MongoDB .4 Ontologies et domaine applicatif .5 xR2RML et Transformation de données en triplets .1 Le langage de mapping de données xR2RML .2 Transformation de données en triplets.
30 Chapitre 4 Stockage et Indexation de données RDF 31 4.2 Approche native et non-native .3 Vue générale des systèmes de gestion de triplets .4 TripleStore Jena Fuseki. 40 Chapitre 5 Expérimentation, Comparaison et Analyse 42 5.1 Préparation des données et du Serveur .2 Benchmarking des platformes .1 Chargement de données .2 Recherche de données .3 Inférence sur les données .3 Evaluation et Analyse. 51 CONCLUSION 53 RÉFÉRENCES 55 Annexe A Modèle de document JSON A.1 Annexe B Mappage de données JSON aux triplets par xR2RML B.5 Annexe C Point d’accès C.8 vi LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Liste d’abréviations API Application Programming Interface CRUD Create, Read, Update, Delete D2R Database To RDF DFS Distributed files system DL Logiques de Description IBC Institut de Biologie Computationelle INRA Institut National de la Recherche Agronomique JSON Javascript Object Notation JSON-LD JSON for Linking Data NoSQL Not Only SQL ODBA Ontology-Based Data Access OWL Web Ontology Language OWL 2 RL Web Ontology Rule Language R2RML Relational Databases to RDF Mapping Language RDF Resource Description Framework RDFS Resource Description Framework Schema RML RDF Mapping Language SPARQL Protocol and RDF Query Langage SQL Structured Query Language W3C World Wide Web Consortium xR2RML Relational and Non-Relational Databases to RDF Mapping Language vii LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Liste des figures 1.1 L’architecture du web sémantique .2 L’exemple d’un triplet Resource Description Framework (RDF).3 L’exemple d’une requête Protocol and RDF Query Langage (SPARQL).1 Le modèle de composants dans un système MongoGraph .2 Les données présentées dans cet exemple .3 Une requête SPARQL associée à une requête de MongoDB .4 La graphe de données dans Neo4j .5 Les commandes pour créer un graphe simple .6 Les triplets sont stockées dans MongoDB sous la forme de JSON-LD .7 Le modèle de composants dans un système d’association de MongoDB et JSON-LD – Create, Read, Update, Delete (CRUD) .8 Le processus de requête dans le système d’ODBA .9 La comparaison des approches des raisonnements dans une application .10 L’architecture du système avec l’association de MongoDB et le modèle d’ODBA .11 Les deux tables et sa relation .12 Les informations définies pour le mapping .13 Les données RDF après de la transformation .1 Le modèle général du système .2 Le modèle JSON créé à partir des bases d’imageries .3 L’ontologie de l’annotation d’images .4 Un exemple de données dans MongoDB .5 Le triplet généré .6 Le mapping de xR2RML .7 Le modèle général du système .1 La classificaiton des types de système de stockage RDF .2 Les composants dans l’architecture de Sesame .3 L’architecture principale de 4Store .4 L’architecture générale de Virtuoso .5 Les composants dans l’architecture de Jena .6 Les composants dans l’architecture de GraphDB .7 L’interface du système d’interaction avec les données RDF. 39 viii LUAN VAN CHAT LUONG download : add luanvanchat@agmail.1 La comparaison du temps de chargement sur différents TripleStores .2 L’exemple de requête numéro 1 .3 L’evaluation de la requête numéro 1 sous forme de courbe graphique .4 L’exemple de requêtes numéro 2 .5 L’evaluation de la requête numéro 2 sous forme de courbe graphique .6 L’exemple de requête numéro 3 .7 L’evaluation de la requête numéro 3 sous forme de courbe graphique .8 L’exemple de troisième requêtes .9 L’evaluation de la requête numéro 4 sous forme de courbe graphique .10 Les relations inférées sur l’ontologie dans le premier exemple .11 La requête du première exemple d’inférence .12 Le temps d’exécution de la première inférence sous forme de graphique .13 Les relations inférées sur l’ontologie dans le deuxième exemple d’inférence .14 L’exemple de la deuxième inférence .15 Le temps d’exécution de la deuxième inférence sous forme de graphique.
50 ix LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Liste des tableaux 1.1 La liste des types et des système de gestion de base de données dans Not Only SQL (NoSQL) 7 4.1 Les TripleStores et le type de stockage supporté .2 Les encodages spéciaux .3 Les comparaison de certaines fonctionnalités des différents TripleStores .1 La configuration du serveur expérimental .2 La comparaison du temps de chargement sur différents TripleStores en millisecondes .3 L’evaluation de la requête numéro 1 (temps en millisecondes) .4 L’evaluation de la requête numéro 2 (temps en millisecondes) .5 L’evaluation de la requête numéro 3 (temps en millisecondes) .6 L’evaluation de la requête numéro 4 (temps en millisecondes) .7 L’evaluation de la première inférence (temps en millisecondes) .8 L’evaluation de la deuxième inférence (temps en millisecondes) .1 Les exemples de point d’accès de TripleStore .