• Aucun résultat trouvé

Chapitre VIII Conclusion et perspectives

1. Synthèse et bilan

La mobilité des unités est un domaine en pleine expansion. Tous les scientifiques et les industriels s’accordent à dire que les progrès réalisés dans les technologies des réseaux sans fil ont encouragé un fort potentiel de développement de nouveaux services et applications. Il s’agit particulièrement des applications basées sur la localisation. Ces dernières ont généré de nouveaux besoins dans le domaine des bases de données qui se traduisent, entre autres, par l’apparition de plusieurs nouveaux types de requêtes. Ces requêtes aux contraintes diverses soulèvent des problèmes auxquels une part importante de la communauté scientifique a porté un vif intérêt. Dans cette thèse, nous nous sommes particulièrement intéressés au traitement des requêtes en environnements mobiles.

Ainsi, nous avons proposé, dans le deuxième chapitre, une synthèse des principaux travaux liés à l’évaluation de ces requêtes. Nous avons d’abord classifié les types de requêtes mobiles les plus répandus dans la littérature et nous avons identifié leurs problèmes sous- jacents. Ensuite, nous avons présenté les principales solutions proposées pour les résoudre. Nous avons abordé trois sujets qui ont bénéficié d’une attention particulière de la part de la communauté « bases de données ». Premièrement, nous avons exposé les principales solutions développées pour résoudre les problèmes liés au traitement des requêtes spatiales (e.g. sélectionner l’hôpital le plus proche du lieu de l’accident). Deuxièmement, nous nous sommes intéressés aux travaux consacrés au traitement des requêtes dépendant de la localisation (RDL) (e.g. sélectionner les centres hospitaliers situés à moins de 15 km de ma position). Troisièmement, nous avons abordé les problèmes liés à l’interrogation des données relatives à des objets mobiles (e.g. sélectionner les ambulances les plus proches du lieu d’intervention). Cette étude bibliographique nous a permis de constater que malgré les efforts déployés pour répondre au besoin de traiter des requêtes mobiles, certains défis restent encore à relever. En effet, nous avons identifié plusieurs formes de requêtes qui méritent davantage d’études. Il s’agit particulièrement des requêtes mobiles avec des contraintes de temps réel (e.g. dans un délai d’une minute, sélectionner les hôpitaux situés à moins de 5 km de ma position). Le besoin de traiter ces types de requêtes est très concret dans plusieurs domaines (e.g. urgence médicale). Dans cette thèse, nous avons proposé des solutions aux problèmes liés au traitement des requêtes dépendant de la localisation avec des contraintes de temps réel.

Nous avons proposé un langage permettant d’exprimer de manière simple et intuitive des requêtes dépendant de la localisation (le langage LDQL). Les requêtes dépendant de la localisation forment un sous-ensemble des requêtes mobiles classifiées dans le deuxième chapitre. Selon les contraintes associées aux requêtes, plusieurs types de requêtes RDL

peuvent encore être distingués. Ainsi, avant de décrire la syntaxe du langage proposé, nous avons identifié, dans le troisième chapitre, les différents types de requêtes RDL. La syntaxe du langage LDQL est semblable à celle du langage SQL, auquel nous ajoutons des opérateurs permettant d’exprimer la dépendance des résultats par rapport à la localisation des clients mobiles, les contraintes temporelles et les conditions liées aux résultats partiels (e.g. pourcentage minimum de résultats attendus).

Afin de permettre de traiter les différents types de requêtes RDL identifiés, nous avons conçu une architecture qui tient compte aussi bien des spécificités des requêtes RDL que des contraintes de temps réel. Ainsi, nous avons proposé des modules destinés à être implantés au-dessus de SGBD existants. Cette architecture est conçue de manière à ne dépendre ni d’un SGBD particulier, ni des systèmes de localisation ni des technologies réseaux. Elle est générique et peut être adaptée facilement à différents contextes. Il suffit pour cela d’adapter certains de ces modules selon les cas d’utilisation. Dans le quatrième chapitre, nous avons détaillé les principes de cette architecture et nous avons décrit les interactions entre ses différents modules. De même, nous avons présenté les étapes de traitement de certains types de requêtes RDL en nous basant sur cette architecture.

