Administration d'un big data sous mongodb et extraction de connaissance par réseau de neurones.par Destin CUBAKA BENI Université Pédagogique Nationale (UPN) - Licence 2019 |
1) Théorème du CAP (d'Eric Brewer)10(*)À l'heure actuelle, il est important de savoir que le mouvement des bases de données NoSQL contient plusieurs approches qui ont leur propre architecture et traitent des cas d'utilisation bien définis. Il est donc nécessaire de choisir l'outil qui répond le mieux au problème posé, à la fois en termes de modélisation mais également de diffusion des données. Le théorème énonce donc de la manière suivante : Il est impossible pour un système distribué de fournir les trois propriétés suivantes à la fois : v Cohérence (Consistency) : Tous les noeuds du système voient les mêmes données au même moment quelques soient les modifications ; v Disponibilité (Availability) : Les requêtes d'écriture et de lecture sont toujours satisfaites, donc il y a disponibilité pour la lecture et l'écriture ; v Tolérance au partitionnement(Partition tolerance) : La seule raison qui pousse un système à l'arrêt est la coupure totale du réseau. Autrement dit si une partie du réseau n'est pas opérationnelle, cela n'empêche pas le système de répondre. Le système tolère même une partie du réseau. Afin de créer une architecture distribuée on doit donc choisir deux de ces propriétés, laissant ainsi trois conceptions possibles : · CP : Les données sont consistantes entre tous les noeuds et le système possède une tolérance aux pannes, mais il peut aussi subir des problèmes de latence ou plus généralement, de disponibilité ; · AP : Le système répond de façon performante en plus d'être tolérant aux pannes. Cependant rien ne garantit la consistance des données entre les noeuds ; · CA : Les données sont consistantes entre tous les noeuds (tant que les noeuds sont onlines). Toutes les lectures/écritures des noeuds concernent les mêmes données. Mais si un problème de réseau apparait, certains noeuds seront désynchronisés au niveau des données (et perdront donc la consistance). 2) Principes ACID et BASEHormis le théorème CAP ci-haut énoncé, nous pouvons aussi parler de deux principes qui sont alors liés à la répartition des données et qui sont à la base des architectures actuelles des systèmes de gestion de bases de données, notamment les systèmes du type NoSQL. ACID et BASE représentent deux principes de conception aux extrémités opposées du spectre cohérence-disponibilité. Les propriétés ACID se concentrent sur la cohérence et sont l'approche traditionnelle des bases de données. Le principe BASE était créé à la fin des années 90 pour saisir les concepts émergents de la haute disponibilité et rendre explicite à la fois le choix et le spectre. Les systèmes étendus modernes et à grande échelle, y compris le Cloud, utilisent une combinaison des deux approches. Bien que les deux acronymes soient plus mnémoniques que précis, l'acronyme BASE (étant le second apparu) est un peu plus délicat : BasicallyAvailable, Soft state, Eventuallyconsistent (Simplement disponible, état souple, finalement consistant). Soft state et Eventualconsistency sont des techniques qui fonctionnent bien en présence de partitions réseau et donc améliorent la disponibilité. La relation entre CAP et ACID est plus complexe et souvent incomprise, en partie parce que les C et A d'ACID représentent des concepts différents des mêmes lettres dans CAP et en partie parce que choisir la disponibilité affecte seulement certaines des garanties ACID. Les quatre propriétés ACID sont : · Atomicité : Tout système bénéficie d'opérations atomiques. · Cohérence : Dans ACID, le C signifie qu'une transaction préserve toutes les règles des bases de données, telles que les clés uniques · Isolation : L'isolation est au coeur du théorème CAP : si un système nécessite l'isolation ACID, il peut opérer sur au plus une partie durant une partition réseau. · Durabilité : La propriété durabilité assure que lorsqu'une transaction a été confirmée, elle demeure enregistrée même à la suite d'une panne d'électricité, d'une panne de l'ordinateur ou d'un autre problème. Il est à noter que le principe BASE abandonne donc la consistance au profit de ces nouvelles propriétés : · Fondamentalement disponible (BasicallyAvailable) : Le système garantie bien la disponibilité dans le même sens que celle du théorème de CAP ; · Etat souple (Soft-State) : Indique que l'état du système peut changer à mesure que le temps passe, et c'est sans action utilisateur. C'est dû à la propriété suivante ; · Eventuellement Cohérent (Eventually) consistent : Spécifie que le système sera consistant à mesure que le temps passe, à condition qu'il ne reçoive pas une action utilisateur entre temps. ACID est nécessaire si : · Beaucoup d'utilisateurs ou processus qui travaillent sur une même donnée au même moment ; · L'ordre des transactions est très important ; · L'affichage de données dépassées n'est pas une option ; · Il y a un impact significatif lorsqu'une transaction n'aboutit pas (dans des systèmes financiers en temps réel par exemple). BASE est possible si : · Les utilisateurs ou processus ont surtout tendances à faire des mises à jour ou travailler sur leurs propres données ; · L'ordre des transactions n'est pas un problème ; · L'utilisateur sera sur le même écran pendant un moment et regardera de toute façon des données dépassées ; · Aucun impact grave lors de l'abandon d'une transaction. Il est ainsi à remarquer que s'agissant des systèmes AC, il s'agit des bases des données relationnelles implémentant les propriétés de Cohérence et de Disponibilité. Ce qui signifie que les bases des données NoSQL sont généralement des systèmes CP et AP. Les systèmes AP sont du groupe NoSQL Figure 1.5:Guide visuelle au théorème du CAP. * 10Le théorème d'une conjecture d'Eric Brewer, informaticien, de l'Université de Californie à Berkeley lors du Symposium sur les principes de l'informatique distribuée (Symposium on Principles of Distributed Computing (PODC)). En 2002, Seth Gilbert et Nancy Lynch du MIT ont publié une preuve formelle de la vérifiabilité de la conjecture de Brewer et en ont fait un théorème établi. |
|