0% ont trouvé ce document utile (0 vote)
23 vues25 pages

Introduction au NoSQL et Planification de Projet

Introduction à NoSQL

Transféré par

sidvli145
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
23 vues25 pages

Introduction au NoSQL et Planification de Projet

Introduction à NoSQL

Transféré par

sidvli145
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Introduction à NoSQL

Objectifs du Cours
 Comprendre le concept de NoSQL et pourquoi il est utilisé.
 Explorer les différents types de bases de données NoSQL.
 Identifier les avantages et les inconvénients des bases de données NoSQL.
 Apprendre à choisir la bonne base de données NoSQL pour un projet spécifique.

1. Introduction à NoSQL
1.1 Qu'est-ce que NoSQL ?

NoSQL (Not Only SQL) désigne une catégorie de systèmes de gestion de bases de données
qui ne reposent pas sur le modèle relationnel traditionnel. Ces systèmes sont conçus pour
gérer des données non structurées ou semi-structurées, permettant une plus grande
flexibilité et une scalabilité horizontale.

1.2 Pourquoi NoSQL ?

 Évolutivité : Les bases de données NoSQL peuvent être facilement mises à l'échelle
horizontalement en ajoutant de nouveaux serveurs, ce qui est idéal pour les
applications nécessitant de traiter des volumes de données massifs.
 Flexibilité des Schémas : Contrairement aux bases de données relationnelles, NoSQL
permet de stocker des données sans schéma fixe, ce qui facilite l'adaptation aux
changements de données.
 Performance : Les systèmes NoSQL sont optimisés pour des lectures et écritures
rapides, ce qui les rend adaptés aux applications en temps réel.

2. Types de Bases de Données NoSQL


Les bases de données NoSQL peuvent être classées en plusieurs catégories, chacune ayant
des caractéristiques et des cas d'utilisation spécifiques.

2.1 Bases de Données Documentaires

 Description : Stockent les données sous forme de documents, souvent au format


JSON, BSON ou XML.
 Exemples : MongoDB, CouchDB.
 Cas d'utilisation : Applications web, gestion de contenu, applications mobiles.

2.2 Bases de Données Clé-Valeur

 Description : Stockent les données sous forme de paires clé-valeur, où chaque clé est
unique.
 Exemples : Redis, Amazon DynamoDB.
 Cas d'utilisation : Caches, sessions utilisateur, stockage de préférences.

2.3 Bases de Données en Colonnes

 Description : Stockent les données dans des colonnes plutôt que dans des lignes, ce
qui permet une lecture efficace des données.
 Exemples : Apache Cassandra, HBase.
 Cas d'utilisation : Analyses de grandes quantités de données, systèmes de
recommandation.

2.4 Bases de Données Graphiques

 Description : Conçues pour représenter et interroger des données sous forme de


graphes, avec des nœuds (entités) et des arêtes (relations).
 Exemples : Neo4j, Amazon Neptune.
 Cas d'utilisation : Réseaux sociaux, moteurs de recommandation, analyse de réseaux.

3. Avantages et Inconvénients de NoSQL


3.1 Avantages

 Scalabilité Horizontale : Facilité d'ajout de nouveaux nœuds pour augmenter la


capacité.
 Flexibilité de Schéma : Adaptation facile aux changements de structure de données.
 Haute Performance : Optimisation pour des opérations de lecture et d'écriture
rapides.
 Traitement de Données Massives : Capacité à gérer des volumes de données
énormes et variés.

3.2 Inconvénients

 Moins de Standardisation : Manque de normes unifiées entre les différentes bases


de données NoSQL.
 Moins de Fonctionnalités ACID : Moins de garantie pour les transactions complexes
comparées aux bases de données relationnelles.
 Complexité d'Intégration : L'intégration avec d'autres systèmes peut nécessiter plus
d'efforts.
 Compétences Spécifiques : Nécessité d'apprendre de nouveaux paradigmes et outils.

4. Quand Utiliser NoSQL ?


NoSQL est particulièrement utile dans les situations suivantes :

 Applications à Forte Charge : Lorsque le volume de données et le nombre


d'utilisateurs sont très élevés.
 Données Non Structurées : Lorsque les données ne se prêtent pas facilement à un
schéma relationnel.
 Développement Agile : Lorsque la flexibilité et la rapidité d'adaptation aux
changements sont cruciales.

5. Exemples de Cas d'Utilisation


5.1 Réseaux Sociaux

Les plateformes de réseaux sociaux utilisent souvent des bases de données graphiques pour
représenter les connexions entre utilisateurs.

