rajout de mes notes
This commit is contained in:
parent
fa7e0ac5c1
commit
66aeded3d1
@ -38,37 +38,49 @@ Une histoire concurrente est un ensemble d'évenements partiellement ordonnés p
|
|||||||
- Causal Broadcast (idem FIFO Broadcast):
|
- Causal Broadcast (idem FIFO Broadcast):
|
||||||
- Réception causale: Tout message m' envoyé par un processus après reception d'un message m est aussi reçu après m chez tout les autres processus
|
- Réception causale: Tout message m' envoyé par un processus après reception d'un message m est aussi reçu après m chez tout les autres processus
|
||||||
|
|
||||||
|
### Composabilité
|
||||||
|
|
||||||
|
La composabilité définit la possibilité pour deux types de données abstraits différents cohérent pris de manière unitaire, de pouvoir être combinés tout en gardant leurs conhérences.
|
||||||
|
|
||||||
|
### Décomposabilité
|
||||||
|
|
||||||
|
La décomposabilité définit la possibilité pour deux types de données abstraits différents cohérent si considérés "ensemble" de rester cohérent si considérés séparéments.
|
||||||
|
|
||||||
|
### Localité
|
||||||
|
|
||||||
|
La localité est le respect simultané de la composabilité et de la décomposabilité.
|
||||||
|
|
||||||
## Modèles
|
## Modèles
|
||||||
|
|
||||||
Cohérence forte impossible dans des environements crédibles de cloud. (Trop de risques de déni de services)
|
Cohérence forte impossible dans des environements crédibles de cloud. (Trop de risques de déni de services)
|
||||||
|
|
||||||
Ci dessous une liste des differents paradigmes de modélisation de système répartis:
|
Ci dessous une liste des differents paradigmes de modélisation de système répartis:
|
||||||
|
|
||||||
### Cohérence Sequentiel
|
### Cohérence Sequentiel (Décomposable, Fort)
|
||||||
|
|
||||||
Cohérence Sequentiel (SC): Les objets ciblés cachent la concurrence et se comportent comme si tous les accès etait sequentiels.
|
Cohérence Sequentiel (SC): Les objets ciblés cachent la concurrence et se comportent comme si tous les accès etait sequentiels.
|
||||||
Le but est de mimer le comportement "comme si" un serveur centralisait et ordonnait l'information. (Ca peut etre le cas ou non, il faut juste que la propriété soit respectée).
|
Le but est de mimer le comportement "comme si" un serveur centralisait et ordonnait l'information. (Ca peut etre le cas ou non, il faut juste que la propriété soit respectée).
|
||||||
Y a un débat sur une notion de la cohérence séquentielle. La première formalisation de ce type de cohérence formulé par Lamport oublie de mentionner la notion de "synchronisation". Ce qui peut conduire a des comportements non cohérents. Elle permet par exemple l'existence d'histoires infinies qui viennent s'ajouter les unes derrières les autres. Ce qui serait absurde dans un système réel. (Exemple: infinité de lecture suivie d'une infinité d'écriture).
|
Y a un débat sur une notion de la cohérence séquentielle. La première formalisation de ce type de cohérence formulé par Lamport oublie de mentionner la notion de "synchronisation". Ce qui peut conduire a des comportements non cohérents. Elle permet par exemple l'existence d'histoires infinies qui viennent s'ajouter les unes derrières les autres. Ce qui serait absurde dans un système réel. (Exemple: infinité de lecture suivie d'une infinité d'écriture).
|
||||||
Il y a donc débat sur la notion de cohérence séquentielle avec une école qui considére ce cas comme plausible, et une autre qui souhaite rajouter une notion de synchronisation.
|
Il y a donc débat sur la notion de cohérence séquentielle avec une école qui considére ce cas comme plausible, et une autre qui souhaite rajouter une notion de synchronisation.
|
||||||
|
|
||||||
### Linéarisibilité
|
### Linéarisibilité ()
|
||||||
|
|
||||||
Il y a ici un lien fort entre l'order d'action du processus et son intégration au système. Il y a une synchronicité plus forte.
|
Il y a ici un lien fort entre l'ordre d'action du processus et son intégration au système. Il y a une synchronicité plus forte.
|
||||||
Ici lorsqu'un processus souhaite acceder à un objet, si il n'entre en conflit avec aucune action d'écriture, il récupere la valeur antérieur à son éxécution. (propriété: Registre Sûr).
|
Ici lorsqu'un processus souhaite acceder à un objet, si il n'entre en conflit avec aucune action d'écriture, il récupere la valeur antérieur à son éxécution. (propriété: Registre Sûr).
|
||||||
Si plusieurs processus veulent acceder à un objet, et entrent en concurrence avec une écriture, alors ils ne peuvent retourner seulement la valeur avant ou après l'écriture (propriété: Registre Régulier).
|
Si plusieurs processus veulent acceder à un objet, et entrent en concurrence avec une écriture, alors ils ne peuvent retourner seulement la valeur avant ou après l'écriture (propriété: Registre Régulier).
|
||||||
Si deux lectures ne sont pas concurrentes, alors elles doivent rétourner une valeur au moins aussi récente que la lecture antérieur. (propriété: Registre Atomique).
|
Si deux lectures ne sont pas concurrentes, alors elles doivent rétourner une valeur au moins aussi récente que la lecture antérieur. (propriété: Registre Atomique).
|
||||||
|
|
||||||
### Serialisabilité
|
### Serialisabilité (Décomposable, Faible)
|
||||||
|
|
||||||
ACID: Atomicité (une transaction est soit completement acceptée soit completement avortée), Cohérence (Un transaction éxécutée dans un état correct emmène vers un état correct), Isolation (Les transactions n'interferent pas entre elles), Durabilité (une transaction accepté n'est pas remise en cause).
|
ACID: Atomicité (une transaction est soit completement acceptée soit completement avortée), Cohérence (Un transaction éxécutée dans un état correct emmène vers un état correct), Isolation (Les transactions n'interferent pas entre elles), Durabilité (une transaction accepté n'est pas remise en cause).
|
||||||
|
|
||||||
La serialisabilité est similaire à la linéarisibilité, à la difference que des transactions peuvent être avortés. Cela à pour effet de rendre le système moins "fort" en terme de consistence.
|
La serialisabilité est similaire à la linéarisibilité, à la difference que des transactions peuvent être avortés. Cela à pour effet de rendre le système moins "fort" en terme de consistence.
|
||||||
|
|
||||||
### Convergence
|
### Convergence (Composable, Faible)
|
||||||
|
|
||||||
La convergence est une notion de cohérence faible. Elle définit un systèmes qui peut à un instant t être divergent, mais qui finira sur un temps infinit à converger vers un état commun.
|
La convergence est une notion de cohérence faible. Elle définit un systèmes qui peut à un instant t être divergent, mais qui finira sur un temps infinit à converger vers un état commun.
|
||||||
|
|
||||||
### Convergenece forte
|
### Convergenece forte (Composable, Foaible)
|
||||||
|
|
||||||
La convergence forte est une extension de la convergence où notre histoire est diviser en plusieurs états. Chaques transaction se trouve dans un état avec d'autres transaction avec qui elle partage un "passé commun". On définit le passé commun comme la base de connaissance antérieur à l'éxécution de la transaction.
|
La convergence forte est une extension de la convergence où notre histoire est diviser en plusieurs états. Chaques transaction se trouve dans un état avec d'autres transaction avec qui elle partage un "passé commun". On définit le passé commun comme la base de connaissance antérieur à l'éxécution de la transaction.
|
||||||
|
|
||||||
@ -80,3 +92,19 @@ Les types de données vue pour les autres modèles sont peu adapté pour modelis
|
|||||||
|
|
||||||
L'intention est une notion qui tend à aplliquer la cohérence en fonction de l'intention des utilisatuers. Elle trouve son sens particulièrement dans l'éditions collaborative lors d'écritures concurentes. Mais sa spécification reste flou et c'est un concept qui semble difiicile à appliquer.
|
L'intention est une notion qui tend à aplliquer la cohérence en fonction de l'intention des utilisatuers. Elle trouve son sens particulièrement dans l'éditions collaborative lors d'écritures concurentes. Mais sa spécification reste flou et c'est un concept qui semble difiicile à appliquer.
|
||||||
|
|
||||||
|
### Coherence pipeline (Décomposable, Faible)
|
||||||
|
|
||||||
|
La cohérence pipeline consiste une cohérence ne garantissant pas l'ordre des états finaux. C'est donc une cohérence faible. La chose la plus notable est que le résultat n'est pas garantit pour deux histoires concurentes équivalentes.
|
||||||
|
|
||||||
|
### Cohérence de Cache (Composable, Décomposable, Fort)
|
||||||
|
|
||||||
|
On imagine que chaque type de donnée abstraite utilise une seule et même memoire qu'il partage avec tous les processus de l'histoire concurrente. Chaque mêmemoire respecte une cohérence séquentiel.
|
||||||
|
|
||||||
|
### Cohérence d'écriture (Faible)
|
||||||
|
|
||||||
|
Un aspect manquant de la convergence est l'absence de cohérence d'écriture. C'est à dire que rien ne garantit que les données écrites par un processus soient bien celles lue à la fin par les lectures infinits.
|
||||||
|
Le concept de cohérence d'écriture vise donc à spécifier cette propriété.
|
||||||
|
|
||||||
|
### Cohérence d'écriture forte (Faible)
|
||||||
|
|
||||||
|
La cohérence d'écriture forte est une extension de la cohérence d'écriture qui rajoute un ordre dans les opérations d'écriture. Ceci permet d'assurer que chaque opération soient faites dans le même état et assure donc une convergence plus "rapide".
|
Loading…
Reference in New Issue
Block a user