---
title: "Bases de données NoSQL (Redis, MongoDB, Cassandra, Neo4j) - José DA COSTA"
description: "Travailler avec des systèmes de bases de données NoSQL incluant Redis (clé-valeur), MongoDB (document), Cassandra (colonne) et Neo4j (graphe), en sélectionnant le modèle approprié pour chaque cas d'usage."
locale: "fr"
canonical: "https://portfolio.josedacosta.info/fr/competences/nosql-databases"
source: "https://portfolio.josedacosta.info/fr/competences/nosql-databases.md"
html_source: "https://portfolio.josedacosta.info/fr/competences/nosql-databases"
author: "José DA COSTA"
type: "skill"
slug: "nosql-databases"
generated_at: "2026-04-23T15:41:29.248Z"
---

# Bases de données NoSQL (Redis, MongoDB, Cassandra, Neo4j)

**Compétence technique** - master-software-engineering (Master) - Avancé

## Description de la compétence

Travailler avec des systèmes de bases de données NoSQL incluant Redis (clé-valeur), MongoDB (document), Cassandra (colonne) et Neo4j (graphe), en sélectionnant le modèle approprié pour chaque cas d'usage.

## Confiance personnelle

**Avancé** - 4/5

Scale: 1. Fondamental · 2. En développement · 3. Opérationnel · 4. Avancé · 5. Expert

Cela reflète ma confiance personnelle dans l'application de cette compétence en situation professionnelle réelle, fondée sur l'expérience pratique, l'apprentissage continu et les résultats concrets obtenus.

## Details

- Domain: Hard skill (technical)
- Source: master-software-engineering (Master)
- Confidence level: 4/5 (Avancé)

## Related curriculum topics