5.2 E-commerce

Les sites e-commerce utilisent des bases de données documentaires pour gérer des
catalogues de produits avec des attributs variés.

5.3 Big Data et Analytics

Les systèmes de gestion de données massives exploitent souvent des bases de données en
colonnes pour effectuer des analyses à grande échelle.

6. Conclusion
Les bases de données NoSQL offrent une solution puissante et flexible pour gérer des
données dans des applications modernes. En comprenant les différents types de bases de
données NoSQL et leurs cas d'utilisation, vous pouvez choisir la solution la mieux adaptée à
vos besoins spécifiques.
Planification de Projet
Objectifs du Cours
 Comprendre l'importance de la planification dans la gestion de projet.
 Apprendre les étapes clés de la planification de projet.
 Explorer les outils et techniques de planification.
 Découvrir les bonnes pratiques pour élaborer un plan de projet solide.

1. Introduction à la Planification de Projet


1.1 Qu'est-ce que la Planification de Projet ?

La planification de projet est le processus qui consiste à définir les objectifs, à établir les
tâches nécessaires pour les atteindre, à estimer les ressources requises, et à élaborer un
calendrier de réalisation. Un bon plan de projet est essentiel pour garantir la réussite d'un
projet.

1.2 Importance de la Planification de Projet

 Clarté des Objectifs : La planification aide à clarifier les objectifs et à définir les
résultats attendus.
 Gestion des Ressources : Elle permet d'estimer et d'allouer les ressources de
manière efficace.
 Anticipation des Risques : La planification permet d'identifier et d'évaluer les risques
potentiels.
 Suivi et Contrôle : Un plan bien élaboré sert de référence pour le suivi de
l'avancement du projet.

2. Étapes de la Planification de Projet


2.1 Définition des Objectifs

 SMART : Les objectifs doivent être Spécifiques, Mesurables, Atteignables, Pertinents


et Temporels.
 Exemple : "Augmenter les ventes de 20 % d'ici la fin de l'année."

2.2 Identification des Parties Prenantes

 Identification : Recenser toutes les personnes ou groupes ayant un intérêt dans le


projet (clients, sponsors, équipes, etc.).
 Analyse des Parties Prenantes : Évaluer leur influence, leurs attentes et leur niveau
d'engagement.

2.3 Élaboration de la Charte de Projet


La charte de projet est un document formel qui autorise le projet et en décrit les principaux
éléments. Elle doit inclure :

 Objectifs du projet
 Portée du projet
 Parties prenantes clés
 Ressources initiales
 Risques identifiés

2.4 Définition de la Portée du Projet

 Établir la portée : Définir ce qui est inclus et ce qui est exclu du projet.
 Création d'un énoncé de portée : Document qui décrit en détail les livrables, les
fonctionnalités et les exigences du projet.

2.5 Décomposition du Projet en Tâches

 Structure de Répartition du Travail (WBS) : Décomposer le projet en tâches plus


petites et gérables.
 Exemple : Pour un projet de développement de logiciel, les tâches pourraient inclure
la collecte des exigences, la conception, le développement, les tests, etc.

2.6 Estimation des Durées et des Coûts

 Estimation des Durées : Utiliser des techniques telles que l'expertise, l'analogie, et
les estimations basées sur des données historiques pour évaluer la durée de chaque
tâche.
 Estimation des Coûts : Évaluer les coûts associés à chaque tâche, y compris les
ressources humaines, matérielles et autres dépenses.

2.7 Élaboration du Calendrier

 Diagrammes de Gantt : Utiliser des outils visuels pour représenter le calendrier des
tâches et les dépendances.
 Méthodes de planification :
o Méthode du chemin critique (CPM) : Identifier les tâches critiques qui
déterminent la durée totale du projet.
o Techniques de PERT (Program Evaluation and Review Technique) : Évaluer
les temps d'exécution pour des tâches qui peuvent avoir des incertitudes.

2.8 Allocation des Ressources

 Identification des Ressources : Déterminer les personnes, outils, et technologies


nécessaires pour chaque tâche.
 Plan de Ressources : Élaborer un plan pour gérer les ressources humaines et
matérielles tout au long du projet.
2.9 Gestion des Risques

 Identification des Risques : Recenser les risques potentiels qui pourraient affecter le
projet.
 Évaluation des Risques : Évaluer la probabilité et l'impact de chaque risque.
 Plans d'Atténuation : Développer des stratégies pour réduire ou éliminer les risques
identifiés.

