• Aucun résultat trouvé

Supporting multiple data stores based applications in cloud environments

N/A
N/A
Protected

Academic year: 2021

Partager "Supporting multiple data stores based applications in cloud environments"

Copied!
154
0
0

Texte intégral

(1)

HAL Id: tel-01280236

https://tel.archives-ouvertes.fr/tel-01280236

Submitted on 29 Feb 2016

HAL is a multi-disciplinary open access

archive for the deposit and dissemination of sci-entific research documents, whether they are pub-lished or not. The documents may come from teaching and research institutions in France or abroad, or from public or private research centers.

L’archive ouverte pluridisciplinaire HAL, est destinée au dépôt et à la diffusion de documents scientifiques de niveau recherche, publiés ou non, émanant des établissements d’enseignement et de recherche français ou étrangers, des laboratoires publics ou privés.

Supporting multiple data stores based applications in

cloud environments

Rami Sellami

To cite this version:

Rami Sellami. Supporting multiple data stores based applications in cloud environments. Modeling and Simulation. Université Paris-Saclay, 2016. English. �NNT : 2016SACLL002�. �tel-01280236�

(2)

NNT : 2016SACLL002

THESE DE DOCTORAT

DE L’UNIVERSITE PARIS

préparée à TELECOM SudParis

ÉCOLE DOCTORALE N°

Sciences et technologies de l'information et de la communication

Spécialité de doctorat

SUPPORTING MULTIPLE DATA STORES BASED APPLICATIONS IN CLOUD

Thèse présentée et soutenue à

Evry

Composition du Jury :

Mme Daniella Professeur, Université Paris Dauphine GRIGORI

M. Bernd AMANN Professeur, Université Pierre

Mme.Genoveva Chargé de recherche (CNRS), Laboratoire VARGAS-SOLAR d'Informatique de Grenoble

M.Ladjel Professeur, ISAE-BELLATRECHE

M. Sami BHIRI Maître de conférences, Université de Monastir

M. Talel Professeur, Telecom ParisTech ABDESSALEM

M. Bruno DEFUDE Professeur, Telecom SudParis

THESE DE DOCTORAT

DE L’UNIVERSITE PARIS

-

SACLAY,

préparée à TELECOM SudParis

ÉCOLE DOCTORALE N°580

Sciences et technologies de l'information et de la communication

Spécialité de doctorat : Informatique

Par

M Rami Sellami

UPPORTING MULTIPLE DATA STORES BASED APPLICATIONS IN CLOUD

ENVIRONMENTS

Evry

, le 05/02/2016 :

Professeur, Université Paris Dauphine Président du jury niversité Pierre-et-Marie-Curie Rapporteur de recherche (CNRS), Laboratoire Rapporteur d'Informatique de Grenoble

-ENSMA Examinateur de conférences, Université Examinateur Telecom ParisTech Examinateur Professeur, Telecom SudParis Directeur de thèse

SACLAY,

Sciences et technologies de l'information et de la communication

(3)
(4)

A

c

k

n

o

w

l

e

d

g

e

m

e

n

t

s

I thank God for making all things possible for me and giving me strengthen to go. A thesis journey is not always easy, but with the supervision, support and encouragement of many people, I have never regretted that I started it.

I would like to thank all members of the jury. I thank Professor Bernd Amann and Professor Genoveva Vargas-Solar for accepting being my thesis reviewers and for their attention and thoughtful comments. I also thank Professor Ladjen Bel-latreche, Professor Sami Bhiri, Professor Daniella Grigori and Professor Talel Ab-dessalem for accepting being my thesis examiners.

I would like to express my sincere appreciation and gratitude to my supervisor Bruno Defude. His valuable advice, enthusiasm and continuous support during this thesis allowed me to acquire new understandings and extend my experiences. He was not only an advisor but also a good listener and a friend who showed me just what I was able to achieve even when I did not see it myself. Thank you for taking me on this journey and for your guidance, it has been a true pleasure and I hope that we can continue our collaboration.

I owe my deepest gratitude and warmest aection to the members of the com-puter science department of Telecom SudParis. They contributed to making these last years a wonderful experience. I would like to especially thank Brigitte Houas-sine for her kind help and assistance. Here it goes an incomplete list: Emna, Nour, Mourad, Souha, Nabila, Nathan, Fethi, Mehdi, Walid, Samir, Elisabeth, Olivier, François, Amel, Alda, Amel, and Mohamed. Thanks for opening your hearts and letting me be part of your lives.

I am forever thankful to my family: my parents, Zouhir and Amel, my parents in law, Abdelmottaleb and Alia, my brothers, Mohamed and Ramzi, my sister in law Manel and my brother in law, Ilyess who were always there for me with encouraging words whenever I started doubting myself. Your encouragement made me go forward and made me want to succeed. I express my deepest gratitude to my loving wife Sirine. Her love, encouragement, understanding and support helped me to get through many dicult times. Thank you so much for having faith in me! I cannot forget, my beautiful son Aziz. You supported me without even you know it. I love you so much.

(5)
(6)

✈ ❋♦" ♠② ♣❛"❡♥)* ❋♦" ♠② ♣❛"❡♥)* ✐♥ ❧❛✇ ❋♦" ♠② ✇✐❢❡ ❛♥❞ ♠② *♦♥ ❋♦" ♠② ❜"♦)❤❡"* ❋♦" ♠② *✐*)❡" ❛♥❞ ♠② ❜"♦)❤❡" ✐♥ ❧❛✇ ❋♦" ♠② ❢"✐❡♥❞*

(7)
(8)

R

é

s

u

m

é

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 sys-tèmes NoSQL. Par rapport aux syssys-tèmes relationnels, ces syssys-tèmes se distinguent par leur absence de schéma, une spécialisation pour des types de données par-ticuliers (documents, graphes, clé/valeur et colonne) et l'absence de langages de requêtes déclaratifs. L'ore est assez pléthorique et il n'y a pas de standard au-jourd'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 diérents et deux (au moins) langages de requêtes diérents pour pouvoir écrire son application. De plus, il doit gérer explicitement tout son cycle de vie. En eet, 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 enn 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é.

An 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 eet, 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 unié 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 ranement. En se basant sur ce modèle, nous avons déni 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 unié, 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 re-quêtes simples et complexes multi-sources. Puis, nous dénissons la notion de bases de données virtuelles qui interviennent comme des médiateurs et interagis-sent 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énis. Enn, nous proposons une ap-proche automatique de découverte de bases de données dans des environnements Cloud. En eet, 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

(9)

❞!♣❧♦②❡'✳ ❆✐♥,✐✱ ♥♦✉, ❞!♣❧♦②♦♥, ❧✬❛♣♣❧✐❝❛2✐♦♥ ❡♥ ✉2✐❧✐,❛♥2 ✉♥❡ ❆3■ ❣!♥!'✐6✉❡ ❞❡ ❞!♣❧♦✐❡♠❡♥2 ❛♣♣❡❧!❡ ❈❖❆3❙✳ ◆♦✉, ❛✈♦♥, !2❡♥❞✉❡ ❝❡22❡ ❞❡'♥✐='❡ ♣♦✉' ♣♦✉✈♦✐' ❞!✲ ♣❧♦②❡' ❧❡, ❛♣♣❧✐❝❛2✐♦♥, ✉2✐❧✐,❛♥2 ♣❧✉,✐❡✉', ,♦✉'❝❡, ❞❡ ❞♦♥♥!❡,✳ ❯♥ ♣'♦2♦2②♣❡ ❞❡ ❧❛ ,♦❧✉2✐♦♥ ♣'♦♣♦,!❡ ❛ !2! ❞!✈❡❧♦♣♣! ❡2 ♠✐, ❡♥ @✉✈'❡ ❞❛♥, ❞❡, ❝❛, ❞✬✉2✐❧✐,❛2✐♦♥ ❞✉ ♣'♦❥❡2 ❖♣❡♥3❛❛❙✳ ◆♦✉, ❛✈♦♥, !❣❛❧❡♠❡♥2 ❡✛❡❝2✉! ❞✐✈❡',❡, ❡①♣!'✐❡♥❝❡, ♣♦✉' 2❡,2❡' ❧✬❡✣❝❛❝✐2! ❡2 ❧❛ ♣'!❝✐,✐♦♥ ❞❡ ♥♦, ❝♦♥2'✐❜✉2✐♦♥,✳ ▼♦"#✲❝❧'#✿ ◆✉❛❣❡, ❞❡, ❞♦♥♥!❡,✱ ❉♦♥♥!❡, ✈♦❧✉♠✐♥❡✉,❡,✱ ❇❛,❡, ❞❡ ❞♦♥♥!❡, ◆♦❙◗▲✱ ❇❛,❡, ❞❡ ❞♦♥♥!❡, '❡❧❛2✐♦♥♥❡❧❧❡,✱ ❖♣2✐♠✐,❛2✐♦♥ ❡2 !✈❛❧✉❛2✐♦♥ ❞❡, '❡6✉J2❡, ❞❡ ❥♦✐♥✲ 2✉'❡✱ 3❡',✐,2❛♥❝❡ ♣♦❧②❣❧♦22❡✱ ❉!❝♦✉✈❡'2❡ K ❜❛,❡ ❞❡ ♠❛♥✐❢❡,2❡,

(10)

❆❜"#$❛❝#

