Javascript must be enabled to continue!
Supporting multiple data stores based applications in cloud environments
View through CrossRef
Soutenir les applications utilisant des bases de données multiples dans un environnement Cloud Computing
Avec l’avènement du cloud computing et des big data, de nouveaux systèmes de gestion de bases de données sont apparus, connus en général sous le vocable systèmes NoSQL. Par rapport aux systèmes relationnels, ces systèmes se distinguent par leur absence de schéma, une spécialisation pour des types de données particuliers (documents, graphes, clé/valeur et colonne) et l’absence de langages de requêtes déclaratifs. L’offre est assez pléthorique et il n’y a pas de standard aujourd’hui comme peut l’être SQL pour les systèmes relationnels. De nombreuses applications peuvent avoir besoin de manipuler en même temps des données stockées dans des systèmes relationnels et dans des systèmes NoSQL. Le programmeur doit alors gérer deux (au moins) modèles de données différents et deux (au moins) langages de requêtes différents pour pouvoir écrire son application. De plus, il doit gérer explicitement tout son cycle de vie. En effet, il a à (1) coder son application, (2) découvrir les services de base de données déployés dans chaque environnement Cloud et choisir son environnement de déploiement, (3) déployer son application, (4) exécuter des requêtes multi-sources en les programmant explicitement dans son application, et enfin le cas échéant (5) migrer son application d’un environnement Cloud à un autre. Toutes ces tâches sont lourdes et fastidieuses et le programmeur risque d’être perdu dans ce haut niveau d’hétérogénéité. Afin de pallier ces problèmes et aider le programmeur tout au long du cycle de vie des applications utilisant des bases de données multiples, nous proposons un ensemble cohérent de modèles, d’algorithmes et d’outils. En effet, notre travail dans ce manuscrit de thèse se présente sous forme de quatre contributions. Tout d’abord, nous proposons un modèle de données unifié pour couvrir l’hétérogénéité entre les modèles de données relationnelles et NoSQL. Ce modèle de données est enrichi avec un ensemble de règles de raffinement. En se basant sur ce modèle, nous avons défini notre algèbre de requêtes. Ensuite, nous proposons une interface de programmation appelée ODBAPI basée sur notre modèle de données unifié, qui nous permet de manipuler de manière uniforme n’importe quelle source de données qu’elle soit relationnelle ou NoSQL. ODBAPI permet de programmer des applications indépendamment des bases de données utilisées et d’exprimer des requêtes simples et complexes multi-sources. Puis, nous définissons la notion de bases de données virtuelles qui interviennent comme des médiateurs et interagissent avec les bases de données intégrées via ODBAPI. Ce dernier joue alors le rôle d’adaptateur. Les bases de données virtuelles assurent l’exécution des requêtes d’une façon optimale grâce à un modèle de coût et un algorithme de génération de plan d’exécution optimal que nous définis. Enfin, nous proposons une approche automatique de découverte de bases de données dans des environnements Cloud. En effet, les programmeurs peuvent décrire leurs exigences en termes de bases de données dans des manifestes, et grâce à notre algorithme d’appariement, nous sélectionnons l’environnement le plus adéquat à notre application pour la déployer. Ainsi, nous déployons l’application en utilisant une API générique de déploiement appelée COAPS. Nous avons étendue cette dernière pour pouvoir déployer les applications utilisant plusieurs sources de données. Un prototype de la solution proposée a été développé et mis en œuvre dans des cas d'utilisation du projet OpenPaaS. Nous avons également effectué diverses expériences pour tester l'efficacité et la précision de nos contributions
Title: Supporting multiple data stores based applications in cloud environments
Description:
Soutenir les applications utilisant des bases de données multiples dans un environnement Cloud Computing
Avec l’avènement du cloud computing et des big data, de nouveaux systèmes de gestion de bases de données sont apparus, connus en général sous le vocable systèmes NoSQL.
Par rapport aux systèmes relationnels, ces systèmes se distinguent par leur absence de schéma, une spécialisation pour des types de données particuliers (documents, graphes, clé/valeur et colonne) et l’absence de langages de requêtes déclaratifs.
L’offre est assez pléthorique et il n’y a pas de standard aujourd’hui comme peut l’être SQL pour les systèmes relationnels.
De nombreuses applications peuvent avoir besoin de manipuler en même temps des données stockées dans des systèmes relationnels et dans des systèmes NoSQL.
Le programmeur doit alors gérer deux (au moins) modèles de données différents et deux (au moins) langages de requêtes différents pour pouvoir écrire son application.
De plus, il doit gérer explicitement tout son cycle de vie.
En effet, il a à (1) coder son application, (2) découvrir les services de base de données déployés dans chaque environnement Cloud et choisir son environnement de déploiement, (3) déployer son application, (4) exécuter des requêtes multi-sources en les programmant explicitement dans son application, et enfin le cas échéant (5) migrer son application d’un environnement Cloud à un autre.
Toutes ces tâches sont lourdes et fastidieuses et le programmeur risque d’être perdu dans ce haut niveau d’hétérogénéité.
Afin de pallier ces problèmes et aider le programmeur tout au long du cycle de vie des applications utilisant des bases de données multiples, nous proposons un ensemble cohérent de modèles, d’algorithmes et d’outils.
En effet, notre travail dans ce manuscrit de thèse se présente sous forme de quatre contributions.
Tout d’abord, nous proposons un modèle de données unifié pour couvrir l’hétérogénéité entre les modèles de données relationnelles et NoSQL.
Ce modèle de données est enrichi avec un ensemble de règles de raffinement.
En se basant sur ce modèle, nous avons défini notre algèbre de requêtes.
Ensuite, nous proposons une interface de programmation appelée ODBAPI basée sur notre modèle de données unifié, qui nous permet de manipuler de manière uniforme n’importe quelle source de données qu’elle soit relationnelle ou NoSQL.
ODBAPI permet de programmer des applications indépendamment des bases de données utilisées et d’exprimer des requêtes simples et complexes multi-sources.
Puis, nous définissons la notion de bases de données virtuelles qui interviennent comme des médiateurs et interagissent avec les bases de données intégrées via ODBAPI.
Ce dernier joue alors le rôle d’adaptateur.
Les bases de données virtuelles assurent l’exécution des requêtes d’une façon optimale grâce à un modèle de coût et un algorithme de génération de plan d’exécution optimal que nous définis.
Enfin, nous proposons une approche automatique de découverte de bases de données dans des environnements Cloud.
En effet, les programmeurs peuvent décrire leurs exigences en termes de bases de données dans des manifestes, et grâce à notre algorithme d’appariement, nous sélectionnons l’environnement le plus adéquat à notre application pour la déployer.
Ainsi, nous déployons l’application en utilisant une API générique de déploiement appelée COAPS.
Nous avons étendue cette dernière pour pouvoir déployer les applications utilisant plusieurs sources de données.
Un prototype de la solution proposée a été développé et mis en œuvre dans des cas d'utilisation du projet OpenPaaS.
Nous avons également effectué diverses expériences pour tester l'efficacité et la précision de nos contributions.
Related Results
CLOUD COMPUTING - NAVIGATING THE DIGITAL SKY
CLOUD COMPUTING - NAVIGATING THE DIGITAL SKY
“Cloud Computing – Navigating the Digital Sky” is an extensive guide designed to provide a thorough understanding of cloud computing, an essential technology in today’s digital age...
ATLID Cloud Climate Product
ATLID Cloud Climate Product
Abstract. Despite significant advances in atmospheric measurements and modeling, clouds response to human-induced climate warming remains the largest source of uncertainty in model...
Using Himiwari-9 cloud tracking to support the analysis of measurements from the ACADIA and HALO-South field campaigns
Using Himiwari-9 cloud tracking to support the analysis of measurements from the ACADIA and HALO-South field campaigns
The large horizontal grid size of current atmospheric models means that subgrid heterogeneity in cloud properties must be parameterised. A number of studies have suggested that th...
A user-centered and autonomic multi-cloud architecture for high performance computing applications
A user-centered and autonomic multi-cloud architecture for high performance computing applications
Un utilisateur centré et multi-cloud architecture pour le calcul des applications de haute performance
Le cloud computing a été considéré comme une option pour exéc...
AI-driven zero-touch orchestration of edge-cloud services
AI-driven zero-touch orchestration of edge-cloud services
(English) 6G networks demand orchestration systems capable of managing thousands of distributed microservices under sub-millisecond latency constraints. Traditional centralized app...
Adoption Strategy for Cloud Computing in Kenyan Research Institutions
Adoption Strategy for Cloud Computing in Kenyan Research Institutions
Cloud computing has transformed the aspect of distributed computing from many other prevailing methods by offering more unlimited benefits, like cutting down computing costs and al...
Hybrid Cloud Scheduling Method for Cloud Bursting
Hybrid Cloud Scheduling Method for Cloud Bursting
In the paper, we consider the hybrid cloud model used for cloud bursting, when the computational capacity of the private cloud provider is insufficient to deal with the peak number...
Local Similarity-Driven Refinement for Model-Agnostic Ground-Based Cloud Detection
Local Similarity-Driven Refinement for Model-Agnostic Ground-Based Cloud Detection
Cloud cover estimation is of crucial significance in meteorological observations and short-term/long-term weather forecasting, as it directly affects the accuracy of radiation bala...