2.10 Communication et Documentation

 Plan de Communication : Définir comment les informations seront partagées entre


les parties prenantes tout au long du projet.
 Documentation : Créer des documents pour garder une trace des décisions,
modifications et leçons apprises.

3. Outils de Planification de Projet


Voici quelques outils populaires qui peuvent faciliter la planification de projet :

 Microsoft Project : Outil de gestion de projet avec des fonctionnalités avancées de


planification.
 Trello : Outil basé sur le Kanban pour la gestion des tâches.
 Asana : Outil de collaboration pour suivre les tâches et projets.
 Smartsheet : Outil de gestion de projet basé sur des feuilles de calcul.
 GanttProject : Outil gratuit pour créer des diagrammes de Gantt.

4. Bonnes Pratiques de Planification


 Impliquer les Parties Prenantes : Impliquer les parties prenantes dès le début pour
s'assurer que leurs besoins sont pris en compte.
 Revue Régulière du Plan : Réviser le plan de projet régulièrement pour l'ajuster en
fonction des progrès et des changements.
 Documentation Complète : Assurer que toute la documentation est complète et
accessible pour référence future.
 Flexibilité : Être prêt à adapter le plan en réponse à des changements ou des défis
inattendus.

5. Conclusion
La planification de projet est une compétence cruciale pour la réussite d'un projet. En
suivant les étapes de planification, en utilisant les outils appropriés et en adoptant de
bonnes pratiques, vous pouvez créer un plan de projet solide qui facilite la réalisation des
objectifs.
Méthodologies de Gestion de Projet
Objectifs du Cours
 Comprendre l'importance de la gestion de projet.
 Découvrir les principales méthodologies de gestion de projet.
 Apprendre à choisir la méthodologie appropriée en fonction du projet.
 Explorer les bonnes pratiques et outils de gestion de projet.

1. Introduction à la Gestion de Projet


1.1 Qu'est-ce qu'un Projet ?

Un projet est un ensemble d'activités temporaires, visant à créer un produit, un service ou


un résultat unique. Les projets ont généralement un début et une fin définis, des objectifs
spécifiques et des ressources limitées.

1.2 Importance de la Gestion de Projet

 Atteinte des Objectifs : Aider à définir, planifier et atteindre les objectifs.


 Utilisation Optimale des Ressources : Maximiser l'efficacité des ressources (temps,
budget, personnel).
 Réduction des Risques : Identifier et gérer les risques potentiels dès le début.
 Amélioration de la Communication : Favoriser une communication claire entre les
parties prenantes.

2. Phases du Cycle de Vie d'un Projet


Le cycle de vie d'un projet est généralement divisé en plusieurs phases :

1. Initiation : Identification du projet et des parties prenantes, élaboration de la charte


de projet.
2. Planification : Élaboration du plan de projet, définition des objectifs, identification
des tâches et estimation des ressources.
3. Exécution : Mise en œuvre du plan de projet, gestion des équipes et communication.
4. Surveillance et Contrôle : Suivi de l'avancement du projet, gestion des modifications
et contrôle des risques.
5. Clôture : Finalisation du projet, évaluation des résultats et documentation des leçons
apprises.

3. Méthodologies de Gestion de Projet


Il existe plusieurs méthodologies de gestion de projet, chacune ayant ses propres
caractéristiques et domaines d'application. Voici les principales :
3.1 Méthodologie Traditionnelle (Waterfall)

 Description : Approche linéaire où chaque phase doit être complétée avant de passer
à la suivante.
 Avantages :
o Clarté et structure.
o Facilité de planification et de suivi.
 Inconvénients :
o Moins de flexibilité face aux changements.
o Peut être inadaptée pour les projets complexes ou incertains.

Exemple de Cycle Waterfall :

1. Analyse des exigences


2. Conception
3. Développement
4. Tests
5. Déploiement

3.2 Méthodologie Agile

 Description : Approche itérative et incrémentale qui privilégie la collaboration et


l'adaptabilité.
 Avantages :
o Flexibilité face aux changements.
o Amélioration continue grâce aux retours fréquents des parties prenantes.
 Inconvénients :
o Nécessite une communication constante.
o Peut être difficile à gérer sans une bonne expérience en gestion de projet.

Principes Agiles (Manifeste Agile) :

1. Prioriser la satisfaction du client.


2. Accueillir le changement.
3. Travailler ensemble en équipes auto-organisées.
4. Livrer des produits fonctionnels régulièrement.

3.3 Méthodologie Scrum

 Description : Une des méthodologies Agile, centrée sur le travail en sprints, des
