Sedona était à dotScale 2015, une conférence très technique autour des systèmes distribués, du DevOps et du cloud.
Dans les stands, des éditeurs de bases de données / moteur de recherche : ElasticSearch, Basho, Crate ; des hébergeurs cloud : IBM, exoscale, ikoula.
Sur scène des conférences par les acteurs majeurs du web : Google, Netflix, CloudFlare, mais aussi le gouvernement UK.
Pour le détail des conférences, jetez un coup d’oeil sur le blog du Touilleur Express :
http://www.touilleur-express.fr/2015/06/10/dotscale-2015-3eme-edition/
Mais s’il fallait retenir qu’une information, c’est l’insistance de beaucoup d’orateurs sur le théorème CAP : malgré les discours commerciaux des éditeurs on ne peut pas le transgresser.
Consistency : avoir des données cohérentes sur tout le système
Availability : toujours avoir une réponse
Partition : avoir un système distribué tolérant aux pannes réseau
=> à un instant donné, on ne peux pas avoir les 3 à la fois, il faudra faire un compromis.
Typiquement ElasticSearch est clairement AP, il n’a pas la « Consistency » et peut par nature perdre des données ou ne pas écrire la bonne version en cas d’écriture parallèle mais réponds toujours et très vite, même sur un réseau défaillant.
MongoDB se veut lui CP, il garantit la « Consistency » (à quelques exceptions prêts comme le montre Aphyr ) au détriment de l' »Availability », c’est à dire qu’il va préférer ne pas répondre plutôt que mal répondre mais saura gérer les pannes.
Les bases de données classiques mySQL, PostgreSQL ou Oracle vont elles être CA, garantissant la « Consistency » et « Availability » mais incapables de gérer le Partitionnement.
Le conseil récurrent était de bien faire attention avant de perdre l’aspect « Consistency » car cela complique énormément les développements, le risque d’incohérence pouvant provoquer de nombreux effets de bord difficiles à gérer.