❚❤❡ ♣$♦❞✉❝)✐♦♥ ♦❢ ❤✉❣❡ ❛♠♦✉♥) ♦❢ ❞❛)❛ ❛♥❞ )❤❡ ❡♠❡$❣❡♥❝❡ ♦❢ ❈❧♦✉❞ ❝♦♠♣✉)✐♥❣ ❤❛✈❡ ✐♥)$♦❞✉❝❡❞ ♥❡✇ $❡4✉✐$❡♠❡♥)5 ❢♦$ ❞❛)❛ ♠❛♥❛❣❡♠❡♥)✳ ▼❛♥② ❛♣♣❧✐❝❛)✐♦♥5 ♥❡❡❞ )♦ ✐♥)❡$❛❝) ✇✐)❤ 5❡✈❡$❛❧ ❤❡)❡$♦❣❡♥❡♦✉5 ❞❛)❛ 5)♦$❡5 ❞❡♣❡♥❞✐♥❣ ♦♥ )❤❡ )②♣❡ ♦❢ ❞❛)❛ )❤❡② ❤❛✈❡ )♦ ♠❛♥❛❣❡✿ )$❛❞✐)✐♦♥❛❧ ❞❛)❛ )②♣❡5✱ ❞♦❝✉♠❡♥)5✱ ❣$❛♣❤ ❞❛)❛ ❢$♦♠ 5♦❝✐❛❧ ♥❡)✇♦$❦5✱ 5✐♠♣❧❡ ❦❡②✲✈❛❧✉❡ ❞❛)❛✱ ❡)❝✳ ■♥)❡$❛❝)✐♥❣ ✇✐)❤ ❤❡)❡$♦❣❡♥❡♦✉5 ❞❛)❛ ♠♦❞❡❧5 ✈✐❛ ❞✐✛❡$❡♥) ❆@■5✱ ❛♥❞ ♠✉❧)✐♣❧❡ ❞❛)❛ 5)♦$❡5 ❜❛5❡❞ ❛♣♣❧✐❝❛)✐♦♥5 ✐♠♣♦5❡5 ❝❤❛❧❧❡♥❣✐♥❣ )❛5❦5 )♦ )❤❡✐$ ❞❡✈❡❧♦♣❡$5✳ ■♥❞❡❡❞✱ ♣$♦❣$❛♠♠❡$5 ❤❛✈❡ )♦ ❜❡ ❢❛♠✐❧✐❛$ ✇✐)❤ ❞✐✛❡$❡♥) ❆@■5✳ ■♥ ❛❞❞✐)✐♦♥✱ )❤❡ ❡①❡❝✉)✐♦♥ ♦❢ ❝♦♠♣❧❡① 4✉❡$✐❡5 ♦✈❡$ ❤❡)❡$♦❣❡♥❡♦✉5 ❞❛)❛ ♠♦❞✲ ❡❧5 ❝❛♥♥♦)✱ ❝✉$$❡♥)❧②✱ ❜❡ ❛❝❤✐❡✈❡❞ ✐♥ ❛ ❞❡❝❧❛$❛)✐✈❡ ✇❛② ❛5 ✐) ✐5 ✉5❡❞ )♦ ❜❡ ✇✐)❤ ♠♦♥♦✲❞❛)❛ 5)♦$❡ ❛♣♣❧✐❝❛)✐♦♥✱ ❛♥❞ )❤❡$❡❢♦$❡ $❡4✉✐$❡5 ❡①)$❛ ✐♠♣❧❡♠❡♥)❛)✐♦♥ ❡✛♦$)5✳ ▼♦$❡♦✈❡$✱ ❞❡✈❡❧♦♣❡$5 ♥❡❡❞ )♦ ♠❛5)❡$ ❛♥❞ ❞❡❛❧ ✇✐)❤ )❤❡ ❝♦♠♣❧❡① ♣$♦❝❡55❡5 ♦❢ ❈❧♦✉❞ ❞✐5❝♦✈❡$②✱ ❛♥❞ ❛♣♣❧✐❝❛)✐♦♥ ❞❡♣❧♦②♠❡♥) ❛♥❞ ❡①❡❝✉)✐♦♥✳ ■♥ )❤✐5 ♠❛♥✉5❝$✐♣)✱ ✇❡ ♣$♦♣♦5❡ ❛♥ ✐♥)❡❣$❛)❡❞ 5❡) ♦❢ ♠♦❞❡❧5✱ ❛❧❣♦$✐)❤♠5 ❛♥❞ )♦♦❧5 ❛✐♠✐♥❣ ❛) ❛❧❧❡✈✐❛)✐♥❣ ❞❡✈❡❧♦♣❡$5 )❛5❦ ❢♦$ ❞❡✈❡❧♦♣✐♥❣✱ ❞❡♣❧♦②✐♥❣ ❛♥❞ ♠✐❣$❛)✲ ✐♥❣ ♠✉❧)✐♣❧❡ ❞❛)❛ 5)♦$❡5 ❛♣♣❧✐❝❛)✐♦♥5 ✐♥ ❝❧♦✉❞ ❡♥✈✐$♦♥♠❡♥)5✳ ❖✉$ ❛♣♣$♦❛❝❤ ❢♦❝✉5❡5 ♠❛✐♥❧② ♦♥ )❤$❡❡ ♣♦✐♥)5✳ ❋✐$5)✱ ✇❡ ♣$♦✈✐❞❡ ❛ ✉♥✐✜❡❞ ❞❛)❛ ♠♦❞❡❧ ✉5❡❞ ❜② ❛♣♣❧✐❝❛)✐♦♥5 ❞❡✈❡❧♦♣❡$5 )♦ ✐♥)❡$❛❝) ✇✐)❤ ❤❡)❡$♦❣❡♥❡♦✉5 $❡❧❛)✐♦♥❛❧ ❛♥❞ ◆♦❙◗▲ ❞❛)❛ 5)♦$❡5✳ ❚❤✐5 ♠♦❞❡❧ ✐5 ❡♥$✐❝❤❡❞ ❜② ❛ 5❡) ♦❢ $❡✜♥❡♠❡♥) $✉❧❡5✳ ❇❛5❡❞ ♦♥ )❤❛)✱ ✇❡ ❞❡✜♥❡ ♦✉$ 4✉❡$② ❛❧❣❡❜$❛✳ ❉❡✈❡❧♦♣❡$5 ❡①♣$❡55 4✉❡$✐❡5 ✉5✐♥❣ ❖@❊◆✲@❛❛❙✲❉❛)❛❇❛5❡ ❆@■ ✭❖❉❇❆@■✮✱ ❛ ✉♥✐4✉❡ ❘❊❙❚ ❆@■ ❛❧❧♦✇✐♥❣ ♣$♦❣$❛♠♠❡$5 )♦ ✇$✐)❡ )❤❡✐$ ❛♣♣❧✐❝❛)✐♦♥5 ❝♦❞❡ ✐♥❞❡✲ ♣❡♥❞❡♥)❧② ♦❢ )❤❡ )❛$❣❡) ❞❛)❛ 5)♦$❡5✳ ❙❡❝♦♥❞✱ ✇❡ ♣$♦♣♦5❡ ✈✐$)✉❛❧ ❞❛)❛ 5)♦$❡5✱ ✇❤✐❝❤ ❛❝) ❛5 ❛ ♠❡❞✐❛)♦$ ❛♥❞ ✐♥)❡$❛❝) ✇✐)❤ ✐♥)❡❣$❛)❡❞ ❞❛)❛ 5)♦$❡5 ✇$❛♣♣❡❞ ❜② ❖❉❇❆@■✳ ❚❤✐5 $✉♥✲)✐♠❡ ❝♦♠♣♦♥❡♥) 5✉♣♣♦$)5 )❤❡ ❡①❡❝✉)✐♦♥ ♦❢ 5✐♥❣❧❡ ❛♥❞ ❝♦♠♣❧❡① 4✉❡$✐❡5 ♦✈❡$ ❤❡)❡$♦❣❡♥❡♦✉5 ❞❛)❛ 5)♦$❡5✳ ■) ✐♠♣❧❡♠❡♥)5 ❛ ❝♦5) ♠♦❞❡❧ )♦ ♦♣)✐♠❛❧❧② ❡①❡❝✉)❡ 4✉❡$✐❡5 ❛♥❞ ❛ ❞②♥❛♠✐❝ ♣$♦❣$❛♠♠✐♥❣ ❜❛5❡❞ ❛❧❣♦$✐)❤♠ )♦ ❣❡♥❡$❛)❡ ❛♥ ♦♣)✐♠❛❧ 4✉❡$② ❡①❡❝✉)✐♦♥ ♣❧❛♥✳ ❋✐♥❛❧❧②✱ ✇❡ ♣$❡5❡♥) ❛ ❞❡❝❧❛$❛)✐✈❡ ❛♣♣$♦❛❝❤ )❤❛) ❡♥❛❜❧❡5 )♦ ❧✐❣❤)❡♥ )❤❡ ❜✉$❞❡♥ ♦❢ )❤❡ )❡❞✐♦✉5 ❛♥❞ ♥♦♥✲5)❛♥❞❛$❞ )❛5❦5 ♦❢ ✭✶✮ ❞✐5❝♦✈❡$✐♥❣ $❡❧❡✈❛♥) ❈❧♦✉❞ ❡♥✈✐$♦♥♠❡♥)5 ❛♥❞ ✭✷✮ ❞❡♣❧♦②✐♥❣ ❛♣♣❧✐❝❛)✐♦♥5 ♦♥ )❤❡♠ ✇❤✐❧❡ ❧❡))✐♥❣ ❞❡✈❡❧♦♣❡$5 )♦ 5✐♠♣❧② ❢♦❝✉5 ♦♥ 5♣❡❝✐❢②✐♥❣ )❤❡✐$ 5)♦$❛❣❡ ❛♥❞ ❝♦♠♣✉)✐♥❣ $❡4✉✐$❡♠❡♥)5✳ ❆ ♣$♦)♦)②♣❡ ♦❢ )❤❡ ♣$♦♣♦5❡❞ 5♦❧✉)✐♦♥ ❤❛5 ❜❡❡♥ ❞❡✈❡❧♦♣❡❞ ❛♥❞ ✐♠♣❧❡♠❡♥)❡❞ ✉5❡ ❝❛5❡5 ❢$♦♠ )❤❡ ❖♣❡♥@❛❛❙ ♣$♦❥❡❝)✳ ❲❡ ❛❧5♦ ♣❡$❢♦$♠❡❞ ❞✐✛❡$❡♥) ❡①♣❡$✐♠❡♥)5 )♦ )❡5) )❤❡ ❡✣❝✐❡♥❝② ❛♥❞ ❛❝❝✉$❛❝② ♦❢ ♦✉$ ♣$♦♣♦5❛❧5✳ ❑❡②✇♦%❞'✿ ❈❧♦✉❞ ❈♦♠♣✉)✐♥❣✱ ❇✐❣ ❉❛)❛✱ ❘❊❙❚✲❜❛5❡❞ ❆@■✱ ◆♦❙◗▲ ❞❛)❛ 5)♦$❡5✱ $❡❧❛)✐♦♥❛❧ ❞❛)❛ 5)♦$❡5✱ ❥♦✐♥ 4✉❡$✐❡5 ♦♣)✐♠✐③❛)✐♦♥ ❛♥❞ ❡✈❛❧✉❛)✐♦♥✱ ♣♦❧②❣❧♦) ♣❡$5✐5✲ )❡♥❝❡✱ ♠❛♥✐❢❡5) ❜❛5❡❞ ♠❛)❝❤✐♥❣

(11)
(12)

L

i

s

t

o

f

P

u

b

l

i

c

a

t

i

o

n

s

[Publication 1] Rami Sellami and Bruno Defude. Using multiple data stores in the cloud: Challenges and solutions. In The 6th International Conference on Data Management in Cloud, Grid and P2P Systems, Globe'13, Prague, Czech Republic, August 28-29.