cycles de développement courts (généralement de 2 à 4 semaines).
 Rôles Principaux :
o Product Owner : Définit la vision du produit et priorise le backlog.
o Scrum Master : Facilite le processus Scrum et aide l'équipe à surmonter les
obstacles.
o Équipe de Développement : Réalise le travail de développement.
 Événements Clés :
o Sprint Planning : Planification des tâches à réaliser pendant le sprint.
o Daily Scrum : Réunion quotidienne pour synchroniser les activités.
o Sprint Review : Évaluation des résultats du sprint avec les parties prenantes.
o Sprint Retrospective : Réflexion sur le sprint et identification des
améliorations.

3.4 Méthodologie Kanban

 Description : Une méthode visuelle pour gérer le travail en cours et optimiser le flux
de travail.
 Principes Clés :
o Visualiser le travail.
o Limiter le travail en cours (WIP).
o Gérer le flux.
o Amélioration continue.

Exemple d'un Tableau Kanban :

À Faire En Cours Terminé


Tâche 1 Tâche 3 Tâche 5
Tâche 2

3.5 Méthodologie Lean

 Description : Approche axée sur l'élimination des déchets et l'optimisation des


ressources.
 Principes Clés :
o Identifier la valeur.
o Cartographier la chaîne de valeur.
o Éliminer les déchets.
o Créer un flux continu.

4. Choisir la Bonne Méthodologie


4.1 Facteurs à Considérer

 Nature du Projet : Complexité, taille et exigences.


 Équipe : Compétences et expérience de l'équipe.
 Parties Prenantes : Attentes et besoins des clients et utilisateurs.
 Environnement : Flexibilité et adaptabilité nécessaires.

4.2 Adaptation et Hybridation

Il est courant de combiner différentes méthodologies pour s'adapter aux besoins spécifiques
d'un projet, par exemple, en intégrant des pratiques Agile dans une approche Waterfall.
5. Outils de Gestion de Projet
Il existe de nombreux outils pour aider à la gestion de projet. Voici quelques-uns des plus
populaires :

 Microsoft Project : Outil de planification et de gestion de projets.


 Trello : Outil de gestion de tâches basé sur Kanban.
 JIRA : Outil de suivi des problèmes et de gestion de projet Agile.
 Asana : Outil de gestion de projet et de tâches collaboratif.
 Smartsheet : Outil de gestion de projet basé sur des feuilles de calcul.

6. Bonnes Pratiques de Gestion de Projet


 Communication Claire : Maintenir une communication ouverte avec toutes les
parties prenantes.
 Suivi des Progrès : Utiliser des indicateurs de performance pour suivre l'avancement
du projet.
 Documentation : Garder une trace de toutes les décisions, modifications et leçons
apprises.
 Gestion des Risques : Identifier et évaluer les risques potentiels, élaborer des plans
d'atténuation.
 Feedback Régulier : Recueillir des retours d'information fréquents des parties
prenantes.

7. Conclusion
La gestion de projet est une compétence essentielle dans le monde professionnel moderne.
En comprenant les différentes méthodologies, en choisissant celle qui convient le mieux à
votre projet et en adoptant de bonnes pratiques, vous serez mieux préparé à mener à bien
vos projets et à atteindre vos objectifs.
Introduction à PL/SQL
Objectifs du Cours
 Comprendre la syntaxe de base de PL/SQL.
 Apprendre à écrire des blocs PL/SQL simples.
 Explorer les structures de contrôle (conditions, boucles).
 Comprendre les procédures et fonctions.
 Apprendre à gérer les exceptions.

1. Qu'est-ce que PL/SQL ?


PL/SQL (Procedural Language/Structured Query Language) est un langage de programmation
intégré dans Oracle Database. Il permet d'écrire des scripts, des procédures et des fonctions
qui interagissent avec les données stockées dans une base de données Oracle.

Avantages de PL/SQL

 Intégration avec SQL : Permet d'exécuter des instructions SQL directement dans le
code.
 Performance : Exécution des requêtes et traitement des données côté serveur,
réduisant la charge du réseau.
 Gestion des erreurs : Fournit des mécanismes pour gérer les exceptions.
 Modularité : Permet de créer des programmes modulaires grâce à des procédures et
fonctions.

2. Syntaxe de Base de PL/SQL


2.1 Structure d'un Bloc PL/SQL

Un bloc PL/SQL se compose de trois sections principales :

1. Section Déclaration : Déclare les variables.


2. Section Exécution : Contient les instructions à exécuter.
3. Section Exception : Gère les erreurs et exceptions.

