Les bases de données NoSQL
Bases de données NoSQL, enjeux et solutions
Reference : BDSQL1

2
jours - 1,990 € € HT Télécharger la fiche
Prochaines sessions

Objectifs
- Identifier les différences des BDD SQL et des BDD NoSQL
- Évaluer les avantages et les inconvénients inhérents aux technologies NoSQL
- les principales solutions du monde NoSQL
- Identifier les champs d’application des BDD NoSQL
- Comprendre les différentes architectures, les modèles de données, les implémentations techniques.
Pré requis
- Connaissances de base des architectures techniques et du management SI. Connaissances de bases de données.
Modalités et délais d’accès
Pré-inscription
Bulletin d'inscription à retourner complété
Programmes de Bases de données NoSQL, enjeux et solutions
Introduction au NoSQL
- L’historique du mouvement NoSQL.
- Les différentes approches de gestion de BDD à travers le temps : hiérarchiques, relationnelles, objets, XML, NoSQL.
- Les grands acteurs à l’origine du mouvement NoSQL et du Big Data analytique : Google et Amazon.
- Données structurées, semi-structurées et non-structurées : provenance, typologie…
- Vue synoptique des différents types de moteurs NoSQL du point de vue du modèle de données.
- Le NoSQL, la Big Data et les architectures Cloud: principes d’architecture communs et divergents.
- Les modes de distribution : avec maître et décentralisé.
- Le positionnement du NoSQL au sein du Big Analytics : de l’ère de la transaction à l’ère de l’interaction.
Le Relationnel et le NoSQL.
- Les bases de données relationnelles : leurs forces et leurs limites.
- Structuration forte des données (schéma explicite) vs Structure souple (schéma implicite) et la modélisation agile.
- Des qualités ACID aux qualités BASE.
- Théorème CAP (cohérence, disponibilité, tolérance au partitionnement).
- Les différents niveaux de cohérence.
- Le langage SQL, la performance des jointures. L’accès par la clé en NoSQL.
- L’évolution vers le distribué : extensibilité verticale et horizontale.
- Comprendre le NoSQL par le modèle de l’agrégat et de la centralité de la donnée.
Les mondes du NoSQL
- Monde du NoSQL à travers ses choix techniques et différentes bases NoSQL libres (du moins structuré au plus structuré).
- L’architecture distribuée : principes, le shared-nothing.
- Disponibilité et cohérence différée : gossip, timestamps, vector clock, règle de majorité, arbre de Merkle.
- Les patterns et les modèles. Comment modéliser et travailler efficacement en NoSQL.
- Différents modèles de connexion avec le client : sur cluster décentralisé, protocoles comme Thrift ou ProtoBuf, REST…
- Les bases orientées clé-valeur et en mémoire : Redis, Riak, Projet Voldemort, Aerospike.
- Les bases orientées documents : Le format JSON. Couchbase Server, MongoDB, ElasticSearch.
- Les bases orientées colonne distribuées pour le Big Data opérationnel : Hadoop, Hbase, Cassandra, Accumulo…
- Les moteurs orientés graphes : Neo4j, OrientDB…
- L’écosystème Hadoop : les différences avec les SGBDR, les relations avec le NoSQL.
NoSQL et Big Data
- Big Data analytique : l’écosystème Hadoop.
- Stockage et traitements. Les différentes formes de stockage dans HDFS : SequenceFile, Apache Parquet.
- Différents types de traitements : MapReduce, Graphe orienté acyclique, flux, Machine Learning, de graphes distribué…
- Les architectures Big Data : traitements batch, micro-batch, flux. Architecture Lambda, architecture Kappa.
- Les outils intégrés : Apache Spark, Apache Flink.
- Les outils d’analyses de données : développement pour l’analyse Big Data, les outils du data scientist.
- La pérennité des outils du Big Data analytique devant l’évolution très rapide des frameworks.
Choisir et mettre en place
- Le type d’utilisation propice au NoSQL. À quels usages correspondent les bases NoSQL.
- Les choix matériels.
- Qu’est-ce qu’un modèle de données NoSQL ?
- Comment aborder la migration ?
- Les impacts sur le développement client. Comment développer efficacement avec des bases NoSQL ?
- Quels outils de supervision et comment les choisir ?
- Quelle est la complexité administrative et la courbe d’apprentissage ?
- Cas d’utilisation dans des entreprises existantes.
- Et les performances ? Quelques benchmarks ?
- Qu’est-ce que NewSQL ?