[Publication 2] Rami Sellami, Sami Bhiri, and Bruno Defude. ODBAPI: a unied REST API for relational and NoSQL data stores. In The IEEE 3rd International Congress on Big Data (BigData'14), Anchorage, Alaska, USA, June 27 - July 2.

[Publication 3] Rami Sellami, Michel Vedrine, Sami Bhiri, and Bruno Defude. Automat-ing resources discovery for multiple data stores cloud applications. In Cloud Computing and Services Science - Fifth International Conference, CLOSER'15, Lisbon, Portugal, May 20-22.

[Publication 4] Rami Sellami, Sami Bhiri, and Bruno Defude. Supporting multi-data stores applications in cloud environments. IEEE Transactions on Services Comput-ing, Special Issue on Big Data Analytics, Infrastructure, and Applications, Vol.PP, No.99, ISSN 1939-1374, June 2015.

(13)
(14)

C

o

n

t

e

n

t

s

1 General Introduction 1

1.1 Research Context . . . 1

1.2 Research Problem . . . 3

1.3 Thesis Principles And Objectives . . . 5

1.4 Thesis Contributions . . . 5

1.5 Thesis Outline . . . 6

2 State Of The Art 2.1 Introduction . . . 9

2.2 Background . . . 10

2.2.1 Cloud Computing . . . 10

2.2.2 Big Data . . . 11

2.2.3 Using Multiple Data Stores In Cloud Environment . . . 13

2.2.3.1 Relational Data Stores . . . 13

2.2.3.2 NoSQL Data Stores . . . 14

2.2.3.3 An Illustrative Example . . . 16

2.2.3.4 NoSQL vs RDBMS . . . 18

2.2.3.5 Polyglot Persistence . . . 19

2.2.3.6 Data Stores Integration . . . 20

2.3 Related Work . . . 22

2.3.1 Unifying Data Models . . . 22

2.3.2 Easy Access To Multiple Data Stores . . . 25

2.3.3 Transparent Access To Integrated Data Stores . . . 28

2.3.4 Capturing Data Requirements And Cloud Data Store Capa-bilities . . . 32

2.4 Conclusion . . . 37

3 Unifying The Access To Relational And NoSQL Data Stores In Cloud Environments 3.1 Introduction . . . 40

3.2 Overview Of Our Approach . . . 40

3.3 Unifying Data Models . . . 42

3.3.1 Informal Description Of The Unied Data Model . . . 42 xiii

(15)

①✐✈ ❈♦♥#❡♥#% ✸✳✸✳✷ ❋♦(♠❛❧ ❉❡.❝(✐♣1✐♦♥ ❖❢ ❚❤❡ ❯♥✐✜❡❞ ❉❛1❛ ▼♦❞❡❧ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✹✹ ✸✳✸✳✸ ●❧♦❜❛❧ ❙❝❤❡♠❛ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✹✺ ✸✳✸✳✹ ◗✉❡(② ❆❧❣❡❜(❛ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✹✼ ✸✳✸✳✹✳✶ G(♦❥❡❝1✐♦♥ ❖♣❡(❛1✐♦♥ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✹✼ ✸✳✸✳✹✳✷ ❙❡❧❡❝1✐♦♥ ❖♣❡(❛1✐♦♥ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✹✽ ✸✳✸✳✹✳✸ ❈❛(1❡.✐❛♥ G(♦❞✉❝1 ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✹✽ ✸✳✸✳✹✳✹ ❏♦✐♥ ❖♣❡(❛1✐♦♥ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✺✵ ✸✳✸✳✹✳✺ ❯♥✐♦♥ ❖♣❡(❛1✐♦♥ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✺✶ ✸✳✸✳✹✳✻ ■♥1❡(.❡❝1✐♦♥ ❖♣❡(❛1✐♦♥ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✺✶ ✸✳✸✳✹✳✼ ◆❡.1 ❛♥❞ ❯♥♥❡.1 ❖♣❡(❛1✐♦♥. ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✺✷ ✸✳✸✳✹✳✽ ❆❧❣❡❜(❛✐❝ ❚(❡❡ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✺✹ ✸✳✹ ❖❉❇❆G■✿ ❛ ✉♥✐✜❡❞ ❘❊❙❚ ❆G■ ❢♦( (❡❧❛1✐♦♥❛❧ ❛♥❞ ◆♦❙◗▲ ❞❛1❛ .1♦(❡. ✺✺ ✸✳✹✳✶ ❯.❡ ❈❛.❡. ❆♥❞ ▼♦1✐✈❛1✐♦♥ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✺✻ ✸✳✹✳✶✳✶ ❋✐(.1 .❝❡♥❛(✐♦✿ ❆♣♣❧✐❝❛1✐♦♥ ♠✐❣(❛1✐♦♥ ❢(♦♠ ♦♥❡ ❞❛1❛ .1♦(❡ 1♦ ❛♥♦1❤❡( ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✺✻ ✸✳✹✳✶✳✷ ❙❡❝♦♥❞ .❝❡♥❛(✐♦✿ G♦❧②❣❧♦1 ♣❡(.✐.1❡♥❝❡ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✺✼ ✸✳✹✳✷ ❖❉❇❆G■✿ ❖♣❡♥G❛❛❙ ❉❛1❛❇❛.❡ ❆G■ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✺✽ ✸✳✹✳✷✳✶ G❛♥♦(❛♠❛ ❖❢ ❖❉❇❆G■ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✺✽ ✸✳✹✳✷✳✷ ❖♣❡(❛1✐♦♥. ♦❢ ❖❉❇❆G■ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✺✾ ✸✳✹✳✷✳✸ ❊①❛♠♣❧❡. ❖❢ ◗✉❡(✐❡. ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✻✷ ✸✳✺ ❈♦♥❝❧✉.✐♦♥ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✻✻ ✹ ❱✐#$✉❛❧ ❉❛$❛ ❙$♦#❡, ❋♦# ◗✉❡#② ❊✈❛❧✉❛$✐♦♥ ❛♥❞ ❖♣$✐♠✐③❛$✐♦♥ ✹✳✶ ■♥1(♦❞✉❝1✐♦♥ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✻✼ ✹✳✷ ❯.❡ ❈❛.❡. ❆♥❞ ▼♦1✐✈❛1✐♦♥ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✻✽ ✹✳✸ ◗✉❡(② ❊✈❛❧✉❛1✐♦♥ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✻✾ ✹✳✸✳✶ ◗✉❡(② ❊✈❛❧✉❛1✐♦♥ G(✐♥❝✐♣❧❡. ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✻✾ ✹✳✸✳✷ ◗✉❡(② ❊①❡❝✉1✐♦♥ G❧❛♥ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✼✵ ✹✳✸✳✸ ◗✉❡(✐❡. G❛(.✐♥❣ ❛♥❞ ❆❧❣❡❜(❛✐❝ ❖♣1✐♠✐③❛1✐♦♥ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✼✷ ✹✳✸✳✹ ◗✉❡(✐❡. ❆♥♥♦1❛1✐♦♥ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✼✷ ✹✳✹ ◗✉❡(② ❖♣1✐♠✐.❛1✐♦♥ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✼✹ ✹✳✹✳✶ ❈❛1❛❧♦❣ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✼✻ ✹✳✹✳✷ ❈♦.1 ▼♦❞❡❧ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✼✽ ✹✳✹✳✸ ❖♣1✐♠❛❧ ❊①❡❝✉1✐♦♥ G❧❛♥ ●❡♥❡(❛1✐♦♥ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✽✵ ✹✳✺ ❈♦♥❝❧✉.✐♦♥ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✽✻

(16)

xv

5AutomatingResourcesDiscoveryAndDeploymentForMultiple DataStoresApplicationsInCloudEnvironment

5.1 Introduction . . . 87

5.2 Use Cases And Motivation . . . 88

5.3 Automatic Discovery Of Cloud Data S tores . . . 88

5.3.1 Automatic Discovery Principles . . . 89

5.3.2 Abstract Application Manifest . . . 89

5.3.3 Oer Manifest . . . 91

5.3.4 Matching Algorithm . . . 91

5.4 Automatic Deployment Of Multiple Data Stores Based Applications 94 5.4.1 An Extension Of The Compatible One Application and Plat-form S ervice API . . . 95

5.4.2 Deployment Manifest . . . 97

5.5 XML-Based Manifest Examples . . . 97

5.6 Conclusion . . . 101

6Evaluation&Validation 6.1 Introduction . . . 103

6.2 Proofs Of Concept . . . 103

6.2.1 The OpenPaaS Project . . . 104

6.2.2 Current S tate Of ODBAPI . . . 104

6.2.3 Selecting Multiple Data Stores And Deploying ODBAPI Clients108 6.3 ODBAPI Overhead Evaluation . . . 109

6.4 Ease Of ODBAPI Use . . . 110

6.5 Complex Queries Optimization . . . 113

6.6 Conclusion . . . 119

7Conclusion&FutureWorks 7.1 Contributions . . . 123

7.2 Perspectives . . . 125

(17)
(18)

▲✐"# ♦❢ ❋✐❣✉)❡"

✶✳✶ ❚❤$❡❡ ♣♦((✐❜❧❡ (❝❡♥❛$✐♦( ♦❢ ❛♣♣❧✐❝❛0✐♦♥( ✐♥0❡$❛❝0✐♦♥( ✇✐0❤ ❞❛0❛ (0♦$❡( ✐♥ ❈❧♦✉❞ ❡♥✈✐$♦♥♠❡♥0( ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✷ ✷✳✶ ❈❧♦✉❞ ❈♦♠♣✉0✐♥❣ ❈♦♥❝❡♣0✉❛❧ ❘❡❢❡$❡♥❝❡ ▼♦❞❡❧ ❞❡✜♥❡❞ ❜② ◆■❙❚ ✳ ✶✵ ✷✳✷ ■❇▼ ❝❤❛$❛❝0❡$✐③❡( ❇✐❣ ❉❛0❛ ❜② ✐0( ✈♦❧✉♠❡✱ ✈❡❧♦❝✐0②✱ ✈❛$✐❡0② ✲ ♦$ (✐♠♣❧② ❱✸ ❬✶❪ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✶✷ ✷✳✸ ❊①❛♠♣❧❡( ♦❢ ✐❧❧✉(0$❛0✐♥❣ 0❤❡ (❛♠❡ ❞❛0❛ ♠♦❞❡❧ ✇✐0❤ ❞✐✛❡$❡♥0 0②♣❡( ♦❢ ❞❛0❛ (0♦$❡( ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✶✼ ✷✳✹ ❊①❛♠♣❧❡ ♦❢ ♣♦❧②❣❧♦0 ♣❡$(✐(0❡♥❝❡ ✐♠♣❧❡♠❡♥0❡❞ ✐♥ ❛♥ ❡✲❝♦♠♠❡$❝❡ ♣❧❛0❢♦$♠ ❬✷❪ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✷✵ ✸✳✶ ❆♥ ❡♥❞✲0♦✲❡♥❞ ♦✈❡$✈✐❡✇ ♦❢ ♦✉$ (♦❧✉0✐♦♥ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✹✵ ✸✳✷ ❯♥✐✜❡❞ ❞❛0❛ ♠♦❞❡❧ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✹✷ ✸✳✸ ❊①❡♠♣❧❡( ♦❢ ❊♥"✐"②❙❡" ❝♦♥❝❡♣0( ♦❢ 0②♣❡ ▼♦♥❣♦❉❇✱ ❘✐❛❦✱ ❛♥❞ ▼②❙◗▲ ❢$♦♠ $✐❣❤0 0♦ ❧❡❢0 ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✹✸ ✸✳✹ ❆♥ ❛♣♣❧✐❝❛0✐♦♥ ✐♥0❡$❛❝0✐♥❣ ✇✐0❤ 0❤$❡❡ ❞❛0❛ (0♦$❡( ✐♥ ❛ ❈❧♦✉❞ ❡♥✈✐✲ $♦♥♠❡♥0 ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✹✹ ✸✳✺ ❚❤❡ ❝♦$$❡(♣♦♥❞✐♥❣ ❞❛0❛ ♠♦❞❡❧ 0♦ 0❤❡ ❞❜❧♣✱ ♣❡56♦♥✱ ❛♥❞ ❝♦♥❢❡5❡♥❝❡❘✲ ❛♥❦✐♥❣ ❡♥0✐0② (❡0( ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✹✻ ✸✳✻ ❚❤❡ ❣$❛♣❤✐❝ ♥♦0❛0✐♦♥ ♦❢ 0❤❡ ♣$♦❥❡❝0✐♦♥ ♦♣❡$❛0✐♦♥ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✹✽ ✸✳✼ ❚❤❡ ❣$❛♣❤✐❝ ♥♦0❛0✐♦♥ ♦❢ 0❤❡ (❡❧❡❝0✐♦♥ ♦♣❡$❛0✐♦♥ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✹✽ ✸✳✽ ❚❤❡ ❣$❛♣❤✐❝ ♥♦0❛0✐♦♥ ♦❢ 0❤❡ ❈❛$0❡(✐❛♥ ♣$♦❞✉❝0 ♦♣❡$❛0✐♦♥ ✳ ✳ ✳ ✳ ✳ ✳ ✹✾ ✸✳✾ ❚❤❡ ❣$❛♣❤✐❝ ♥♦0❛0✐♦♥ ♦❢ 0❤❡ ❥♦✐♥ ♦♣❡$❛0✐♦♥ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✺✵ ✸✳✶✵ ❚❤❡ ❣$❛♣❤✐❝ ♥♦0❛0✐♦♥ ♦❢ 0❤❡ ✉♥✐♦♥ ♦♣❡$❛0✐♦♥ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✺✶ ✸✳✶✶ ❚❤❡ ❣$❛♣❤✐❝ ♥♦0❛0✐♦♥ ♦❢ 0❤❡ ✐♥0❡$(❡❝0✐♦♥ ♦♣❡$❛0✐♦♥ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✺✷ ✸✳✶✷ ❊①❡♣❧❡ ♦❢ ❛♥ ❛❧❣❡❜$❛✐❝ 0$❡❡ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✺✺ ✸✳✶✸ ❆♣♣❧✐❝❛0✐♦♥ ♠✐❣$❛0✐♦♥ ❢$♦♠ ♦♥❡ ❝❧♦✉❞ ❡♥✈✐$♦♥♠❡♥0 0♦ ❛♥♦0❤❡$ (❝❡♥❛$✐♦ ✺✻ ✸✳✶✹ ❯(✐♥❣ ♠✉❧0✐♣❧❡ ❞❛0❛ (0♦$❡( ✐♥ ❈❧♦✉❞ ❡♥✈✐$♦♥♠❡♥0 ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✺✼ ✸✳✶✺ ❆♥ ♦✈❡$✈✐❡✇ ♦❢ ❖❉❇❆W■ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✺✾ ✸✳✶✻ ❖❉❇❆W■ ♦♣❡$❛0✐♦♥( ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✻✵ ✹✳✶ ▼❡❞✐❛0✐♦♥ ❛$❝❤✐0❡❝0✉$❡ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✻✾ ✹✳✷ ❊①❛♠♣❧❡( ♦❢ ❛❧❣❡❜$❛✐❝ 0$❡❡( ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✼✷ ✹✳✸ ❆♥♥♦0❛0❡❞ ❛❧❣❡❜$❛✐❝ 0$❡❡ ❛❝❝♦$❞✐♥❣ 0❤❡ ❙❝❡♥❛$✐♦ ✶ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✼✸ ✹✳✹ ❆♥♥♦0❛0❡❞ ❛❧❣❡❜$❛✐❝ 0$❡❡ ❛❝❝♦$❞✐♥❣ 0❤❡ ❙❝❡♥❛$✐♦ ✷ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✼✸ ✹✳✺ ❊①❡❝✉0✐♦♥ ♣❧❛♥ ❢♦$ 0❤❡ ❙❝❡♥❛$✐♦ ✷ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✼✺ ✹✳✻ ❊①❛♠♣❧❡ ♦❢ ❝♦♠♣✉0✐♥❣ ❛♥ ♦♣❡$❛0✐♦♥ ❝♦(0 ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✽✶ ✹✳✼ ❚❤❡ ✐♥✐0✐❛❧✐③❛0✐♦♥ (0❡♣ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✽✹ ✹✳✽ ❚❤❡ ✜$(0 ✐0❡$❛0✐♦♥ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✽✺ ✹✳✾ ❚❤❡ (❡❝♦♥❞ ✐0❡$❛0✐♦♥ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✽✺ ✺✳✶ ❩♦♦♠✲✐♥ ♦♥ 0❤❡ ❞✐(❝♦✈❡$② ❝♦♠♣♦♥❡♥0 ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✽✾ ✺✳✷ ❆❜(0$❛❝0 ❛♣♣❧✐❝❛0✐♦♥ ♠❛♥✐❢❡(0 ♠♦❞❡❧ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✾✵ ①✈✐✐

(19)

①✈✐✐✐ ▲✐"# ♦❢ ❋✐❣✉)❡" ✺✳✸ ❖✛❡) ♠❛♥✐❢❡./ ♠♦❞❡❧ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✾✷ ✺✳✹ ●❡♥❡)❛/✐♥❣ /❤❡ ♦✛❡) ♠❛♥✐❢❡./ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✾✹ ✺✳✺ ❈❖❆;❙ ❆;■ ♦✈❡)✈✐❡✇ ❬✸❪ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✾✻ ✺✳✻ ❆♥ ❛♣♣❧✐❝❛/✐♦♥ ❞❡♣❧♦②♠❡♥/ .❝❡♥❛)✐♦ ❬✸❪ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✾✻ ✺✳✼ ❉❡♣❧♦②♠❡♥/ ♠❛♥✐❢❡./ ♠♦❞❡❧ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✾✼ ✺✳✽ ❚❤❡ ❛❜./)❛❝/ ❣)❛♣❤ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✶✵✵ ✻✳✶ ❖♣❡♥;❛❛❙ ♦✈❡)✈✐❡✇ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✶✵✹ ✻✳✷ ;❛❝❦❛❣❡ ❞✐❛❣)❛♠ ♦❢ ❖❉❇❆;■ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✶✵✻ ✻✳✸ ❙❝)❡❡♥.❤♦/ ♦❢ ❛❧❧ ❞❛/❛❜❛.❡. ♦✈❡)✈✐❡✇ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✶✵✼ ✻✳✹ ❙❝)❡❡♥.❤♦/ ♦❢ /❤❡ ✐♥/❡)❢❛❝❡ ❛❧❧♦✇✐♥❣ /♦ ✐♠♣♦)/ /❤❡ ❛❜./)❛❝/ ❛♣♣❧✐❝❛✲ /✐♦♥ ♠❛♥✐❢❡./ ❛♥❞ ❣❡♥❡)❛/❡ /❤❡ ❞❡♣❧♦②♠❡♥/ ♠❛♥✐❢❡./ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✶✵✽ ✻✳✺ ❊①❛♠♣❧❡ ♦❢ ❛ ❥♦✐♥ Q✉❡)✐❡. ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✶✶✹ ✻✳✻ ❚♦/❛❧ ❝♦./ ❡✈❛❧✉❛/✐♦♥ ❛❝❝♦)❞✐♥❣ /♦ /❤❡ .❝❡♥❛)✐♦. ✶ /♦ ✹ ❛♥❞ /❤❡ ❥♦✐♥. ♥✉♠❜❡)✲ ❈❛.❡ ♦❢ ❧✐♥❡❛) ❥♦✐♥ Q✉❡)✐❡. ✭▲♦❣❛)✐/❤♠✐❝ ❙❝❛❧❡✮ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✶✶✼ ✻✳✼ ❚♦/❛❧ ❝♦./ ❡✈❛❧✉❛/✐♦♥ ❛❝❝♦)❞✐♥❣ /♦ /❤❡ .❝❡♥❛)✐♦. ✶ /♦ ✹ ❛♥❞ /❤❡ ❥♦✐♥. ♥✉♠❜❡)✲ ❈❛.❡ ♦❢ ❥♦✐♥ Q✉❡)✐❡. ❛. ❛ ./❛) ✭▲♦❣❛)✐/❤♠✐❝ ❙❝❛❧❡✮ ✳ ✳ ✳ ✳ ✳ ✶✶✽ ✻✳✽ ❊①❛♠♣❧❡ ♦❢ ❛♥ ❡①❡❝✉/✐♦♥ ♣❧❛♥ ✲ ❈❛.❡ ♦❢ ❛ ❧✐♥❡❛) ❥♦✐♥ Q✉❡)② ✳ ✳ ✳ ✳ ✳ ✶✶✾ ✻✳✾ ❚♦/❛❧ ❝♦./ ❡✈❛❧✉❛/✐♦♥ ❛❝❝♦)❞✐♥❣ /♦ /❤❡ .❝❡♥❛)✐♦. ✶ /♦ ✹ ❛♥❞ /❤❡ ❥♦✐♥. ♥✉♠❜❡)✲ ❈❛.❡ ♦❢ ❧✐♥❡❛) ❥♦✐♥ Q✉❡)✐❡. ✐♥ ❛ ❜✐❣ ❞❛/❛ ❝♦♥/❡①/ ✭▲♦❣❛)✐/❤✲ ♠✐❝ ❙❝❛❧❡✮ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✶✷✵ ✻✳✶✵ ❚♦/❛❧ ❝♦./ ❡✈❛❧✉❛/✐♦♥ ❛❝❝♦)❞✐♥❣ /♦ /❤❡ .❝❡♥❛)✐♦. ✶ /♦ ✹ ❛♥❞ /❤❡ ❥♦✐♥. ♥✉♠❜❡)✲ ❈❛.❡ ♦❢ ❥♦✐♥ Q✉❡)✐❡. ❛. ❛ ./❛) ✐♥ ❛ ❜✐❣ ❞❛/❛ ❝♦♥/❡①/ ✭▲♦❣❛✲ )✐/❤♠✐❝ ❙❝❛❧❡✮ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✶✷✵