Exemple de Bloc PL/SQL :

sql
Copier le code
DECLARE
v_message VARCHAR2(50);
BEGIN
v_message := 'Bonjour, PL/SQL!';
DBMS_OUTPUT.PUT_LINE(v_message);
EXCEPTION
WHEN OTHERS THEN
DBMS_OUTPUT.PUT_LINE('Erreur: ' || SQLERRM);
END;
/

3. Déclaration des Variables


Les variables sont déclarées dans la section de déclaration. Voici quelques types de données
courants :

 VARCHAR2 : Chaînes de caractères de longueur variable.


 NUMBER : Pour les nombres.
 DATE : Pour les dates.

Exemple :

sql
Copier le code
DECLARE
v_nom VARCHAR2(50);
v_age NUMBER;
v_date_naissance DATE;
END;

4. Structures de Contrôle
4.1 Conditions

PL/SQL utilise les instructions conditionnelles pour exécuter des blocs de code en fonction
de conditions.

Exemple d'une instruction IF :

sql
Copier le code
DECLARE
v_age NUMBER := 25;
BEGIN
IF v_age >= 18 THEN
DBMS_OUTPUT.PUT_LINE('Adulte');
ELSE
DBMS_OUTPUT.PUT_LINE('Mineur');
END IF;
END;
4.2 Boucles

Les boucles permettent de répéter un bloc de code.

Exemple d'une boucle WHILE :

sql
Copier le code
DECLARE
v_counter NUMBER := 1;
BEGIN
WHILE v_counter <= 5 LOOP
DBMS_OUTPUT.PUT_LINE('Compteur: ' || v_counter);
v_counter := v_counter + 1;
END LOOP;
END;

Exemple d'une boucle FOR :

sql
Copier le code
BEGIN
FOR i IN 1..5 LOOP
DBMS_OUTPUT.PUT_LINE('Compteur: ' || i);
END LOOP;
END;

5. Procédures et Fonctions
5.1 Procédures

Une procédure est un sous-programme qui exécute une action.

Exemple de Procédure :

sql
Copier le code
CREATE OR REPLACE PROCEDURE saluer(nom IN VARCHAR2) AS
BEGIN
DBMS_OUTPUT.PUT_LINE('Bonjour, ' || nom);
END saluer;
/

-- Appel de la procédure
BEGIN
saluer('Alice');
END;
/

5.2 Fonctions

Une fonction est un sous-programme qui renvoie une valeur.


Exemple de Fonction :

sql
Copier le code
CREATE OR REPLACE FUNCTION ajouter(a IN NUMBER, b IN NUMBER) RETURN NUMBER AS
BEGIN
RETURN a + b;
END ajouter;
/

-- Appel de la fonction
DECLARE
v_resultat NUMBER;
BEGIN
v_resultat := ajouter(5, 10);
DBMS_OUTPUT.PUT_LINE('Résultat: ' || v_resultat);
END;
/

6. Gestion des Exceptions


PL/SQL permet de gérer les erreurs grâce à des blocs d'exceptions.

Exemple de Gestion d'Exception :

sql
Copier le code
DECLARE
v_age NUMBER := 0;
BEGIN
DBMS_OUTPUT.PUT_LINE('Age: ' || (100 / v_age));
EXCEPTION
WHEN ZERO_DIVIDE THEN
DBMS_OUTPUT.PUT_LINE('Erreur : Division par zéro');
WHEN OTHERS THEN
DBMS_OUTPUT.PUT_LINE('Erreur : ' || SQLERRM);
END;
/

7. Utilisation de Curseurs
Les curseurs sont utilisés pour traiter plusieurs lignes de résultats. Il existe deux types de
curseurs : implicites et explicites.

7.1 Curseur Implicite

Utilisé par défaut lors de l'exécution d'une requête SQL qui retourne des résultats.

7.2 Curseur Explicite

Défini par l'utilisateur pour récupérer plusieurs lignes.


Exemple de Curseur Explicite :

sql
Copier le code
DECLARE
CURSOR c_employes IS
SELECT nom FROM employes;
v_nom [Link]%TYPE;
BEGIN
OPEN c_employes;
LOOP
FETCH c_employes INTO v_nom;
EXIT WHEN c_employes%NOTFOUND;
DBMS_OUTPUT.PUT_LINE('Employé: ' || v_nom);
END LOOP;
CLOSE c_employes;
END;
/

