M165 V1

Utiliser des bases de données NoSQL

Type
EP obligatoire
Lieu
École professionnelle
Année
2ème année d'apprentissage
PDF
165_1_Utiliser%20des%20bases%20de%20donn%C3%A9es%20NoSQL.pdf

Compétences PEC liées

g5

Compétence visée par le module

Choisir un stockage de données numérique approprié dans les cas où un système de gestion de base de données relationnelle ne peut ou ne doit pas être utilisé. Implémenter une base de données dans un système de gestion de base de données NoSQL (Not only SQL), importer les données et les administrer.

Situation / objet

Deux types de base de données NoSQL au minimum

Objectifs opérationnels et connaissances

165.1 Choisir, pour le cas d’utilisation concerné, une base de données NoSQL appropriée (p. ex. orientée documents, graphiques, clé-valeur, colonnes larges, objet, en mémoire). g5
ConnaissanceTexte
165.1.1Connaître le domaine d’utilisation des bases de données NoSQL (p. ex. mise en cache [caching], analyse des données, entrepôt de données, recherche plein texte, réseaux, tests).
165.1.2Connaître le théorème CAP (cohérence, disponibilité et tolérance au partitionnement) qui caractérise les systèmes de base de données distribués.
165.1.3Connaître le modèle de cohérence BASE et ses différences par rapport au modèle ACID des systèmes de base de données relationnelle.
165.1.4Connaître diverses structures d’indexation utilisées pour les bases de données NoSQL.
165.2 Implémenter une base de données NoSQL et y insérer les données. g5
ConnaissanceTexte
165.2.1Connaître les éléments d’un système de gestion de base de données NoSQL permettant de transposer un modèle de données en un schéma de base de données physique.
165.2.2Connaître les commandes d’un langage de définition de données (Data Definition Language [DDL]) permettant d’implémenter un modèle de données dans un schéma de base de données physique d’une base de données NoSQL.
165.2.3Connaître les commandes d’un langage de manipulation de données (Data Manipulation Language [DML]) pour ajouter un ou plusieurs jeux de données dans la base de données NoSQL (via une console, à partir de jeux de données existants, via les outils front-end DBMS).
165.3 Définir les autorisations d’accès et les appliquer à la base de données NoSQL. g5
ConnaissanceTexte
165.3.1Connaître les commandes d’un langage de contrôle de données (Data Control Language [DCL]) pour gérer les utilisateurs et/ou les rôles.
165.3.2Connaître les commandes d’un DCL pour attribuer les autorisations d’accès aux utilisateurs et/ou aux rôles et les gérer.
165.4 Sauvegarder la base de données NoSQL et vérifier sa restauration. g5
ConnaissanceTexte
165.4.1Connaître les commandes d’un système de gestion de base de données pour la sauvegarde d’une base de données (données et schéma de base de données) au repos ou en exploitation.
165.4.2Connaître les commandes d’un système de gestion de base de données pour restaurer une base de données (données et schéma de base de données) ou des parties de celle-ci.
165.5 Mettre à l’échelle une base de données NoSQL, p. ex. par réplication. g5
ConnaissanceTexte
165.5.1Connaître les différences entre divers types de réplication: multi-maîtres, maître-esclave, active-passive et mise à l’échelle horizontale.
165.5.2Connaître les commandes d’un système de gestion de base de données NoSQL pour gérer la réplication.
165.6 Utiliser la base de données NoSQL en mode lecture/écriture depuis une application. g5
ConnaissanceTexte
165.6.1Connaître des interfaces d’un système de gestion de base de données NoSQL pour une utilisation à partir d’une application.
165.6.2Connaître la différence entre les requêtes et les projections lors de l’interrogation des bases de données NoSQL.
165.6.3Connaître l’algorithme MapReduce pour traiter en parallèle des volumes importants de données dans une base de données NoSQL.

Matrice de compétences

BandeCompétenceDébutantIntermédiaireAvancéObjectifs
A1 Bases NoSQL Je suis en mesure d’expliquer des termes et des concepts des bases de données NoSQL (p. ex. théorème CAP, BASE, ACID, structures d’indexation, mise en cache, analyse des données, entrepôt de données, recherche plein texte, réseaux, tests). Je suis en mesure de choisir de manière ciblée une base de données NoSQL pour une utilisation spécifique (p. ex. base de données orientée documents pour des vidéos). Je suis en mesure de porter un regard critique sur l’utilisation d’une base de données NoSQL et de proposer des améliorations.
165.1
B1 Implémenter une base de données NoSQL Je suis en mesure d’interpréter et d’expliquer un modèle de données pour une base de données. Je suis en mesure de transposer un modèle de données prédéfini avec une base de données NoSQL. Je suis en mesure de concevoir un modèle de données pour une base de données NoSQL.
165.2
C1 Insérer des données dans une base de données NoSQL Je suis en mesure d’expliquer la structure des données dans une base de données NoSQL. Je suis en mesure de transférer des données vers une base de données NoSQL. Je suis en mesure d’identifier des problèmes lors du transfert de données dans une base de données NoSQL et de montrer des solutions.
165.2
D1 Appliquer les autorisations d’accès Je suis en mesure d’expliquer la fonction des autorisations d’accès dans une base de données NoSQL (utilisateurs, rôles, droits d’accès). Je suis en mesure d’appliquer des autorisations d’accès prédéfinies à une base de données NoSQL (p. ex. rôles). Je suis en mesure de créer un concept pour les autorisations d’accès d’une base de données NoSQL.
165.3
E1 Effectuer une sauvegarde et une restauration Je suis en mesure d’expliquer des concepts de sauvegarde d’une base de données NoSQL (p. ex. on-demand snapshots, continuous cloud backups, legacy backups). Je suis en mesure d’effectuer une sauvegarde et une restauration d’une base de données NoSQL. Je suis en mesure de créer un concept de sauvegarde d’une base de données NoSQL.
165.4
F1 Appliquer la mise à l’échelle et la réplication à une base de données NoSQL Je suis en mesure d’expliquer le principe de mise à l’échelle et les différents types de réplication pour une base de données NoSQL (p. ex. multi-maîtres, maître-esclave, active-passive et mise à l’échelle horizontale). Je suis en mesure d’appliquer la réplication à une base de données NoSQL. Je suis en mesure de créer un concept de mise à l’échelle d’une base de données NoSQL.
165.5
G1 Etablir une connexion à une base de données NoSQL Je suis en mesure d’expliquer le principe de l’accès à une base de données NoSQL (p. ex. requêtes et projections). Je suis en mesure d’implémenter une connexion à une base de données NoSQL (p. ex. API). Je suis en mesure d’appliquer le principe du traitement en parallèle aux bases de données NoSQL (p. ex. algorithme MapReduce).
165.6

Modules liés par compétences PEC

ModuleTitrePEC communes
M106 Interroger, traiter et assurer la maintenance des bases de données
g5
M183 Implémenter la sécurité d'une application
g5
M223 Réaliser des applications multi-utilisateurs orientées objets
g5
M293 Créer et publier un site Web
g5
M294 Réaliser le front-end d’une application Web interactive
g5
M295 Réaliser le back-end pour des applications
g5
M319 Concevoir et implémenter des applications
g5
M320 Programmer orienté objet
g5
M321 Programmer des systèmes distribués
g5
M322 Concevoir et implémenter des interfaces utilisateur
g5
M323 Programmer de manière fonctionnelle
g5
M324 Prendre en charge des processus DevOps avec des outils logiciels
g5