(20)

L

i

s

t

o

f

T

a

b

l

e

s

2.1 Synthesis of the related works unifying data models . . . 26

2.2 Synthesis of the related works ensuring easy access to multiple data stores . . . 29

2.3 Synthesis of the related works ensuring transparent access to inte-grated data stores . . . 32

2.4 Synthesis of the related works capturing Data Requirements And Cloud Data Store Capabilities . . . 36

3.1 Comparison chart of concepts used in dierent data stores . . . 43

3.2 Sample of three Entities from the person EntitySet . . . 47

3.3 Sample of two Entities from the dblp EntitySet . . . 47

3.4 Result of the projection of the person EntitySet using the attributes personId and personName . . . 48

3.5 Result of the selection of the person EntitySet taking into account the predicate personId = 1 . . . 48

3.6 Result of the Cartesian product of the dblp and person EntitySets 49 3.7 Result of the join between the dblp and person EntitySets . . . 50

3.8 Sample of two Entities from the P1 EntitySet . . . 51

3.9 Sample of two Entities from the P2 EntitySet . . . 52

3.10 Sample of two Entities from the P1 EntitySet . . . 52

3.11 Sample of two Entities from the P2 EntitySet . . . 53

3.12 Sample of complex attributes from the dblp EntitySet . . . 53

3.13 Result of the unnest operation . . . 53

3.14 Sample of the dblp EntitySet . . . 54

3.15 Result of the nest operation . . . 54

4.1 Specication of our catalog's parameters . . . 78

5.1 Summary of the computed distances between the oer manifest and the abstract application manifest . . . 100

6.1 Lines number in each driver in ODBAPI . . . 106

6.2 Response time of the operation create entities with ODBAPI and JDBC . . . 109

6.3 Response time of the operation delete entities with ODBAPI and JDBC . . . 110

6.4 Response time of the operation retrieve all entities with ODBAPI and JDBC . . . 110

6.5 Evaluation of ODBAPI in terms of the implementation time and source code lines number . . . 111

6.6 Results obtained for the case of linear q ueries . . . 117

6.7 Results obtained for the case of q ueries as star . . . 117

6.8 Gain between scenarios . . . 118 xix

(21)

①① ▲✐"# ♦❢ ❚❛❜❧❡" ✻✳✾ ❘❡&✉❧)& ♦❜)❛✐♥❡❞ ❢♦1 )❤❡ ❝❛&❡ ♦❢ ❧✐♥❡❛1 4✉❡1✐❡& ✲ ❇✐❣ ❞❛)❛ ❝♦♥)❡①) ✳ ✶✶✾ ✻✳✶✵ ❘❡&✉❧)& ♦❜)❛✐♥❡❞ ❢♦1 )❤❡ ❝❛&❡ ♦❢ 4✉❡1✐❡& ❛& &)❛1 ✲ ❇✐❣ ❞❛)❛ ❝♦♥)❡①) ✳ ✶✷✵ ✻✳✶✶ ●❛✐♥ ❜❡)✇❡❡♥ &❝❡♥❛1✐♦& ✲ ❇✐❣ ❞❛)❛ ❝♦♥)❡①) ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✶✷✶

(22)

❈❤❛♣$❡& ✶

●❡♥❡#❛❧ ■♥'#♦❞✉❝'✐♦♥

❈♦♥#❡♥#% ✶✳✶ ❘❡$❡❛&❝❤ ❈♦♥,❡①, ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✶ ✶✳✷ ❘❡$❡❛&❝❤ /&♦❜❧❡♠ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✸ ✶✳✸ ❚❤❡$✐$ /&✐♥❝✐♣❧❡$ ❆♥❞ ❖❜❥❡❝,✐✈❡$ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✺ ✶✳✹ ❚❤❡$✐$ ❈♦♥,&✐❜✉,✐♦♥$ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✺ ✶✳✺ ❚❤❡$✐$ ❖✉,❧✐♥❡ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✳ ✻

✶✳✶ ❘❡$❡❛&❝❤ ❈♦♥,❡①,