8. Exemples d'Applications de PL/SQL


 Automatisation des Tâches : Scripts pour effectuer des mises à jour périodiques.
 Gestion des Données : Traitement des données pour des rapports et des analyses.
 Validation des Données : Assurer l'intégrité des données lors des insertions et mises
à jour.
Concepts de Base des Bases de Données
Objectifs du Cours
 Comprendre ce qu'est une base de données et son importance.
 Connaître les différents types de bases de données.
 Apprendre le modèle relationnel et les concepts associés.
 Explorer les principales opérations sur les données.

1. Introduction aux Bases de Données


1.1 Qu'est-ce qu'une Base de Données ?

Une base de données est une collection organisée d'informations stockées


électroniquement. Elle permet de stocker, gérer et récupérer des données de manière
efficace. Les bases de données sont essentielles pour de nombreuses applications, allant des
systèmes de gestion des entreprises aux applications web.

1.2 Importance des Bases de Données

 Stockage Organisé : Les données sont stockées de manière structurée, ce qui facilite
leur accès.
 Gestion des Données : Les systèmes de gestion de bases de données (SGBD)
permettent de manipuler facilement les données.
 Intégrité des Données : Les bases de données assurent la précision et la cohérence
des données.
 Sécurité : Les SGBD offrent des mécanismes de contrôle d'accès pour protéger les
données sensibles.

2. Types de Bases de Données


2.1 Bases de Données Relationnelles

 Modèle Relationnel : Les données sont organisées en tables (relations) avec des
lignes (enregistrements) et des colonnes (attributs).
 Exemples : MySQL, PostgreSQL, Oracle Database.

2.2 Bases de Données Non Relationnelles (NoSQL)

 Modèle Non Relationnel : Les données ne sont pas nécessairement organisées en


tables.
 Types :
o Clé-Valeur : Stockage de paires clé-valeur (ex : Redis).
o Documents : Stockage de données sous forme de documents (ex : MongoDB).
o Graphes : Représentation de données sous forme de graphes (ex : Neo4j).
 Utilisation : Idéal pour des données non structurées ou semi-structurées.

3. Modèle Relationnel
3.1 Table

Une table est l'élément fondamental d'une base de données relationnelle, organisée en
lignes et en colonnes.

 Colonne : Un attribut de la table.


 Ligne : Un enregistrement individuel.

3.2 Clé Primaire

 Définition : Une colonne (ou un ensemble de colonnes) qui identifie de manière


unique chaque enregistrement dans une table.
 Exemple : Un identifiant unique (ID) pour chaque employé.

3.3 Clé Étrangère

 Définition : Une colonne dans une table qui crée un lien avec la clé primaire d'une
autre table.
 Utilité : Permet de maintenir l'intégrité référentielle entre les tables.

4. Modèle de Données
4.1 Schéma de Base de Données

Un schéma de base de données définit la structure logique d'une base de données, y


compris les tables, les colonnes et les relations entre les tables.

4.2 Types de Modèles de Données

 Modèle Conceptuel : Représente les concepts de données et leurs relations.


 Modèle Logique : Représente les données de manière abstraite sans se soucier de la
façon dont elles seront physiquement stockées.
 Modèle Physique : Détails sur la manière dont les données seront stockées
physiquement.

5. Langage SQL
5.1 Introduction à SQL

SQL (Structured Query Language) est le langage standard pour interagir avec les bases de
données relationnelles. Il permet de créer, modifier et interroger des bases de données.
5.2 Commandes SQL de Base

 CREATE : Créer une nouvelle table.


 INSERT : Ajouter des données dans une table.
 SELECT : Interroger des données à partir d'une table.
 UPDATE : Mettre à jour des données existantes.
 DELETE : Supprimer des données d'une table.

6. Intégrité des Données


6.1 Types d'Intégrité

 Intégrité de Domaine : Les valeurs dans une colonne doivent respecter des règles
prédéfinies (ex : types de données).
 Intégrité Référentielle : Les relations entre les tables doivent être respectées (ex :
aucune valeur de clé étrangère ne doit être présente si elle ne correspond pas à une
valeur de clé primaire).

7. Transactions
7.1 Qu'est-ce qu'une Transaction ?

Une transaction est un ensemble d'opérations qui sont exécutées comme une seule unité. Si
l'une des opérations échoue, toutes les opérations sont annulées.

7.2 Propriétés ACID

 Atomicité : Une transaction est "tout ou rien".


 Cohérence : La transaction doit amener la base de données d'un état valide à un
autre état valide.
 Isolation : Les transactions concurrentes ne doivent pas interférer.
 Durabilité : Une fois qu'une transaction est validée, les changements sont