- **Initier efficacement un projet SI** (Bloc 1 - Gestion de la relation client en ingénierie du logiciel): Vue des données
- **Droit des contrats informatiques** (Bloc 1 - Gestion de la relation client en ingénierie du logiciel): Focus sur les clauses de protection des données
- **UX et Wireframing** (Bloc 1 - Gestion de la relation client en ingénierie du logiciel): Analyse de données
- **Méthodes Agiles avancées / Scrum** (Bloc 2 - Pilotage de projet d'ingénierie logiciel): Les bases de Scrum
- **Approfondissement du développement Front-end avec Angular** (Bloc 3 - Intégration, industrialisation et déploiement du logiciel): Passage de données à une page
- **Développer en Java avec Spring et Hibernate** (Bloc 3 - Intégration, industrialisation et déploiement du logiciel): Écriture de la couche d'accès aux données avec spring data, Écriture de la classe d'ajout de données et premier concept phare de spring, Utilisation du HQL dans la couche d'accès aux données, Écriture de méthodes dérivées dans la couche d'accès aux données, Notion de projection et mise en pratique dans la couche d'accès aux données, La pagination des données
- **Maîtriser Docker et le DevOps** (Bloc 3 - Intégration, industrialisation et déploiement du logiciel): Partager des données sur plusieurs serveurs
- **Déploiement d'une application** (Bloc 3 - Intégration, industrialisation et déploiement du logiciel): Migration de données
- **Kubernetes pour orchestrer ses conteneurs** (Bloc 3 - Intégration, industrialisation et déploiement du logiciel): Docker, les bases, Docker les bases : démonstration
- **Construire une API REST avec Spring Boot** (Bloc 3 - Intégration, industrialisation et déploiement du logiciel): Communiquer avec la base de données, Valider vos données avec les contraintes
- **Architecture logicielle** (Bloc 4 - Conception avancée de l'architecture du logiciel): Introduction à l'architecture centrée sur les données, Cas d'usage de l'architecture centrée sur les données, Mise en œuvre de l'architecture centrée sur les données en Java
- **Sécurité des applications web** (Bloc 4 - Conception avancée de l'architecture du logiciel): Utiliser des utilisateurs en base de données pour l'authentification
- **Programmation fonctionnelle en Scala** (Bloc 4 - Conception avancée de l'architecture du logiciel): Données immuables
- **Architecture distribuée et Big Data** (Bloc 4 - Conception avancée de l'architecture du logiciel): Système de gestion de bases de données, NoSQL
- **NoSQL** (Bloc 4 - Conception avancée de l'architecture du logiciel): Les bases du relationnel, Les bases du relationnel : Démonstration, Introduction au NoSQL, NoSQL : Clé valeur, Redis - CRUD : Démonstration, Redis, Transactions et pub-sub : Démonstration, Redis : Architecture, Redis, architecture : Démonstration, NoSQL : Colonne, Cassandra, CRUD : Démonstration, NoSQL Cassandra : Architecture, Cassandra, Architecture : Démonstration, NoSQL : Document, MongoDB, CRUD : Démonstration, MongoDB, CRUD : Architecture, MongoDB, Architecture : Démonstration, NoSQL : Graph, Neo4j, crud : Démonstration, Neo4J, complex graph : Démonstration, Neo4J : Architecture, Neo4j, architecture : Démonstration
- **Structure des données** (Bloc 4 - Conception avancée de l'architecture du logiciel): Structure de données graphe, Utiliser la bonne structure de données
- **Plans de tests d'une application** (Bloc 4 - Conception avancée de l'architecture du logiciel): Les bases d'un test unitaire, Les tests d'intégration et les jeux de données
- **Introduction au Machine Learning** (Bloc 4 - Conception avancée de l'architecture du logiciel): Explorer les données, Préparer des données Partie 1, Préparer des données partie 2

## Broader curriculum context

Other modules from the same training program that provide complementary context:

- **Analyse fonctionnelle d'un projet SI** (Bloc 1 - Gestion de la relation client en ingénierie du logiciel): Introduction - Définition, Les types d'analyses fonctionnelles, Le cahier des charges fonctionnelles, Les étapes de l'AF, L'analyse du besoin
- **Design Thinking** (Bloc 1 - Gestion de la relation client en ingénierie du logiciel): Définition et origines du Design Thinking, La philosophie et l'approche Design Thinking, La méthodologie en 5 étapes, Exemple de cas d'usage, L'immersion - comment mener des interviews utilisateurs
- **Management transversal** (Bloc 1 - Gestion de la relation client en ingénierie du logiciel): La transversalité dans l'entreprise, Management transversal vs hiérarchique, Se positionner dans un rôle transversal, Les 3 leviers du management transversal, Piloter l'activité
- **Animer et encadrer une équipe** (Bloc 1 - Gestion de la relation client en ingénierie du logiciel): Les fondamentaux du management, Intégration du manager, Recrutement, Intégration d'un collaborateur, Les quatre styles de management
- **Exécuter et piloter la réalisation d'un projet Génie logiciel** (Bloc 2 - Pilotage de projet d'ingénierie logiciel): À quoi sert le management de projet ?, Différences entre projets et opérations, Découvrir le contexte du projet, Définir le périmètre du projet, Établir la charte projet
- **Leadership et Management** (Bloc 2 - Pilotage de projet d'ingénierie logiciel): Qu'est-ce que le management ?, Les missions-clés du manager, Qu'est-ce que le leadership ?, Plusieurs styles de leadership, Commencer par (mieux) se connaître
- **Communiquer en mode projet** (Bloc 2 - Pilotage de projet d'ingénierie logiciel): Qu'est-ce qu'un projet ?, Définir la communication, Les différents types de communication, À quelles étapes du projet communiquer, Pourquoi communiquer dans un projet
- **Javascript : initiation et programmation orientée objet** (Bloc 3 - Intégration, industrialisation et déploiement du logiciel): Le langage du web, Environnement de travail, Les variables, Les opérateurs, Les structures conditionnelles
- **Javascript : programmation événementielle et asynchrone** (Bloc 3 - Intégration, industrialisation et déploiement du logiciel): JavaScript et le DOM, L'objet global window, Sélectionner des éléments, Créer et supprimer des éléments, Gérer les règles CSS
- **Développer vos applications web avec TypeScript** (Bloc 3 - Intégration, industrialisation et déploiement du logiciel): Introduction à TypeScript, Installer TypeScript et le configurer, Les types fondamentaux, Les types Tuples, Les types Object et Array
- **Fondamentaux du développement Front-end avec Angular** (Bloc 3 - Intégration, industrialisation et déploiement du logiciel): Il était une fois.. Angular !, Installation, Édition de notre application, Introduction aux composants, Création d'un composant
- **Maîtriser Java SE** (Bloc 3 - Intégration, industrialisation et déploiement du logiciel): Présentation et historique du microcosme Java, Présentation et installation du JDK 17, Présentation et installation d'Eclipse 2022-12, Première classe, la classe HelloWorld, Les types primitifs, les objets et les tableaux
- **Git avancé - GitHub et GitLab** (Bloc 3 - Intégration, industrialisation et déploiement du logiciel): Quelques rappels sur GIT, Ponctionner un commit (cherry-pick), Retrouver des commits disparus (reflog), Ajouter des notes, Importer un dépôt SVN
- **Maîtriser le langage Kotlin** (Bloc 3 - Intégration, industrialisation et déploiement du logiciel): Présentation, HelloWorld, Les différents typages, Optimiser son IDE, Fonction et fonction expression
- **Développer des applications mobiles Android en Kotlin** (Bloc 3 - Intégration, industrialisation et déploiement du logiciel): Présentation, HelloWorld, Maîtriser l'architecture du projet, Créer une interface graphique, Internationaliser son application
- **Principes SOLID en JAVA** (Bloc 4 - Conception avancée de l'architecture du logiciel): La problématique de la qualité du code, Les principes Solid, une réponse aux enjeux d'un code maintenable, S : Single Responsability Principle Introduction, Non-respect du Single Responsability Principle, Respect du Single Responsability Principle
- **Conception d'application complexe avec UML** (Bloc 4 - Conception avancée de l'architecture du logiciel): Introduction à la modélisation structurelle avec UML, Le diagramme de classe (classe et héritage), Le diagramme de classe avec Visual Paradigm, Traduction du diagramme de classe en code(classe et héritage), Le diagramme de classe (relation et multiplicité)
- **Design Pattern en Java** (Bloc 4 - Conception avancée de l'architecture du logiciel): Introduction Design Pattern du GoF, la légende, Description des Design Pattern de création, Description du Design Pattern Singleton, Implémentation de Singleton, Description du Design Pattern Factory Method
- **Algorithmie avancée** (Bloc 4 - Conception avancée de l'architecture du logiciel): Optimiser, par où commencer ?, Rechercher, une tâche complexe ?, Améliorer la recherche avec un tri, Complexité du tri, Amélioration du tri dans le meilleur cas
- **Anglais commercial** (Bloc 5 - Préparation à votre niveau d'anglais): Dépasser les fausses croyances courantes dans l'apprentissage de l'anglais, Comment gérer les interactions professionnelles de base, Comment utiliser le vocabulaire commun à l'anglais et au français dans les interactions professionnelles, Identifier et éviter les pièges les plus courants dans la communication professionnelle en anglais, Comment créer le cadre pour augmenter votre aisance dans les situations professionnelles
- **Anglais Commercial Niveau Avancé** (Bloc 5 - Préparation à votre niveau d'anglais): Vocabulary Expansion for Professional Contexts, Speaking Skills for Business Meetings and Présentations, Writing Skills for Business Emails and Reports, Business Negotiations, Professional Présentations and Public Speaking
- **Anglais Commercial Niveau Intermédiaire** (Bloc 5 - Préparation à votre niveau d'anglais): Professional English Communication in Sales, Professional English Communication in Sales, Communication via Phone and Email, Managing Misunderstandings and Expressing Disagreement in English Conversations, Differences between French and Anglo-Saxon Cultures
- **Anglais : préparation au TOEIC** (Bloc 5 - Préparation à votre niveau d'anglais): Introduction au TOEIC®, Les types de TOEIC®, Focus sur le TOEIC® : listening and reading, Le nouveau TOEIC®, Comment se préparer
- **Anglais des Ressources Humaines** (Bloc 6 - Modules de mise à niveau préparatoire et de renforcement): Se présenter et présenter son poste, Métiers des RH en entreprise, Comprendre et utiliser les codes professionnels de communication (hiérarchie, distance, formel-informel), Collecter les besoins et adapter une fiche de poste à un recrutement international, Rédiger une offre d'emploi en anglais claire et attractive

## Autres compétences techniques du même diplôme

- [Patterns d'architecture logicielle](https://portfolio.josedacosta.info/fr/competences/software-architecture-patterns.md) - Concevoir des systèmes logiciels évolutifs en utilisant des patterns architecturaux tels que l'architecture en couches, l'architecture hexagonale, les
- [Principes SOLID et code propre](https://portfolio.josedacosta.info/fr/competences/solid-principles-clean-code.md) - Appliquer les principes SOLID (responsabilité unique, ouvert/fermé, substitution de Liskov, ségrégation des interfaces, inversion de dépendances) et l
- [Design Patterns (Gang of Four)](https://portfolio.josedacosta.info/fr/competences/design-patterns-gof.md) - Implémenter les design patterns du Gang of Four (créationnels, structurels, comportementaux) pour résoudre des problèmes de conception récurrents et c
- [Stratégie de tests et qualité logicielle](https://portfolio.josedacosta.info/fr/competences/testing-strategy-quality.md) - Définir et exécuter des stratégies de tests complètes incluant les tests unitaires, les tests d'intégration, les tests de bout en bout, les pratiques
- [Sécurité des applications web (OWASP)](https://portfolio.josedacosta.info/fr/competences/web-application-security-owasp.md) - Sécuriser les applications web en appliquant les recommandations OWASP Top 10, en implémentant l'authentification/autorisation, en prévenant les attaq
- [Programmation JavaScript (POO, événementiel, asynchrone)](https://portfolio.josedacosta.info/fr/competences/javascript-programming.md) - Maîtriser les paradigmes de programmation JavaScript incluant la programmation orientée objet, l'architecture événementielle, les patterns asynchrones
- [Développement TypeScript](https://portfolio.josedacosta.info/fr/competences/typescript-development.md) - Développer des applications type-safe avec TypeScript en exploitant les systèmes de types avancés, les génériques, les décorateurs, les interfaces et
- [Programmation Java SE](https://portfolio.josedacosta.info/fr/competences/java-se-programming.md) - Programmer des applications robustes en Java SE en maîtrisant les concepts fondamentaux tels que les collections, les génériques, les streams, le mult
- [Java Spring et Hibernate](https://portfolio.josedacosta.info/fr/competences/java-spring-hibernate.md) - Développer des applications d'entreprise avec le framework Spring (Boot, MVC, Security, Data) et Hibernate ORM pour la persistance des données, la ges
- [Conception et implémentation d'API REST](https://portfolio.josedacosta.info/fr/competences/rest-api-design.md) - Concevoir et implémenter des API RESTful selon les bonnes pratiques incluant la modélisation des ressources, les méthodes HTTP, les codes de statut, l

## Acquired during: Master Expert en Ingénierie du Logiciel

Master Expert en Ingénierie du Logiciel à l'ESIEA (2023-2026). Diplôme de niveau RNCP 7, spécialisation en génie logiciel et architecture.

[See full journey entry](https://portfolio.josedacosta.info/fr/parcours/master-software-engineering.md)

Full interactive page with navigation: https://portfolio.josedacosta.info/fr/competences/nosql-databases