❈❧♦✉❞ ❝♦♠♣✉(✐♥❣ ❤❛. /❡❝❡♥(❧② ❡♠❡/❣❡❞ ❛. ❛ ♥❡✇ ❝♦♠♣✉(✐♥❣ ♣❛/❛❞✐❣♠ ❡♥❛❜❧✐♥❣ ♦♥✲❞❡♠❛♥❞ ❛♥❞ .❝❛❧❛❜❧❡ ♣/♦✈✐.✐♦♥ ♦❢ /❡.♦✉/❝❡.✱ ♣❧❛(❢♦/♠. ❛♥❞ .♦❢(✇❛/❡ ❛. .❡/✈✐❝❡.✳ ❈❧♦✉❞ ❝♦♠♣✉(✐♥❣ ✐. ♦❢(❡♥ ♣/❡.❡♥(❡❞ ❛( (❤/❡❡ ❧❡✈❡❧. ❬✹❪✿ (❤❡ ■♥❢/❛.(/✉❝(✉/❡ ❛. ❛ ❙❡/✈✐❝❡ ✭■❛❛❙✮ ❣✐✈✐♥❣ ❛❝❝❡.. (♦ ❛❜.(/❛❝(❡❞ ✈✐❡✇ ♦♥ (❤❡ ❤❛/❞✇❛/❡✱ (❤❡ A❧❛(❢♦/♠ ❛. ❛ ❙❡/✈✐❝❡ ✭A❛❛❙✮ ♣/♦✈✐❞✐♥❣ ♣/♦❣/❛♠♠✐♥❣ ❛♥❞ ❡①❡❝✉(✐♦♥ ❡♥✈✐/♦♥♠❡♥(. (♦ (❤❡ ❞❡✈❡❧♦♣❡/.✱ ❛♥❞ (❤❡ ❙♦❢✇(❛/❡ ❛. ❛ ❙❡/✈✐❝❡ ✭❙❛❛❙✮ ❡♥❛❜❧✐♥❣ .♦❢(✇❛/❡ ❛♣♣❧✐❝❛(✐♦♥. (♦ ❜❡ ✉.❡❞ ❜② ❈❧♦✉❞✬. ❡♥❞ ✉.❡/.✳ ❉✉❡ (♦ ✐(. ❡❧❛.(✐❝✐(② ♣/♦♣❡/(②✱ ❈❧♦✉❞ ❝♦♠♣✉(✐♥❣ ♣/♦✈✐❞❡. ✐♥(❡/❡.(✐♥❣ ❡①❡❝✉(✐♦♥ ❡♥✈✐/♦♥♠❡♥(. ❢♦/ .❡✈❡/❛❧ ❡♠❡/❣✐♥❣ ❛♣♣❧✐❝❛(✐♦♥. .✉❝❤ ❛. ❜✐❣ ❞❛(❛ ♠❛♥❛❣❡♠❡♥(✳ ❆❝✲ ❝♦/❞✐♥❣ (♦ (❤❡ ◆❛(✐♦♥❛❧ ■♥.(✐(✉(❡ ♦❢ ❙(❛♥❞❛/❞. ❛♥❞ ❚❡❝❤♥♦❧♦❣②✶ ✭◆■❙❚✮✱ ❇✐❣ ❉❛(❛ ✐. ❞❛"❛ ✇❤✐❝❤ ❡①❝❡❡❞ "❤❡ ❝❛♣❛❝✐"② ♦, ❝❛♣❛❜✐❧✐"② ♦❢ ❝✉,,❡♥" ♦, ❝♦♥✈❡♥"✐♦♥❛❧ ♠❡"❤♦❞4 ❛♥❞ 4②4"❡♠4✳ ■( ✐. ♠❛✐♥❧② ❜❛.❡❞ ♦♥ (❤❡ ✸✲❱. ♠♦❞❡❧ ✇❤❡/❡ (❤❡ (❤/❡❡ ❱. /❡❢❡/ (♦ ✈♦❧✉♠❡✱ ✈❡❧♦❝✐(② ❛♥❞ ✈❛/✐❡(② ♣/♦♣❡/(✐❡. ❬✺❪✳ ❱♦❧✉♠❡ ♠❡❛♥. (❤❡ ♣/♦❝❡..✐♥❣ ♦❢ ❧❛/❣❡ ❛♠♦✉♥(. ♦❢ ✐♥❢♦/♠❛(✐♦♥✳ ❱❡❧♦❝✐(② .✐❣♥✐✜❡. (❤❡ ✐♥❝/❡❛.✐♥❣ /❛(❡ ❛( ✇❤✐❝❤ ❞❛(❛ ✢♦✇.✳ ❋✐♥❛❧❧②✱ ✈❛/✐❡(② /❡❢❡/. (♦ (❤❡ ❞✐✈❡/.✐(② ♦❢ ❞❛(❛ .♦✉/❝❡.✳ ❙❡✈❡/❛❧ /❡.❡❛/❝❤❡/. ❤❛✈❡ ❛❧.♦ ♣/♦♣♦.❡❞ (♦ ❛❞❞ ♠♦/❡ ❱. (♦ (❤✐. ❞❡✜♥✐(✐♦♥✳ ❱❡/❛❝✐(② ✐. ✇✐❞❡❧② ♣/♦♣♦.❡❞ ❛♥❞ /❡♣/❡.❡♥(. (❤❡ O✉❛❧✐(② ♦❢ ❞❛(❛ ✭❛❝❝✉/❛❝②✱ ❢/❡.❤♥❡..✱ ❝♦♥.✐.(❡♥❝② ❡(❝✳✮✳ ❆❣❛✐♥.( (❤✐. ❜❛❝❦❣/♦✉♥❞✱ (❤❡ ❝❤❛❧❧❡♥❣❡. ♦❢ ❜✐❣ ❞❛(❛ ♠❛♥❛❣❡♠❡♥( /❡.✉❧( ❢/♦♠ (❤❡ ❡①♣❛♥.✐♦♥ ♦❢ (❤❡ ✸❱. ♣/♦♣❡/(✐❡.✳ ■♥ ♦✉/ ✇♦/❦✱ ✇❡ ♠❛✐♥❧② ❢♦❝✉. ♦♥ (❤❡ ✈❛/✐❡(② ♣/♦♣❡/(② ❛♥❞ ♠♦/❡ ♣/❡❝✐.❡❧② ♦♥ ♠✉❧(✐♣❧❡ ❞❛(❛ .(♦/❡ ❜❛.❡❞ ❛♣♣❧✐❝❛(✐♦♥. ✐♥ (❤❡ ❈❧♦✉❞✳ ❉✐✛❡/❡♥( ✐♥(❡/❛❝(✐♦♥ ❢♦/♠. ❜❡(✇❡❡♥ ❛♣♣❧✐❝❛(✐♦♥. ❛♥❞ ❞❛(❛ .(♦/❡. ❛/❡ ♣♦..✐❜❧❡ ✐♥ ❛ ❈❧♦✉❞ ❡♥✈✐/♦♥♠❡♥(✳ ■♥ ♦/❞❡/ (♦ ❞❡✜♥❡ (❤❡ ❛♣♣❧✐❝❛(✐♦♥ /❡O✉✐/❡♠❡♥(. ✐♥ (❡/♠ ♦❢ ❞❛(❛ .(♦/❛❣❡✱ ✇❡ ❛♥❛❧②③❡ (❤/❡❡ ♣♦..✐❜❧❡ .❝❡♥❛/✐♦. ✭.❡❡ ❋✐❣✳✶✳✶✮✳ ❘❡❣❛/❞❧❡.. (❤❡ ✶❤!!♣✿✴✴✇✇✇✳♥✐)!✳❣♦✈✴

(23)

• R0

Scenario 1 Scenario 2 Scenario 3

Application 1 Data store 1 Application 2 Application 3 Data store 2 Data store 3 S1 S2 R0

(24)

Research Problem 3 • R1: Choosing a data store based on data requirements. In this context,

we present three sub-requirements: (R11) dening application needs and

requirements towards data, (R12) dening data store capabilities, and (R13)

dening a matching between application needs and data stores capabilities. • R2: Migrating application from a data store to another (i.e. migrating data

and adapting the application source code to the new API).

In the third scenario S3, an application can use multiple data stores. For

instance, an application can use a relational data store and a NoSQL data store at the same time or partition its data into multiple data stores. This scenario is illustrated by the dotted lines in Fig.1.1. Moreover, these data stores may belong to dierent Clouds (e.g. a public and private Clouds). This ensures a high level ofeciency and modularity. This case corresponds to what is popularly referred to as the polyglot persistence [2]. Nevertheless, it represents some limits and diculties. Linking an application with multiple data stores is very complex due to the dierent APIs, data models, query languages or consistency models. Ifthe application needs to query data coming from dierent data sources (e.g. joining data, aggregating data, etc.), it can not do it declaratively unless some kinds ofmediation have been done before. Finally, the dierent data stores may use dierent transaction and consistency models (e.g. classical ACID and eventual consistency). It is not easy for programmers to understand these models and to properly code their applications to ensure desired properties. For this scenario, three new requirements are added:

• R3: Easy access to multiple data stores.

• R4: Transparent access to integrated data stores.

• R5: Easy programming ofconsistency guaranties with dierent data stores.

1

.

2

R

e

s

e

a

r

c

h

P

r

o

b

l

e

m

Spurred by the Cloud Computing popularity, researches are increasingly abundant and are focusing on various axes in this area. In this context, data management in the Cloud is an inherent research topic that recently received particular attention. A plethora ofmodern applications and researches, such as Bigtable [6], PNUTS [7], Dynamo [8], take into account the data management in the Cloud (especially sce-narios S1 and S2 presented in Section 1.1). Nevertheless, they are not sucient

to address the requirements R4, R5, and R6 ofthe scenario S3 which is the case

ofmultiple data stores based applications in Cloud environment. This lack ofso-lutions implies that developers need to address these requirements by themselves and so they have to be aware ofmany technical details. In order to satisfy the dierent storage requirements, Cloud applications usually need to access and in-teract with dierent relational and NoSQL data stores having heterogeneous APIs, query languages, data models, consistency models, etc. The heterogeneity ofthe

(25)

✹ ●❡♥❡#❛❧ ■♥'#♦❞✉❝'✐♦♥ ❞❛#❛ $#♦&❡$ ✐♥❞✉❝❡$ $❡✈❡&❛❧ ♣&♦❜❧❡♠$ ✇❤❡♥ ❞❡✈❡❧♦♣✐♥❣✱ ❞❡♣❧♦②✐♥❣ ❛♥❞ ♠✐❣&❛#✐♥❣ ♠✉❧#✐♣❧❡ ❞❛#❛ $#♦&❡ ❛♣♣❧✐❝❛#✐♦♥$✳ ❉❡✈❡❧♦♣❡&$ ❛&❡ ❝❡♥#&❛❧ #♦ #❤✐$ ❤✐❣❤ ❤❡#❡&♦❣❡♥❡✐#② ❛♥❞ #❤❡② ❤❛✈❡ #♦ ❝♦♣❡ ✇✐#❤ #❤❡ ❛&✐$✐♥❣ ♣&♦❜❧❡♠$ ❛♥❞ &❡❧❛#❡❞ ❞✐✣❝✉❧#✐❡$✳ ❇❡❧♦✇✱ ✇❡ ❧✐$# #❤❡ ♠❛✐♥ ❢♦✉& ♣&♦❜❧❡♠$ #❤❛# ❛ ❞❡✈❡❧♦♣❡& ♠❛② ❡♥❝♦✉♥#❡& #❤❛# ❛&❡ #❛❝❦❧❡❞ ✐♥ #❤✐$ #❤❡$✐$✿

P b1 ❍❡❛✈② ✇♦'❦❧♦❛❞ ♦♥ ,❤❡ ❛♣♣❧✐❝❛,✐♦♥1 ❞❡✈❡❧♦♣❡'1✿ ◆♦✇❛❞❛②$ ❞❛#❛ $#♦&❡$

❤❛✈❡ ❞✐✛❡&❡♥# ❛♥❞ ❤❡#❡&♦❣❡♥❡♦✉$ ♣&♦♣&✐❡#❛&② ❆@■$✳ ❉❡✈❡❧♦♣❡&$ ♦❢ ♠✉❧#✐♣❧❡ ❞❛#❛ $#♦&❡ ❜❛$❡❞ ❛♣♣❧✐❝❛#✐♦♥$ ♥❡❡❞ #♦ ❜❡ ❢❛♠✐❧✐❛& ✇✐#❤ ❛❧❧ #❤❡$❡ ❆@■$ ✇❤❡♥ ❝♦❞✐♥❣ #❤❡✐& ❛♣♣❧✐❝❛#✐♦♥$✳ ❆$ ❞❡✈❡❧♦♣❡&$ ❛&❡ ❝❡♥#&❛❧ #♦ #❤✐$ ♣❧❡#❤♦&❛ ♦❢ ❆@■$✱ #❤❡② $❤♦✉❧❞ ✉♥❞❡&$#❛♥❞ ❞❛#❛ ♠♦❞❡❧$ ❛♥❞ ❆@■$ ♦❢ ❡❛❝❤ ❞❛#❛ $#♦&❡ #♦ ♣&♦♣❡&❧② ❝♦❞❡ ❛ ♣♦❧②❣❧♦# ♣❡&$✐$#❡♥❝❡ ❜❛$❡❞ ❛♣♣❧✐❝❛#✐♦♥✳ ■♥ #❤✐$ ❝♦♥#❡①#✱ #❤❡ ❞❡✈❡❧♦♣❡&$ #❛$❦ ✐$ ❝✉♠❜❡&$♦♠❡ ❛♥❞ &❡C✉✐&❡$ ❛ ❤✐❣❤ ❛❞❛♣#❛#✐♦♥ #✐♠❡ #♦ #❤❡ ❆@■$ #❤❛# ❝❛♥ ❜❡ ❥✉❞❣❡❞ ❛$ ❛ ✇❛$#❡❞ #✐♠❡✳

P b2 ◆♦ ❞❡❝❧❛'❛,✐✈❡ ✇❛② ❢♦' ❡①❡❝✉,✐♥❣ ❝♦♠♣❧❡① 8✉❡'✐❡1✿ ❉✉❡ #♦ #❤❡ ❤❡#✲ ❡&♦❣❡♥❡✐#② ♦❢ ❞❛#❛ ♠♦❞❡❧$ ❛♥❞ #❤❡ ❛❜$❡♥❝❡ ♦❢ $❝❤❡♠❛$ ✐♥ ◆♦❙◗▲ ❞❛#❛ $#♦&❡$✱ #❤❡&❡ ✐$ ❝✉&&❡♥#❧② ♥♦ ❞❡❝❧❛&❛#✐✈❡ ✇❛② #♦ ❡①♣&❡$$ ❛♥❞ ❡①❡❝✉#❡ ❝♦♠♣❧❡① C✉❡&✐❡$ ♦✈❡& $❡✈❡&❛❧ ❞❛#❛ $#♦&❡$✳ ❚❤✐$ ✐$ ♠❛✐♥❧② ❞✉❡ #♦ #❤❡ ❛❜$❡♥❝❡ ♦❢ ❛ ❣❧♦❜❛❧ $❝❤❡♠❛ ✉♥✐❢②✐♥❣ #❤❡ ❛❝❝❡$$ #♦ &❡❧❛#✐♦♥❛❧ ❛♥❞ ◆♦❙◗▲ ❞❛#❛ $#♦&❡$✳ ■♥ ❛❞❞✐#✐♦♥✱ ◆♦❙◗▲ ❞❛#❛ $#♦&❡$ ❛&❡ $❝❤❡♠❡❧❡$$❀ ❚❤❛# ♠❡❛♥$ ❞❡✈❡❧♦♣❡&$ ❤❛✈❡ #♦ ❝♦♣❡ #❤❡♠$❡❧✈❡$ ✇✐#❤ #❤❡ ✐♠♣❧❡♠❡♥#❛#✐♦♥ ♦❢ $✉❝❤ C✉❡&✐❡$ ✐♥ #❤❡✐& ❛♣♣❧✐❝❛#✐♦♥ $♦✉&❝❡ ❝♦❞❡✳ ❉♦✐♥❣ $♦✱ #❤❡ ❡①❡❝✉#✐♦♥ ♦❢ ❝♦♠♣❧❡① C✉❡&✐❡$ ✇✐❧❧ ❜❡ ♥❛✐✈❡ ❛♥❞ ♥♦♥ ♦♣#✐♠❛❧✳ ■# ✐$ ✇♦&#❤ ♥♦#✐♥❣ #❤❛# ❛ ❝♦♠♣❧❡① C✉❡&② ♠❛② ❜❡ ❛ ❥♦✐♥✱ ❛ ✉♥✐♦♥✱ ❡#❝✳

P b3 ❈♦❞❡ ❛❞❛♣,❛,✐♦♥✿ ❲❤❡♥ ♠✐❣&❛#✐♥❣ ❛♣♣❧✐❝❛#✐♦♥$ ❢&♦♠ ♦♥❡ ❈❧♦✉❞ ❡♥✈✐&♦♥✲

♠❡♥# #♦ ❛♥♦#❤❡&✱ ❛♣♣❧✐❝❛#✐♦♥ ❞❡✈❡❧♦♣❡&$ ❤❛✈❡ #♦ &❡✲❛❞❛♣# #❤❡✐& ❛♣♣❧✐❝❛#✐♦♥ $♦✉&❝❡ ❝♦❞❡ ✐♥ ♦&❞❡& #♦ ✐♥#❡&❛❝# ✇✐#❤ ♥❡✇ ❞❛#❛ $#♦&❡$ ❛♥❞ ♠✐❣&❛#❡ #❤❡✐& ❞❛#❛ ❢&♦♠ #❤❡ ♦❧❞ ❞❛#❛ $#♦&❡$ #♦ #❤❡ ♥❡✇ ♦♥❡$✳ ❍♦✇❡✈❡&✱ #❤✐$ ✐$ ❛ #❡❞✐♦✉$ #❛$❦ $✐♥❝❡ ❞❡✈❡❧♦♣❡&$ ❤❛✈❡ ♣♦#❡♥#✐❛❧❧② #♦ ❧❡❛&♥ ❛♥❞ ♠❛$#❡& ♥❡✇ ♣&♦♣&✐❡#❛&② ❆@■$✳ ❚❤✐$ ♠❛② ❝❛✉$❡ ❛♥ ✐♠♣♦&#❛♥# ❞❡❧❛② ❞✉&✐♥❣ #❤❡ ♠✐❣&❛#✐♦♥ ♣&♦❝❡$$ ❛♥❞ ❤❛♠♣❡& #❤❡ ❛♣♣❧✐❝❛#✐♦♥ ❧✐❢❡❝②❝❧❡✳

P b4 ❚❡❞✐♦✉1 ❛♥❞ ♥♦♥✲1,❛♥❞❛'❞ ❞✐1❝♦✈❡'② ❛♥❞ ❞❡♣❧♦②♠❡♥, ♣'♦❝❡11❡1✿

❖♥❝❡ ❛♥ ❛♣♣❧✐❝❛#✐♦♥ ✐$ ❞❡✈❡❧♦♣❡❞ ♦& ❜❡❢♦&❡ ✐$ ♠✐❣&❛#❡❞✱ ❞❡✈❡❧♦♣❡&$ ❤❛✈❡ #♦ ❞❡♣❧♦② ✐# ✐♥#♦ ❛ ❈❧♦✉❞ ♣&♦✈✐❞❡& ✇✐#❤ &❡$♣❡❝# #♦ ✐#$ &❡C✉✐&❡♠❡♥#$✳ ❚♦ ❞♦ $♦✱ ❞❡✈❡❧♦♣❡&$ ♠✉$# ❞✐$❝♦✈❡& #❤❡ ♠♦$# $✉✐#❛❜❧❡ ❈❧♦✉❞ ❡♥✈✐&♦♥♠❡♥# ♣&♦✈✐❞✐♥❣ #❤❡ &❡C✉✐&❡❞ ❞❛#❛ $#♦&❡$ ❛♥❞ ❞❛#❛ ❝❤❛&❛❝#❡&✐$#✐❝$✳ ❍♦✇❡✈❡&✱ #❤✐$ $#❡♣ ✐$ #❡❞✐♦✉$ ❛♥❞ ♠❡#✐❝✉❧♦✉$ ❜❡❝❛✉$❡ ✐# ❧❛❝❦$ ♦❢ ❛✉#♦♠❛#✐♦♥ ❛♥❞ ❞❡✈❡❧♦♣❡&$ ❤❛✈❡ #♦ ❞♦ ✐# ♠❛♥✉❛❧❧②✳ ■♥❞❡❡❞✱ ❞❡✈❡❧♦♣❡&$ ♠✉$# ❞✐$❝♦✈❡& ❞❛#❛ $#♦&❡$ $❡&✈✐❝❡$ ♦❢ ❡❛❝❤ ❈❧♦✉❞ ♣&♦✈✐❞❡& ❛♥❞ #&② #♦ ♠❛#❝❤ ❜❡#✇❡❡♥ #❤❡✐& &❡C✉✐&❡♠❡♥#$ ❛♥❞ #❤❡ ❈❧♦✉❞ ♣&♦✈✐❞❡&$ ❝❛♣❛❜✐❧✐#✐❡$✳ ❚❤✐$ ✇♦✉❧❞ ❜❡ ❧❡$$ ❝♦♠♣❧❡① ✐❢ #❤❡ ❛♣♣❧✐❝❛#✐♦♥ ✐♥#❡&❛❝#$ ✇✐#❤ ❛ $✐♥❣❧❡ ❞❛#❛ $#♦&❡✳

❈♦♥$✐$#❡♥❝② ✐$ ❛❧$♦ ❛♥ ✐♠♣♦&#❛♥# ✐$$✉❡ ✐♥ ♠✉❧#✐♣❧❡ ❞❛#❛ $#♦&❡$ ❜❛$❡❞ ❛♣♣❧✐❝❛✲ #✐♦♥$✳ ■♥ ❢❛❝#✱ ❈❧♦✉❞ ❞❛#❛ $#♦&❡$ ✐♥ ❣❡♥❡&❛❧ ✐♠♣❧❡♠❡♥# ❞✐✛❡&❡♥# ❝♦♥$✐$#❡♥❝② ♠♦❞✲ ❡❧$ ✭❡✳❣✳ $#&♦♥❣ ❝♦♥$✐$#❡♥❝② ♠♦❞❡❧ ❢♦& ❘❉❇▼❙ ❛♥❞ ✇❡❛❦ ❝♦♥$✐$#❡♥❝② ♠♦❞❡❧$ ❢♦&

(26)

❚❤❡#✐# %&✐♥❝✐♣❧❡# ❆♥❞ ❖❜❥❡❝0✐✈❡# ✺ ◆♦❙◗▲ ❉❇▼❙✮✳ ❚❤✐. ✐♠♣❧✐❡. 3❤❛3 3❤❡ ❝♦♥.✐.3❡♥❝② ♠♦❞❡❧ ❛3 3❤❡ ❛♣♣❧✐❝❛3✐♦♥ ❧❡✈❡❧ ✐. ♥♦3 :❡❛❧❧② ❞❡✜♥❡❞✳ ❲❡ ❞♦ ♥♦3 ❛❞❞:❡.. 3❤✐. ✐..✉❡ ✐♥ 3❤✐. 3❤❡.✐.✱ ❢♦❝✉.✐♥❣ ♦♥❧② ♦♥ A✉❡:②✐♥❣✳ ❚❤❡ ✐♥3❡:❡.3❡❞ :❡❛❞❡: ♠❛② :❡❛❞ ❬✾❪ ✇❤✐❝❤ ♣:♦♣♦.❡. ❛ ♠✐❞❞❧❡✇❛:❡ .❡:✈✐❝❡ ❛❞❞:❡..✐♥❣ 3❤❡ ♣:♦❜❧❡♠ ♦❢ ❝❧✐❡♥3✲❝❡♥3:✐❝ ❝♦♥.✐.3❡♥❝② ♦♥ 3♦♣ ♦❢ ❡✈❡♥3✉❛❧❧② ❝♦♥.✐.3❡♥3 ❞✐.3:✐❜✉3❡❞ ❞❛3❛ .3♦:❡. ✭❆♠❛③♦♥ ❙✸ ❢♦: ❡①❛♠♣❧❡✮✳

✶✳✸ ❚❤❡&✐& ()✐♥❝✐♣❧❡& ❆♥❞ ❖❜❥❡❝3✐✈❡&

■♥ 3❤✐. 3❤❡.✐.✱ ✇❡ ❛✐♠ 3♦ ♣:♦♣♦.❡ .♦❧✉3✐♦♥. ❢♦: .✉♣♣♦:3✐♥❣ ♠✉❧3✐♣❧❡ ❜❛.❡❞ ❛♣♣❧✐✲ ❝❛3✐♦♥ ❞❡✈❡❧♦♣❡:. ✐♥ ❈❧♦✉❞ ❡♥✈✐:♦♥♠❡♥3.✳ ❖✉: ♦❜❥❡❝3✐✈❡ ✐. ❢♦✉:❢♦❧❞✿ ✭✶✮ ✉♥✐❢②✐♥❣ :❡❧❛3✐♦♥❛❧ ❛♥❞ ◆♦❙◗▲ ❞❛3❛ ♠♦❞❡❧.✱ ✭✷✮ ❡❛.✐♥❣ 3❤❡ ♣:♦❣:❛♠♠✐♥❣ ♦❢ ♣♦❧②❣❧♦3 ♣❡:✲ .✐.3❡♥❝❡ ❜❛.❡❞ ❛♣♣❧✐❝❛3✐♦♥.✱ ✭✸✮ ❛✉3♦♠❛3✐♥❣ ♠✉❧3✐♣❧❡ ❞❛3❛ .3♦:❡. ❞✐.❝♦✈❡:② ❛♥❞ ❛♣♣❧✐❝❛3✐♦♥. ❞❡♣❧♦②♠❡♥3✱ ❛♥❞ ✭✹✮ ❡✈❛❧✉❛3✐♥❣ ❛♥❞ ♦♣3✐♠✐③✐♥❣ ❝♦♠♣❧❡① A✉❡:✐❡. ❡①❡✲ ❝✉3✐♦♥✳ ■♥ ♦✉: ❛♣♣:♦❛❝❤✱ ✇❡ ❝♦♥.✐❞❡: 3❤❡ ❢♦❧❧♦✇✐♥❣ ♣:✐♥❝✐♣❧❡.✿ • ❈❧♦✉❞ ❈♦♠♣✉3✐♥❣ ❛♥❞ ❇✐❣ ❉❛3❛✿ ❚❤✐. 3❤❡.✐. ✐. ❞❡✈❡❧♦♣❡❞ ✇✐3❤✐♥ 3❤❡ ✜❡❧❞ ♦❢ ❈❧♦✉❞ ❈♦♠♣✉3✐♥❣ ❛♥❞ ❇✐❣ ❉❛3❛✳ ■♥❞❡❡❞✱ ✇❡ .❤♦✉❧❞ 3❛❦❡ ✐♥3♦ ❛❝❝♦✉♥3 3❤❡ ❞✐✛❡:❡♥3 ❝❤❛:❛❝3❡:✐.3✐❝. ♦❢ ❡❛❝❤ ❛:❡❛ ♥❛♠❡❧② 3❤❡ ❜✐❣ ✈♦❧✉♠❡ ♦❢ ❞❛3❛ ❛♥❞ 3❤❡ ✈❛:✐❡3② ♦❢ ❞❛3❛ .3♦:❡. :❡❣❛:❞✐♥❣ 3❤❡ ❇✐❣ ❉❛3❛ ❛:❡❛✱ ❛♥❞ 3❤❡ ❞②♥❛♠✐❝✐3② ✭✐✳❡✳ ❛♣♣❧✐❝❛3✐♦♥ ♠✐❣:❛3✐♦♥✮ ❛♥❞ 3❤❡ ❛❜✉♥❞❛♥❝❡ ♦❢ ❞❛3❛ .3♦:❡. .❡:✈✐❝❡. ✇✐3❤ :❡❣❛:❞ 3♦ 3❤❡ ✜❡❧❞ ♦❢ ❈❧♦✉❞ ❈♦♠♣✉3✐♥❣✳ • ◆♦❙◗▲ ❞❛3❛ .3♦:❡. .✉♣♣♦:3✿ ❚❤❡ ❞✐✛❡:❡♥3 ♣:♦♣♦.❡❞ .♦❧✉3✐♦♥. .❤♦✉❧❞ 3❛❦❡ ✐♥3♦ ❛❝❝♦✉♥3 :❡❧❛3✐♦♥❛❧ ❛♥❞ ◆♦❙◗▲ ❞❛3❛ .3♦:❡.✳ • ▼✉❧3✐♣❧❡ ❞❛3❛ .3♦:❡. ❜❛.❡❞ ❛♣♣❧✐❝❛3✐♦♥.✿ ❚❤❡ ❞✐✛❡:❡♥3 .♦❧✉3✐♦♥. .❤♦✉❧❞ .✉♣✲ ♣♦:3 ♠✉❧3✐♣❧❡ ❞❛3❛ .3♦:❡. ❜❛.❡❞ ❛♣♣❧✐❝❛3✐♦♥. .✐♥❝❡ ❛♥ ❛♣♣❧✐❝❛3✐♦♥ ♠❛② ♠❡❡3 ✐3. :❡A✉✐:❡♠❡♥3. ✐♥ ❞✐✛❡:❡♥3 ❞❛3❛ .3♦:❡. .❡:✈✐❝❡. ✐♥ ❛ ❈❧♦✉❞ ❡♥✈✐:♦♥♠❡♥3✳ • ❊❛.② ❛❝❝❡.. 3♦ ❤❡3❡:♦❣❡♥❡♦✉. ❞❛3❛ .3♦:❡.✿ ■♥ 3❤✐. 3❤❡.✐.✱ .♦❧✉3✐♦♥. .❤♦✉❧❞ 3❛❦❡ ✐♥3♦ ❛❝❝♦✉♥3 3❤❡ ✐♠♣♦:3❛♥❝❡ ♦❢ ❢❛❝✐❧✐3❛3✐♥❣ 3❤❡ ❛❝❝❡.. 3♦ :❡❧❛3✐♦♥❛❧ ❞❛3❛ .3♦:❡. ✐♥ ♦:❞❡: 3♦ ❡❛.✐❧② ❡①♣:❡.. A✉❡:✐❡. ❛♥❞ ❝♦::❡❝3❧② ❡✈❛❧✉❛3❡ ❛♥❞ ♦♣3✐♠✐③❡ 3❤❡✐: ❡①❡❝✉3✐♦♥✳ • ❆✉3♦♠❛3✐♦♥✿ ❚❤❡ ❞✐✛❡:❡♥3 .♦❧✉3✐♦♥. .❤♦✉❧❞ ❜❡ ❛✉3♦♠❛3✐❝ ✐♥ ♦:❞❡: 3♦ :❡✲ ❧✐❡✈❡ ✉3♠♦.3 ❞❡✈❡❧♦♣❡:. 3❛.❦ ❜② :❡♠♦✈✐♥❣ 3❤❡ ❜✉:❞❡♥ ♦❢ ♠❛♥❛❣✐♥❣ 3❤❡ ❤✐❣❤ ❤❡3❡:♦❣❡♥❡✐3② ♦❢ ❞❛3❛ .3♦:❡. ✐♥ ❈❧♦✉❞ ❡♥✈✐:♦♥♠❡♥3.✳

✶✳✹ ❚❤❡&✐& ❈♦♥3)✐❜✉3✐♦♥&

■♥ 3❤✐. 3❤❡.✐.✱ ✇❡ ♣:♦♣♦.❡ ❛♥ ✐♥3❡❣:❛3❡❞ .❡3 ♦❢ ♠♦❞❡❧.✱ ❛❧❣♦:✐3❤♠. ❛♥❞ 3♦♦❧. ❛✐♠✐♥❣ ❛3 ❛❧❧❡✈✐❛3✐♥❣ ❞❡✈❡❧♦♣❡:.✬ 3❛.❦. ❢♦: ❞❡✈❡❧♦♣✐♥❣ ♠✉❧3✐♣❧❡ ❞❛3❛ .3♦:❡. ❜❛.❡❞ ❛♣♣❧✐✲ ❝❛3✐♦♥.✱ ❞✐.❝♦✈❡:✐♥❣ ❈❧♦✉❞. ❞❛3❛ .3♦:❡. ❝❛♣❛❜✐❧✐3✐❡.✱ ❡①❡❝✉3✐♥❣ ❝♦♠♣❧❡① A✉❡:✐❡.✱ ❞❡♣❧♦②✐♥❣ ❛♥❞ ♠✐❣:❛3✐♥❣ ❛♣♣❧✐❝❛3✐♦♥. ✐♥ ❈❧♦✉❞ ❡♥✈✐:♦♥♠❡♥3.✳ ■3 ✐. ✇♦:3❤② 3♦ .❛② 3❤❛3 ✇❡ 3❛❦❡ ✐♥3♦ ❛❝❝♦✉♥3 :❡❧❛3✐♦♥❛❧ ❛♥❞ ◆♦❙◗▲ ❞❛3❛ .3♦:❡.✳

(27)

✻ ●❡♥❡#❛❧ ■♥'#♦❞✉❝'✐♦♥ ❋✐#$%✱ ✇❡ ❞❡✜♥❡ ❛ ✉♥✐✜❡❞ ❞❛%❛ ♠♦❞❡❧ ✉$❡❞ ❜② ❛♣♣❧✐❝❛%✐♦♥$ ❞❡✈❡❧♦♣❡#$ %♦ ✐♥%❡#❛❝% ✇✐%❤ ❞✐✛❡#❡♥% ❞❛%❛ $%♦#❡$✳ ❚❤✐$ ♠♦❞❡❧ %❛❝❦❧❡$ %❤❡ ❤❡%❡#♦❣❡♥❡✐%② ♣#♦❜❧❡♠ ❜❡%✇❡❡♥ ❞❛%❛ ♠♦❞❡❧$ ❛♥❞ %❤❡ $❝❤❡♠❡$ ❛❜$❡♥❝❡ ✐♥ ◆♦❙◗▲ ❞❛%❛ $%♦#❡$✳ ■% ✐$ ✉$❡❞ %♦ ❡①♣#❡$$ ❈❘❯❉ ❛♥❞ ❝♦♠♣❧❡① F✉❡#✐❡$✳ ■♥ ❛❞❞✐%✐♦♥✱ ✇❡ ✉$❡❞ %❤❡ ♣#♦♣♦$❡❞ ✉♥✐✜❡❞ ❞❛%❛ ♠♦❞❡❧ %♦ ❡✈❛❧✉❛%❡ ❛♥❞ ♦♣%✐♠✐③❡ ❝♦♠♣❧❡① F✉❡#✐❡$ ❡①❡❝✉%✐♦♥ ✭%❛❝❦❧✐♥❣ %❤❡#❡❢♦#❡ ♣#♦❜❧❡♠$ P b1 ❛♥❞ P b2✮✳ ❙❡❝♦♥❞✱ ✇❡ ♣#♦♣♦$❡ ❖L❊◆✲L❛❛❙✲❉❛%❛❇❛$❡ ❆L■ ✭❖❉❇❆L■✮ %❤❛% ❞❡✈❡❧♦♣❡#$ ♠❛② ✉$❡ %♦ ❡①♣#❡$$ ❛♥❞ ❡①❡❝✉%❡ ❛♥② %②♣❡ ♦❢ F✉❡#✐❡$✳ ❚❤✐$ ❆L■ ✐$ ❛ $%#❡❛♠❧✐♥❡❞ ❛♥❞ ❛ ✉♥✐✜❡❞ ❘❊❙❚✲❜❛$❡❞ ❆L■ ❢♦# ❡①❡❝✉%✐♥❣ F✉❡#✐❡$ ♦✈❡# #❡❧❛%✐♦♥❛❧ ❛♥❞ ◆♦❙◗▲ ❞❛%❛ $%♦#❡$✳ ❚❤❡ ❤✐❣❤❧✐❣❤%$ ♦❢ ❖❉❇❆L■ ❛#❡ %✇♦❢♦❧❞✿ ✭✐✮ ❞❡❝♦✉♣❧✐♥❣ ❈❧♦✉❞ ❛♣♣❧✐❝❛%✐♦♥$ ❢#♦♠ ❞❛%❛ $%♦#❡$ ✐♥ ♦#❞❡# %♦ ❢❛❝✐❧✐%❛%❡ %❤❡ ♠✐❣#❛%✐♦♥ ♣#♦❝❡$$✱ ❛♥❞ ✭✐✐✮ ❡❛$✐♥❣ %❤❡ ❞❡✈❡❧♦♣❡#$ %❛$❦ ❜② ❧✐❣❤%❡♥✐♥❣ %❤❡ ❜✉#❞❡♥ ♦❢ ♠❛♥❛❣✐♥❣ ❞✐✛❡#❡♥% ❆L■$ ✭%❛❝❦❧✐♥❣ %❤❡#❡❢♦#❡ ♣#♦❜❧❡♠$ P b1✱ P b2✱ ❛♥❞ P b3✮✳ ❚❤✐#❞✱ ✇❡ ♣#♦♣♦$❡ ✈✐#%✉❛❧ ❞❛%❛ $%♦#❡$ ✭❱❉❙✮ %♦ ❡✈❛❧✉❛%❡ ❛♥❞ ♦♣%✐♠✐③❡ F✉❡#✐❡$ ❡①❡❝✉%✐♦♥ ✲ ❡$♣❡❝✐❛❧❧② ❝♦♠♣❧❡① ♦♥❡$✲ ♦✈❡# ❞✐✛❡#❡♥% ❞❛%❛ $%♦#❡$✳ ■♥ ♦#❞❡# %♦ $✉♣♣♦#% F✉❡#✐❡$ ❞❡✜♥✐%✐♦♥ ❛♥❞ ❡①❡❝✉%✐♦♥ ♦✈❡# ❤❡%❡#♦❣❡♥❡♦✉$ ❞❛%❛ ♠♦❞❡❧$✱ ✇❡ ✉$❡ %❤❡ ✉♥✐✜❡❞ ❞❛%❛ ♠♦❞❡❧ %❤❛% ✇❡ ❡①%❡♥❞ ✇✐%❤ ❝♦##❡$♣♦♥❞❡♥❝❡ #✉❧❡$✳ ❚❤❡ ❱❉❙ ✐♠♣❧❡♠❡♥%$ ❛ ❞②♥❛♠✐❝ ♣#♦❣#❛♠♠✐♥❣ ❜❛$❡❞ ❛❧❣♦#✐%❤♠ %♦ ❣❡♥❡#❛%❡ ♦♣%✐♠❛❧ ❡①❡❝✉%✐♦♥ ♣❧❛♥$ ✉$✐♥❣ ❛ ❝♦$% ♠♦❞❡❧ %❤❛% ✇❡ ❤❛✈❡ ❞❡✜♥❡❞✳ ❖✉# $♦❧✉%✐♦♥ ✐$ ❜❛$❡❞ ♦♥ ❛❧❣❡❜#❛✐❝ %#❡❡$ ❝♦♠♣♦$❡❞ ♦❢ ❞❛%❛ $♦✉#❝❡$ ❛♥❞ ❛❧❣❡❜#❛✐❝ ♦♣❡#❛%♦#$ ❛♥❞ ❛❧❣❡❜#❛✐❝ %#❡❡$ ❛♥♥♦%❛%✐♦♥ ✭%❛❝❦❧✐♥❣ %❤❡#❡❢♦#❡ ♣#♦❜❧❡♠ P b2✮✳ ❋♦✉#%❤✱ ✇❡ ♣#❡$❡♥% ❛ ❞❡❝❧❛#❛%✐✈❡ ❛♥❞ ❛♥ ❛✉%♦♠❛%✐❝ ❛♣♣#♦❛❝❤ ❢♦# ❞✐$❝♦✈❡#✐♥❣ ❛♣✲ ♣#♦♣#✐❛%❡ ❈❧♦✉❞ ❡♥✈✐#♦♥♠❡♥%$ ❛♥❞ ❞❡♣❧♦②✐♥❣ ❛♣♣❧✐❝❛%✐♦♥$ ♦♥ %❤❡♠✳ ❚❤❡ ♣#♦♣♦$❡❞ ❛♣♣#♦❛❝❤ ❧❡%$ ❞❡✈❡❧♦♣❡#$ $✐♠♣❧② ❢♦❝✉$ ♦♥ $♣❡❝✐❢②✐♥❣ %❤❡✐# $%♦#❛❣❡ ❛♥❞ ❝♦♠♣✉%✐♥❣ #❡F✉✐#❡♠❡♥%$✳ ❚❤❡ ❦❡② ✐♥❣#❡❞✐❡♥%$ ♦❢ %❤✐$ $♦❧✉%✐♦♥ ❛#❡ ✭✶✮ %❤❡ ✉$❡ ♦❢ ♠❛♥✐❢❡$%$ %♦ ❡①♣♦$❡ ❛♣♣❧✐❝❛%✐♦♥$ #❡F✉✐#❡♠❡♥%$ ❛♥❞ ❞❛%❛ $%♦#❡$ ❝❛♣❛❜✐❧✐%✐❡$✱ ❛♥❞ ✭✷✮ %❤❡ ♠❛%❝❤✲ ✐♥❣ ❛❧❣♦#✐%❤♠ %❤❛% ❡❧❡❝%$ %❤❡ ♠♦$% ❛♣♣#♦♣#✐❛%❡ ❈❧♦✉❞ ♣#♦✈✐❞❡# %♦ ❛♥ ❛♣♣❧✐❝❛%✐♦♥✳ ❋♦# %❤❡ ❞❡♣❧♦②♠❡♥% $%❡♣✱ ✇❡ ♣#♦♣♦$❡ %♦ ❡①%❡♥❞ ❛♥❞ ✉$❡ %❤❡ ❈❖❆L❙ ❆L■ ✇❤✐❝❤ ✐$ ❛ ❞❡♣❧♦②♠❡♥% ❆L■ ♣#♦♣♦$❡❞ ✐♥ ♦✉# %❡❛♠ ❛♥❞ ✐♥ %❤❡ ❈♦♠♣❛%✐❜❧❡❖♥❡ ♣#♦❥❡❝% ✭%❛❝❦❧✐♥❣ %❤❡#❡❢♦#❡ ♣#♦❜❧❡♠$ P b1 ❛♥❞ P b4✮✳ ❆ ♣#♦%♦%②♣❡ ♦❢ ♦✉# ❛♣♣#♦❛❝❤ ❤❛$ ❜❡❡♥ ❞❡✈❡❧♦♣❡❞ ❛♥❞ ❤❛$ ❜❡❡♥ ✉$❡❞ %♦ ✐♠♣❧❡✲ ♠❡♥% ✉$❡ ❝❛$❡$ ❢#♦♠ ❛ ❢#❡♥❝❤ L❛❛❙ ♣#♦❥❡❝% ❝❛❧❧❡❞ ❖L❊◆✲L❛❛❙✳ ❲❡ ✇✐❧❧ ❞❡%❛✐❧ %❤❡ ❞✐✛❡#❡♥% ❛$♣❡❝%$ ♦❢ %❤❡ #❡❛❧✐③❡❞ ✐♠♣❧❡♠❡♥%❛%✐♦♥$ ❛$ ❛ ♣#♦♦❢ ♦❢ ❝♦♥❝❡♣%✳ ■♥ ❛❞❞✐%✐♦♥✱ ✇❡ ✇✐❧❧ ❞❡$❝#✐❜❡ %❤❡ #❡❛❧✐③❡❞ $❝❡♥❛#✐♦$ ❛♥❞ ♣❡#❢♦#♠ $♦♠❡ ❡①♣❡#✐♠❡♥%$ %♦ ❡✈❛❧✉❛%❡ ♦✉# ♣#♦♣♦$❛❧$✳

✶✳✺ ❚❤❡&✐& ❖✉*❧✐♥❡

❚❤❡ #❡♠❛✐♥❞❡# ♦❢ %❤✐$ ♠❛♥✉$❝#✐♣% ✐$ ♦#❣❛♥✐③❡❞ ❛$ ❢♦❧❧♦✇$✳ ❈❤❛♣%❡# ✷ ❝♦♥%❛✐♥$ %✇♦ ♠❛✐♥ ♣❛#%$✳ ❖♥ %❤❡ ♦♥❡ ❤❛♥❞✱ ✇❡ ♣#♦✈✐❞❡ ❛ ❞❡$❝#✐♣%✐♦♥ ♦❢ %❤❡ ❞✐✛❡#❡♥% ❝♦♥❝❡♣%$ ♥❡❡❞❡❞ ❢♦# %❤❡ ✉♥❞❡#$%❛♥❞✐♥❣ ♦❢ ♦✉# ✇♦#❦✳ ■♥ ❢❛❝%✱ ✇❡ ❣✐✈❡ %❤❡ ❞❡✜♥✐%✐♦♥$ ♦❢ ❈❧♦✉❞ ❈♦♠♣✉%✐♥❣ ❛♥❞ ❇✐❣ ❉❛%❛ ❛#❡❛$✳ ❲❡ ❛❧$♦ ❞❡✜♥❡ %❤❡ ❞✐✛❡#❡♥% ✈❛#✐❛♥%$ %❤❛% ✇❡ ❛✐♠ %♦ ✉$❡ ✐♥ %❤✐$ ✇♦#❦ #❡$✉♠❡❞ ✐♥ #❡❧❛%✐♦♥❛❧ ❛♥❞ ◆♦❙◗▲ ❞❛%❛ $%♦#❡$✱ ♣♦❧②❣❧♦% ♣❡#$✐$%❡♥❝❡✱ ❛♥❞ ❞❛%❛ ✐♥%❡❣#❛%✐♦♥✳ ❖♥ %❤❡ ♦%❤❡# ❤❛♥❞✱ ✇❡ ❣✐✈❡ ❛♥ ♦✈❡#✈✐❡✇ ♦❢ %❤❡ $%❛%❡ ♦❢ %❤❡

(28)

❚❤❡#✐# ❖✉'❧✐♥❡ ✼ ❛"# "❡❧❛#❡❞ #♦ ✉♥✐❢②✐♥❣ ❞❛#❛ ♠♦❞❡❧/✱ ❡❛/✐♥❣ ❛❝❝❡// #♦ ♠✉❧#✐♣❧❡ ❞❛#❛ /#♦"❡/✱ ❡♥/✉"✐♥❣ #"❛♥/♣❛"❡♥# ❛❝❝❡// #♦ ✐♥#❡❣"❛#❡❞ ❞❛#❛ /#♦"❡/ ❛/ ✇❡❧❧ ❛/ ❝❛♣#✉"✐♥❣ ❞❛#❛ "❡4✉✐"❡♠❡♥#/ ❛♥❞ ❈❧♦✉❞ ❞❛#❛ /#♦"❡/ ❝❛♣❛❜✐❧✐#✐❡/✳ ❚❤❡"❡✐♥✱ ✇❡ ✇✐❧❧ ❝✐#❡ #❤❡ ❞✐✛❡"❡♥# ✇♦"❦ ✐♥ ❡❛❝❤ ♣❛"# ✇✐#❤ ❛ ❞✐/❝✉//✐♦♥ #♦ /❤♦✇ #❤❡ ❛❞✈❛♥#❛❣❡/ #❤❛# ✇❡ ✇♦✉❧❞ ❧✐❦❡ #♦ ❤❛✈❡ ✐♥ ♦✉" /♦❧✉#✐♦♥ ❛♥❞ #❤❡ ❞"❛✇❜❛❝❦/ #❤❛# ✇❡ ✇♦✉❧❞ ❧✐❦❡ #♦ ❡/❝❛♣❡✳ ❈❤❛♣#❡"/ ✸✱ ✹ ❛♥❞ ✺ ❛"❡ #❤❡ ❝♦"❡ ♦❢ ♦✉" #❤❡/✐/ ✇❤✐❝❤ ❡❧❛❜♦"❛#❡ ♦✉" ❡♥❞✲#♦✲❡♥❞ /♦❧✉#✐♦♥ #♦ /✉♣♣♦"# ♠✉❧#✐♣❧❡ ❞❛#❛ /#♦"❡/ ❜❛/❡❞ ❛♣♣❧✐❝❛#✐♦♥/ ❞❡✈❡❧♦♣❡"/ ✐♥ ❛ ❈❧♦✉❞ ❡♥✈✐"♦♥♠❡♥#✳ ■♥ ❈❤❛♣#❡" ✸✱ ✇❡ ♣"❡/❡♥# ✜"/# ❛♥ ♦✈❡"✈✐❡✇ ♦❢ #❤❡ ❞✐✛❡"❡♥# ❝♦♥#"✐❜✉#✐♦♥/ ♣"♦✲ ♣♦/❡❞ ✐♥ #❤✐/ #❤❡/✐/ ❛♥❞ /❤♦✇ ❤♦✇ #❤❡② ❛"❡ ❧✐♥❦❡❞ ❜❡#✇❡❡♥ ❡❛❝❤ ♦#❤❡"/✳ ❆❢#❡"✇❛"❞/✱ ✇❡ ✐♥#"♦❞✉❝❡ ♦✉" ✜"/# #✇♦ ❝♦♥#"✐❜✉#✐♦♥/✳ ❋✐"/#✱ ✇❡ ♣"❡/❡♥# ♦✉" ✉♥✐✜❡❞ ❞❛#❛ ♠♦❞❡❧ #♦ ✉♥✐❢② #❤❡ ✈✐❡✇ ♦✈❡" "❡❧❛#✐♦♥❛❧ ❛♥❞ ◆♦❙◗▲ ❞❛#❛ /#♦"❡/✳ ❍❡"❡✐♥✱ ✇❡ ♣"❡/❡♥# ❛ ❢♦"♠❛❧ ❛♥❞ ♥♦♥ ❢♦"♠❛❧ "❡♣"❡/❡♥#❛#✐♦♥ ♦❢ ♦✉" ✉♥✐✜❡❞ ❞❛#❛ ♠♦❞❡❧✳ ❇❛/❡❞ ♦♥ #❤❛#✱ ✇❡ ✐♥#"♦❞✉❝❡ ♦✉" ❣❧♦❜❛❧ /❝❤❡♠❛ #❤❛# ❞❡✈❡❧♦♣❡"/ ✉/❡ #♦ ❡①♣"❡// /✐♠♣❧❡ ❛♥❞ ❝♦♠♣❧❡① 4✉❡"✐❡/ ❛♥❞ ❛ ♠❡❞✐❛#♦" ❧❛②❡" ✉/❡❞ #♦ ❡✈❛❧✉❛#❡ ❛♥❞ ♦♣#✐♠✐③❡ 4✉❡"✐❡/ ❡①❡❝✉#✐♦♥✳ ❆# #❤❡ ❡♥❞ ♦❢ #❤✐/ ♣❛"#✱ ✇❡ ♣"♦♣♦/❡ ❛ 4✉❡"② ❛❧❣❡❜"❛ #❤❛# ✐/ ✉/❡❞ ❜② #❤❡ ❱❉❙ #♦ /✉♣♣♦"# ❝♦♠♣❧❡① 4✉❡"✐❡/ ❡①❡❝✉#✐♦♥✳ ❙❡❝♦♥❞✱ ✇❡ ✐♥#"♦❞✉❝❡ /♦♠❡ ✉/❡ ❝❛/❡/ ✐♥ ♦"❞❡" #♦ ♠♦#✐✈❛#❡ ♦✉" /❡❝♦♥❞ ❝♦♥#"✐❜✉✲ #✐♦♥ ✇❤✐❝❤ ✐/ ❖❉❇❆P■✳ ■# ✐/ ♥♦#❡✇♦"#❤② #❤❛# #❤❡/❡ ♠♦#✐✈❛#✐♥❣ ❡①❛♠♣❧❡/ ✇✐❧❧ ❜❡ ✉/❡❞ ❛❧/♦ #♦ ♠♦#✐✈❛#❡ #❤❡ ♦#❤❡" ❝♦♥#"✐❜✉#✐♦♥/ ♣"❡/❡♥#❡❞ ✐♥ #❤❡ #✇♦ ♥❡①# ❝❤❛♣#❡"/✳ ❚❤❡♥✱ ✇❡ ❣✐✈❡ ❛ ♦✈❡"✈✐❡✇ ♦❢ ❖❉❇❆P■ ❛♥❞ ✇❡ ♣"❡/❡♥# #❤❡ ❞✐✛❡"❡♥# ♦♣❡"❛#✐♦♥/ ❡♥✲ /✉"❡❞ ❜② ♦✉" ❆P■✳ ❋✐♥❛❧❧②✱ ✇❡ ♣"❡/❡♥# #❤"❡❡ ❡①❛♠♣❧❡/ ✐❧❧✉/#"❛#✐♥❣ ❤♦✇ ✇❡ ✉♥✐❢② #❤❡ ❡①❡❝✉#✐♦♥ ♦❢ 4✉❡"✐❡/ ❛♥❞ ✇❡ ❡①♣"❡// ✜❧#❡"✐♥❣ ❛♥❞ ❥♦✐♥ 4✉❡"✐❡/✳ ■♥ ❈❤❛♣#❡" ✹✱ ✇❡ ♣"❡/❡♥# ♦✉" ❛♣♣"♦❛❝❤ #♦ ❡✈❛❧✉❛#❡ ❛♥❞ ♦♣#✐♠✐③❡ 4✉❡"② ❡①❡❝✉#✐♦♥ ✉/✐♥❣ #❤❡ ❱❉❙✳ ❋✐"/#✱ ✇❡ ✐♥#"♦❞✉❝❡ ♦✉" 4✉❡"② ❡✈❛❧✉❛#✐♦♥ ♣"✐♥❝✐♣❧❡/ ❛♥❞ ✇❡ ❞❡✜♥❡ ♦✉" 4✉❡"② ❡①❡❝✉#✐♦♥ ♣❧❛♥✳ ❲❡ ✜♥✐/❤ #❤✐/ ♣❛"# ❜② ❣✐✈✐♥❣ ❛♥ ❡①❛♠♣❧❡ ♦❢ ❥♦✐♥ 4✉❡"② ❡✈❛❧✉❛#✐♦♥✳ ❙❡❝♦♥❞✱ ✇❡ ♣"❡/❡♥# ♦✉" 4✉❡"② ♦♣#✐♠✐③❛#✐♦♥ ♣"✐♥❝✐♣❧❡/✳ ■♥ #❤✐/ ♣❛"#✱ ✇❡ ❞❡✜♥❡ #❤❡ ❞✐✛❡"❡♥# ♣❛"❛♠❡#❡"/ ♦❢ ♦✉" ❝❛#❛❧♦❣ ❛♥❞ ♦✉" ❝♦/# ♠♦❞❡❧✳ ❇❛/❡❞ ♦♥ #❤❛#✱ ✇❡ ✐♥#"♦❞✉❝❡ ♦✉" ❛❧❣♦"✐#❤♠ #♦ ❣❡♥❡"❛#❡ ❛♥ ♦♣#✐♠❛❧ ❡①❡❝✉#✐♦♥ ♣❧❛♥✳ ■♥ ❈❤❛♣#❡" ✺✱ ✇❡ ♣"❡/❡♥# ♦✉" ❧❛/# ❝♦♥#"✐❜✉#✐♦♥ ✇❤✐❝❤ ✐/ #❤❡ ❛✉#♦♠❛#✐♦♥ ♦❢ "❡/♦✉"❝❡/ ❞✐/❝♦✈❡"② ❛♥❞ ♠✉❧#✐♣❧❡ ❞❛#❛ /#♦"❡/ ❜❛/❡❞ ❛♣♣❧✐❝❛#✐♦♥ ❞❡♣❧♦②♠❡♥# ✐♥ ❈❧♦✉❞ ❡♥✈✐"♦♥♠❡♥#/✳ ❋✐"/#✱ ✇❡ ✐♥#"♦❞✉❝❡ #❤❡ ♣"✐♥❝✐♣❧❡/ ♦❢ #❤❡ ❞✐/❝♦✈❡"② /#❡♣ ❛♥❞ #❤❡ /#"✉❝#✉"❡ ♦❢ #❤❡ ❛❜/#"❛❝# ❛♣♣❧✐❝❛#✐♦♥ ♠❛♥✐❢❡/# ❛♥❞ #❤❡ ♦✛❡" ♠❛♥✐❢❡/#✳ ❇❛/❡❞ ♦♥ #❤❛#✱ ✇❡ ✐♥#"♦❞✉❝❡ ♦✉" ♠❛#❝❤✐♥❣ ❛❧❣♦"✐#❤♠✳ ❙❡❝♦♥❞✱ ✇❡ ♣"❡/❡♥# #❤❡ ♣"✐♥❝✐♣❧❡/ ♦❢ #❤❡ ❞❡♣❧♦②♠❡♥# /#❡♣ ❛♥❞ ✇❡ /❤♦✇ ❤♦✇ ✇❡ ❡①#❡♥❞ #❤❡ ❈❖❆P❙ ❆P■ #♦ /✉♣♣♦"# ♠✉❧#✐♣❧❡ ❞❛#❛ /#♦"❡/ ❜❛/❡❞ ❛♣♣❧✐❝❛#✐♦♥ ❞❡♣❧♦②♠❡♥#✳ ❲❡ ✜♥✐/❤ #❤✐/ ♣❛"# ❜② ❞❡✜♥✐♥❣ #❤❡ /#"✉❝#✉"❡ ♦❢ #❤❡ ❞❡♣❧♦②♠❡♥# ♠❛♥✐❢❡/#✳ ❋✐♥❛❧❧②✱ ✇❡ ❣✐✈❡ ❛♥ ❡①❛♠♣❧❡ ♦❢ ♠✉❧#✐♣❧❡ ❞❛#❛ /#♦"❡/ ❞✐/❝♦✈❡"②✳ ■♥ ❈❤❛♣#❡" ✻✱ ✇❡ ♣"❡/❡♥# #❤❡ ❞✐✛❡"❡♥# ❛/♣❡❝#/ ♦❢ ❡✈❛❧✉❛#✐♦♥ ♦❢ ♦✉" ♣"♦♣♦/❛❧/✳ ■# ❞❡#❛✐❧/ #❤❡ ♣"♦♦❢ ♦❢ ❝♦♥❝❡♣#✱ #❤❡ ❡✈❛❧✉❛#✐♦♥ ❡♥✈✐"♦♥♠❡♥# ❛♥❞ /❝❡♥❛"✐♦/ ❛/ ✇❡❧❧ ❛/ #❤❡ "❡/✉❧#/ ❛♥❞ ✜♥❞✐♥❣/✳ ❋✐♥❛❧❧②✱ ✇❡ /✉♠ ✉♣ ♦✉" ❝♦♥#"✐❜✉#✐♦♥/ ✐♥ ❈❤❛♣#❡" ✼✳ ❲❡ ❝♦♥❝❧✉❞❡ #❤✐/ ❧❛/# ❝❤❛♣#❡" ✇✐#❤ /♦♠❡ ♣❡"/♣❡❝#✐✈❡/ #❤❛# ✇❡ ❛✐♠ #♦ "❡❛❧✐③❡ ❛# /❤♦"#✱ ♠❡❞✐✉♠ ❛♥❞ ❧♦♥❣ #❡"♠✳

(29)

Figure

Figure 3.12: Exeple of an algebraic tree
Figure 3.13: Application migration from one cloud environment to another scenario At rst glance, application migration seems simple and automatic; but behind this scenario there are onerous responsibilities to be ensured by applications'  de-velopers
Table 4.1: Specication of our catalog's parameters 4. 4. 2 Cost Model
Figure 4.6: Example of computing an operation cost
+7

Références

Documents relatifs

To assure quality of, and access to, data, many funding agencies, such as the NSF and the DFG (Deutsche Forschungsgemeinschaft, Germany), require proposals to have data management

We implement the conceptual model in six different data stores: two RDF triple stores (Jena TDB and Virtuoso), one graph-oriented NoSQL database (Neo4j), one column-oriented data

To give us the machinery we need to prove our main results, in Subsection 5.3 we annotate our processes with the rights that apply to all variables. We show that a well annotated,

The adapters (External Source and Sink Connectors, External Processor) are running as wrappers for the processing modules, taking care of the interaction with Kafka

[r]

We aimed to investigate the association of residential neighbourhood spatial access to grocery stores (super- markets and local food shops) and to restaurants (full-

Dans ce chapitre, nous présentons un nouvel critère de cohérence, nommé Non-monotone Snapshot Isolation (NMSI), qui satisfait les propriétés de sécurité forte et s’assure

Les États parties doivent « assurer la rotection des droits de la femme et de l'enfant » et prendre « des mesures p pécifiques de protection » en rapport avec les