permanents.

8. Exemples d'Applications de Bases de Données


 Applications Web : Gestion des utilisateurs, des produits, des commandes.
 Systèmes de Gestion d'Entreprise : Gestion des ressources humaines, de la
comptabilité, de la chaîne d'approvisionnement.
 Applications Mobiles : Stockage des données utilisateur, historique des transactions.
Introduction à SQL et aux Bases de Données
Relationnelles
Objectifs du Cours
 Comprendre le modèle relationnel des bases de données.
 Apprendre à écrire des requêtes SQL de base.
 Savoir manipuler les données dans une base de données.

1. Introduction aux Bases de Données Relationnelles


1.1 Qu'est-ce qu'une Base de Données ?

Une base de données est une collection organisée d'informations qui peuvent être
facilement accessibles, gérées et mises à jour. Les bases de données relationnelles
organisent les données en tables.

1.2 Modèle Relationnel

Dans une base de données relationnelle :

 Table : Ensemble de données organisées en lignes (enregistrements) et colonnes


(champs).
 Clé Primaire : Une colonne qui identifie de manière unique chaque enregistrement
dans une table.
 Clé Étrangère : Une colonne qui crée un lien entre deux tables.

2. Syntaxe SQL de Base


2.1 Les Types de Commandes SQL

1. DDL (Data Definition Language) : Pour définir la structure des bases de données.
o CREATE, ALTER, DROP
2. DML (Data Manipulation Language) : Pour manipuler les données.
o SELECT, INSERT, UPDATE, DELETE
3. DCL (Data Control Language) : Pour contrôler l'accès aux données.
o GRANT, REVOKE
4. TCL (Transaction Control Language) : Pour gérer les transactions.
o COMMIT, ROLLBACK, SAVEPOINT
3. Commandes DDL : Création de Tables
3.1 Création d'une Table

sql
Copier le code
CREATE TABLE Employes (
ID INT PRIMARY KEY,
Nom VARCHAR(50),
Prenom VARCHAR(50),
Age INT,
Salaire DECIMAL(10, 2)
);

3.2 Modification d'une Table


sql
Copier le code
ALTER TABLE Employes
ADD Email VARCHAR(100);

3.3 Suppression d'une Table

sql
Copier le code
DROP TABLE Employes;

4. Commandes DML : Manipulation des Données


4.1 Insérer des Données

sql
Copier le code
INSERT INTO Employes (ID, Nom, Prenom, Age, Salaire)
VALUES (1, 'Dupont', 'Jean', 30, 35000.00);

4.2 Sélectionner des Données

sql
Copier le code
SELECT * FROM Employes;

4.3 Filtrer des Données

sql
Copier le code
SELECT * FROM Employes
WHERE Age > 25;
4.4 Mettre à Jour des Données

sql
Copier le code
UPDATE Employes
SET Salaire = 36000.00
WHERE ID = 1;

4.5 Supprimer des Données

sql
Copier le code
DELETE FROM Employes
WHERE ID = 1;

5. Requêtes Avancées
5.1 Utiliser des Fonctions Agrégées

sql
Copier le code
SELECT AVG(Salaire) AS SalaireMoyen FROM Employes;

5.2 Groupement de Données

sql
Copier le code
SELECT Age, COUNT(*) AS NombreEmployes
FROM Employes
GROUP BY Age;

5.3 Tri des Résultats

sql
Copier le code
SELECT * FROM Employes
ORDER BY Salaire DESC;

6. Jointures
6.1 Qu'est-ce qu'une Jointure ?

Une jointure combine des lignes de deux ou plusieurs tables en fonction d'une condition
commune.

6.2 Jointure Interne (INNER JOIN)

sql
Copier le code
SELECT [Link], [Link] AS NomDepartement
FROM Employes
INNER JOIN Departements ON [Link] = [Link];

6.3 Jointure Externe (LEFT JOIN)

sql
Copier le code
SELECT [Link], [Link] AS NomDepartement
FROM Employes
LEFT JOIN Departements ON [Link] = [Link];

7. Gestion des Transactions


7.1 Commencer une Transaction

sql
Copier le code
BEGIN;

INSERT INTO Employes (ID, Nom, Prenom, Age, Salaire)


VALUES (2, 'Martin', 'Luc', 28, 40000.00);

COMMIT; -- Valider la transaction

7.2 Annuler une Transaction

sql
Copier le code
ROLLBACK; -- Annuler toutes les modifications effectuées depuis le début de la transaction