Notre choix de considérer le SGBD comme une boite noire rendant des services particuliers (e.g. traitement de requêtes spatiales) a un impact sur les méthodes à employer pour traiter des requêtes RDL avec des contraintes de temps réel. Ainsi, nous avons détaillé des modules de cette architecture et nous avons proposé différentes méthodes pour la prise en compte de la dépendance des résultats par rapport à la localisation et pour la gestion des contraintes de temps réel.

D’une part, nous nous sommes focalisés sur deux modules de notre architecture. Le premier permet de transformer des requêtes exprimées dans le langage LDQL en requêtes spatiales pouvant être évaluées par le SGBD sous-jacent. Ainsi, nous avons proposé dans le cinquième chapitre, des méthodes permettant de tenir compte de la localisation du client et de son mouvement avant de soumettre la requête au SGBD sous-jacent. Un autre module de l’architecture agit sur les résultats des requêtes RDL juste avant le transfert des données. Ce module permet d’éviter de transmettre au client mobile des résultats incorrects dus à son déplacement entre l’envoi de la requête et la réception des résultats. Ainsi, la méthode de vérification de la validité spatiale proposée permet de réduire les coûts de communication. Certains types de requêtes RDL ont des spécificités qui ont nécessité l’adaptation des méthodes proposées afin de tenir compte de leurs contraintes. Nous avons ainsi apporté des solutions au problèmes de traitement des requêtes RDL continues (e.g. pendant 20 minutes, sélectionner les hôpitaux situés à moins de 15 km par rapport à ma position). Nous avons également proposé des méthodes pour le traitement des requêtes RDL à résultats partiels (e.g. sélectionner les hôpitaux situés à moins de 15 km, un minimum de 3 hôpitaux est demandé).

D’autre part, nous nous sommes intéressés à la gestion des contraintes de temps réel dans le cadre de l’architecture proposée. Nous avons d’abord proposé une méthode permettant de déterminer l’échéance à prendre en compte selon le type de requête. Nous avons également proposé d’appliquer un test d’admission rejetant à l’avance les requêtes qui ne respecteraient pas leurs échéances. Ce test d’admission s’appuie sur les estimations fournies par l’évaluateur de coûts du SGBD sous-jacent. Pour ordonnancer les requêtes selon leurs échéances, nous nous sommes basés sur l’algorithme EDF. Nous avons également proposé une méthode permettant de sélectionner un ensemble de requêtes à soumettre simultanément au SGBD sous-jacent en tenant compte du fait que ce dernier ignore les priorités affectées aux requêtes.

Nous avons mené des simulations pour évaluer les performances de nos propositions pour la prise en compte des contraintes de temps réel. Nous avons constaté le bénéfice apporté par les tests d’admission au pourcentage de requêtes respectant leurs échéances et à la réduction des coûts de communication. Cependant, nous avons observé que les décisions prises par ces tests dépendent fortement de la précision des estimations fournies par l’évaluateur de coûts du SGBD sous-jacent.

Ajoutons finalement, que nous avons implémenté un prototype permettant de traiter différents types de requêtes RDL. Le développement d’un tel prototype nous a permis de montrer la faisabilité de nos propositions en implantant différents modules de l’architecture proposée au-dessus du SGBD Oracle. Nous avons testé ce prototype avec plusieurs exemples de requêtes RDL exprimées dans le langage LDQL. Pour pouvoir vérifier la validité des résultats retournés, nous avons interrogé des données relatives à la localisation de plus de 400 centres hospitaliers en France. Ce prototype a également été utilisé pour évaluer les performances de certaines méthodes proposées dans cette thèse. Nous avons constaté que la validité des résultats d’une requête RDL dépend de plusieurs facteurs. En effet, le pourcentage de résultats incorrects dépend principalement de la vitesse du client, de la complexité des requêtes (e.g. nombre de jointures), de la densité dans l’espace des objets cibles et du taux d’arrivée des requêtes. Nous avons observé que le surcoût introduit par la méthode de vérification de la validité spatiale pour réduire les coûts de communication est raisonnable. D’un autre côté, nous avons constaté que la prise en compte des contraintes de temps réel permet non seulement d’augmenter le pourcentage de requêtes respectant leurs échéances mais aussi d’augmenter le pourcentage de résultats corrects.