8. Bonnes Pratiques
 Nommer des Tables et des Colonnes de Manière Claire : Utilisez des noms explicites
pour faciliter la compréhension.
 Utiliser des Index : Améliorez les performances des requêtes en créant des index sur
les colonnes fréquemment utilisées dans les filtres.
 Éviter les Requêtes N+1 : Utilisez des jointures pour récupérer des données associées
plutôt que d'effectuer plusieurs requêtes.
 Documenter vos Requêtes : Ajoutez des commentaires dans votre code pour clarifier
les intentions derrière les requêtes complexes.
Cours de Statistiques de Base
Objectifs du Cours
 Comprendre les concepts fondamentaux des statistiques.
 Apprendre à analyser et à interpréter des données.
 Être capable d'appliquer des techniques statistiques de base.

1. Introduction aux Statistiques


1.1 Qu'est-ce que les Statistiques ?

Les statistiques sont des méthodes utilisées pour collecter, analyser, interpréter et présenter
des données. Elles permettent de prendre des décisions éclairées basées sur des données.

1.2 Types de Statistiques

 Statistiques Descriptives : Résument et décrivent les caractéristiques des données.


 Statistiques Inférentielles : Permettent de faire des généralisations sur une
population à partir d'un échantillon.

2. Types de Données
2.1 Données Qualitatives

 Nominales : Catégories sans ordre (ex. : couleur des yeux, types de fruits).
 Ordinales : Catégories avec un ordre (ex. : niveaux de satisfaction).

2.2 Données Quantitatives

 Discrètes : Valeurs distinctes (ex. : nombre d'enfants).


 Continues : Valeurs sur une échelle continue (ex. : taille, poids).

3. Mesures de Tendance Centrale


3.1 Moyenne

La moyenne est la somme de toutes les valeurs divisée par le nombre de valeurs.

Formule :
Moyenne=∑XN\text{Moyenne} = \frac{\sum X}{N}Moyenne=N∑X
où XXX est chaque valeur et NNN est le nombre total de valeurs.
3.2 Médiane

La médiane est la valeur centrale lorsque les données sont classées par ordre croissant.

 Si NNN est impair, la médiane est la valeur au milieu.


 Si NNN est pair, la médiane est la moyenne des deux valeurs centrales.

3.3 Mode

Le mode est la valeur qui apparaît le plus fréquemment dans un ensemble de données.

4. Mesures de Dispersion
4.1 Étendue

L'étendue est la différence entre la valeur maximale et la valeur minimale.

Formule :
Eˊtendue=Xmax−Xmin\text{Étendue} = X_{\text{max}} - X_{\text{min}}Eˊtendue=Xmax−Xmin

4.2 Variance

La variance mesure la dispersion des données par rapport à la moyenne.

Formule :
Variance=∑(X−Moyenne)2N\text{Variance} = \frac{\sum (X -
\text{Moyenne})^2}{N}Variance=N∑(X−Moyenne)2

4.3 Écart-Type

L'écart-type est la racine carrée de la variance et fournit une mesure de dispersion dans les
mêmes unités que les données.

Formule :
Eˊcart-Type=Variance\text{Écart-Type} = \sqrt{\text{Variance}}Eˊcart-Type=Variance

5. Représentation Graphique des Données


5.1 Histogrammes

Les histogrammes montrent la distribution des données en utilisant des barres pour
représenter la fréquence des valeurs.
5.2 Diagrammes en Boîte

Les diagrammes en boîte (ou boxplots) montrent la médiane, les quartiles et les valeurs
aberrantes d'un ensemble de données.

5.3 Graphiques à Barres et à Secteurs

 Graphiques à Barres : Utilisés pour des données qualitatives.


 Graphiques à Secteurs : Illustrent la proportion de chaque catégorie par rapport à un
tout.

6. Introduction aux Probabilités


6.1 Qu'est-ce que la Probabilité ?

La probabilité est la mesure de la chance qu'un événement se produise. Elle varie entre 0
(impossible) et 1 (certain).

6.2 Règles de Probabilité

 Règle de l'Addition : La probabilité que l'un ou l'autre d'événements se produise est


la somme de leurs probabilités.
 Règle de la Multiplication : La probabilité que deux événements indépendants se
produisent est le produit de leurs probabilités.

7. Conclusions
Les statistiques sont un outil puissant pour analyser et interpréter les données. Une bonne
compréhension des concepts de base, tels que les mesures de tendance centrale, les
mesures de dispersion, et la représentation graphique, est essentielle pour prendre des
décisions basées sur des données.

Vous aimerez peut-être aussi