SlideShare une entreprise Scribd logo
1  sur  35
Télécharger pour lire hors ligne
Click to edit Master title style
1
Exposé Du Groupe 7
Base de Donnée Relationnelle Objet
BDRO
Membres :
❖ ASSOU Ekoué Achille
❖ DWEGGAH
❖ NADJIRE Yendoukoa
❖ DAVISSÉ
Click to edit Master title style
2
SOMMAIRE
❑ Introduction
❑ Base de Donnée Relationnelle:
• Avantages
• Inconvénients
• Exemples
❑ Base de Donée Objet
❑ Base de Donnée Relationnel Objet
❑ Conclusion
2
Click to edit Master title style
3
Introduction
Les bases de données sont la solution pour le
stockage des données générées et manipulées
par les application. Le model le plus utilisé a très
longtemps été le modèle relationnelle mais ce
modèle montre des limites quant à la
manipulation de certains types de données
appelé objet.
3
Click to edit Master title style
4
Base de Donnée Relationnelle 01 / 08
Les BDR (Bases de Données Relationnelles) sont des
outils informatiques qui permettent de stocker et
d'organiser des données de manière structurée.
Elles sont utilisées dans de nombreux domaines, tels que
la finance, la santé, l'éducation, etc.
Cependant, comme tout outil, les BDR ont leurs avantages
et inconvénients.
4
Click to edit Master title style
5
5
Base de Donnée Relationnelle 02 / 08
Avantages :
Structure organisée :
Les BDR utilisent un modèle de données structuré avec des tables, des colonnes et
des relations, ce qui permet une organisation claire des données.
Exemple :
Dans une base de données relationnelle pour un système de gestion d'une
bibliothèque, vous pouvez avoir une table "Livres" avec des colonnes telles que "ID
Livre", "Titre", "Auteur", "ISBN", et une table "Emprunts" avec des colonnes telles que
"ID Emprunt", "ID Livre", "ID Utilisateur", "Date d'emprunt". Cette structure organisée
facilite la gestion et la recherche des livres empruntés par les utilisateurs.
Click to edit Master title style
6
6
Base de Donnée Relationnelle 03 / 08
Avantages :
Intégrité des données :
Les BDR appliquent des contraintes d'intégrité pour garantir la
cohérence et la qualité des données.
Exemple :
Dans une base de données relationnelle pour un système de
réservation d'hôtels, vous pouvez avoir une contrainte d'intégrité qui
assure qu'une réservation ne peut être associée qu'à des chambres
existantes dans la table "Chambres", grâce à une clé étrangère reliant
les tables "Réservations" et "Chambres". Ainsi, seules les réservations
liées à des chambres valides seront autorisées.
Click to edit Master title style
7
7
Base de Donnée Relationnelle 04 / 08
Avantages :
Requêtes flexibles :
Les BDR offrent un langage de requête puissant, tel que SQL, permettant d'effectuer
des requêtes complexes et de récupérer des données efficacement.
Exemple :
Dans une base de données relationnelle pour une application de vente en ligne, vous
pouvez utiliser des requêtes SQL pour récupérer tous les produits d'une catégorie
spécifique avec un certain prix et une disponibilité suffisante. Par exemple : SELECT *
FROM Produits WHERE Catégorie = 'Vêtements' AND Prix > 50 AND Stock > 0.
Click to edit Master title style
8
8
Base de Donnée Relationnelle 05 / 08
Avantages :
Sécurité des données :
Les BDR offrent des mécanismes de sécurité robustes, tels que l'authentification,
l'autorisation et le contrôle d'accès, pour protéger les données contre les accès non
autorisés.
Exemple :
Une base de données relationnelle utilisée par une institution financière peut mettre
en œuvre des politiques de sécurité strictes, notamment l'identification et
l'authentification des utilisateurs, ainsi que des niveaux d'autorisation granulaires pour
accéder aux différentes tables et colonnes. Cela garantit que seuls
les utilisateurs autorisés peuvent accéder aux données sensibles.
Click to edit Master title style
9
9
Base de Donnée Relationnelle 06 / 08
Inconvénients :
Difficulté avec des données complexes :
Les BDR peuvent être moins adaptées au stockage de données complexes ou non
structurées, nécessitant souvent des transformations et des jointures
supplémentaires.
Exemple :
Si vous devez stocker des données semi-structurées telles que des documents JSON
(JavaScript Object Notation) avec des structures variées, une base de données
relationnelle peut nécessiter des manipulations supplémentaires pour extraire et
organiser les données dans des tables relationnelles.
Click to edit Master title style
10
10
Base de Donnée Relationnelle 07 / 08
Inconvénients :
Performance avec des opérations massivement parallèles :
Les BDR traditionnelles peuvent rencontrer des limites de performance lors de
l'exécution d'opérations massivement parallèles sur de grands ensembles de
données.
Exemple :
Lors du traitement simultané de milliers de requêtes d'accès à la base de données
dans une application web à fort trafic, les performances peuvent diminuer si la BDR
n'est pas optimisée pour gérer de telles charges de travail élevées.
Click to edit Master title style
11
11
Base de Donnée Relationnelle 08 / 08
Inconvénients :
Surcharge d'administration :
Les BDR peuvent nécessiter une administration et une maintenance plus complexes,
notamment en ce qui concerne l'optimisation des requêtes, l'indexation et les
sauvegardes.
Exemple :
L'administration d'une base de données relationnelle peut impliquer la surveillance
des performances, l'optimisation des requêtes, la gestion des index pour améliorer
l'efficacité des opérations de recherche, ainsi que la planification et l'exécution de
sauvegardes régulières pour garantir la disponibilité et la sécurité des données.
Click to edit Master title style
12
12
BASE DE DONNEES OBJET 01 / 08
❑ Les model de données à objet ont été créés pour modéliser les entité du monde réel,
avec un état et des comportement (comprenez par-là les attributs et les méthodes)
❑ Tout entité du monde réel est un objet et un objet fait forcément référence à une
entité du monde réel
❑ Le model objet fut créer pour supporter les objets manipulés en Programmation
orientée Objet
Click to edit Master title style
13
13
BASE DE DONNEES OBJET 02 / 08
❑ Objet : un objet fait référence à une entité importante devant être modéliser dans la base de données.
Il doit avoir un état (la valeur de ses attribut) et un comportement (ses méthodes). Il comporte aussi
une identité qui permet de l’identifier
❑ Classe : c’est le modèle à parti duquel est créé un objet
❑ Objet complexe : un objet qui est composé de plusieurs autres objets
❑ Identité de l’objet (OID) : c’est un identifiant de l’objet qui ne peux pas être changé. Dès sa création
le SGBD affecte à chaque objet un identifiant qui est invariant et reste le même durant toute sa durée
de vie. Les attributs d’un objet peuvent changer mais pas sont OID. L’OID ne dépend pas de la valeur
des propriétés de l’objet, elle est unique et est utile dans la création d’objets complexes. La référence
d’un objet dans les attributs d’un autre objet est un pointeur pour éviter les jointures.
Concepts fondamentaux de l’orienté objet
Click to edit Master title style
14
14
BASE DE DONNEES OBJET 03 / 08
❑ Encapsulation des Opération : l’encapsulation consiste à recueillir des données et méthodes au sein
d’une structure avec une interface afin de cacher l’implémentation de l’objet. L’encapsulation
garantit l’intégrité des données de l’objet. Ainsi l’implémentation d’une classe peut changer sans
affecter l’interface que la classe fournie au reste de l’application.
❑ Extensibilité : grâce à l’encapsulation les base de données objet sont extensibles car elle peuvent
évoluer par le comportement l’héritage
❑ Méthode : c’est un comportement de l’objet, une fonction faisant parti d’une classe. Elle permet de
faire des traitements sur des données.
❑ Hiérarchie et héritage : c’est le même principe qu’en POO. Les objets hérités sont reliés par la
relation « est un »
Concepts fondamentaux de l’orienté objet
Click to edit Master title style
15
15
BASE DE DONNEES OBJET 04 / 08
❑ Héritage multiple : c’est lorsqu’un objet hérite de plusieurs classes.
❑ Polymorphisme : capacité qu’un objet a de réagir différemment au même message
❑ Redéfinition : c’est le fait de donner une nouvelle implémentation dans une sous-classe à une
méthode présent dans la super-classe
❑ Surcharge : Possibilité de définir plusieurs codes pour une même opération, le code approprié étant
sélectionné selon le type de paramètres fourni lors de l’appel de la méthode
Concepts fondamentaux de l’orienté objet
Click to edit Master title style
16
16
BASE DE DONNEES OBJET 05 / 08
❑ Collection : c’est un regroupement d’un nombre variable d’élément (éventuellement zéro) organisé
selon une structure particulière. On en a plusieurs : set, bag, List, array
❑ Classe paramétrée : ce sont des classes possédant un ou plusieurs paramètres (Par exemple un texte)
c’est une application à la notion d’agrégation entre classe.
❑ Agrégation : c’est une association entre deux classes exprimant que les objets de la classe cible sont
des composant de ceux de la classe source.
Concepts fondamentaux de l’orienté objet
Click to edit Master title style
17
17
BASE DE DONNEES OBJET 06 / 08
❑ Les bases de données objets prennent tous leurs sens lorsqu’il s’agit de modéliser
des données très riches et complexe avec de nombreuses variations : documents
multimédia, données géographiques, conceptions par ordinateur…
❑ Les bases de données objet se basent sur les mêmes concepts fondamentaux que
l’approche orientée objet. Ils font la particularité des bases de données objets par
rapport aux autres types de base de données.
Les base de données objets
Click to edit Master title style
18
18
BASE DE DONNEES OBJET 07 / 08
❑ Un SGBDO est un SGBD qui prend en charge la création des données comme objet et relations de
manière persistante
❑ La persistance : le stockage en permanence des valeurs des propriétés d’un objet est appelé la
persistance de l’objet
❑ La persistance renvoie à la capacité des objets à rester après l’arrêt du processus qui les a créés
❑ Les SGBDO ont été créés pour gérer des structures de données complexe, en profitant de la
puissance de modélisation des modèles objet et de la puissance de stockage des bases de données
Système de gestion de base données orienté objet
Click to edit Master title style
19
19
BASE DE DONNEES OBJET 08 / 08
❑ Offrir aux langages de POO une modalité de stockage permanente et de partage entre plusieurs
utilisateurs
❑ Offrir aux BD des types de données complexes et extensibles
❑ Permettre la représentation des structures complexes et/ou de taille variable (données
volumineuses)
❑ Fournir un ensemble de fonctionnalités OO (Support d’objet atomique et complexe, identités
d’objet, héritage simple et le polymorphisme).
Ce type de base de données a pour objectif :
Click to edit Master title style
20
20
Base de Donnée Relationnel Objet 01 / 19
PostgreSQL est un système de gestion de base de données relationnel-objet open-
source et puissant.
Une base de données relationnel-objet combine les concepts des bases de données
relationnelles et orientées objet pour permettre la modélisation et la gestion de
données complexes.
Il offre une grande variété de fonctionnalités avancées, notamment la gestion des
objets, les fonctions stockées, les index complexes et la réplication.
Click to edit Master title style
21
21
Base de Donnée Relationnel Objet 02 / 19
❑ - Une base de données relationnel-objet utilise des tables relationnelles pour stocker les
données de base, tout comme une base de données relationnelle classique.
❑ - Cependant, elle permet également de définir des types de données complexes, appelés
types objet, qui peuvent contenir des attributs et des méthodes. Cependant postgresql ne
permet pas de créer d’objet qui contiennent de méthodes ; néanmoins on peut créer de
fonction qui les manipulent.
Fonctionnement d'une base de données relationnel-objet :
Click to edit Master title style
22
22
Base de Donnée Relationnel Objet 03 / 19
❑ Modélisation précise : Les bases de données relationnel-objet permettent une modélisation plus
précise et naturelle des données complexes, en représentant les entités du monde réel avec leurs
attributs et comportements spécifiques.
❑ Gestion des relations : Elles facilitent la gestion des relations complexes entre les objets, en
permettant la création de relations et de jointures entre les tables relationnelles et les types objets.
❑ Réutilisation du code : Les méthodes associées aux types objets peuvent être réutilisées dans
différentes parties de l'application, ce qui favorise la modularité et la facilité de maintenance.
❑ Flexibilité : Les bases de données relationnel-objet offrent une plus grande flexibilité pour représenter
des attributs non tabulaires, tels que les tableaux, les structures imbriquées, etc.
Avantages des bases de données relationnel-objet :
Click to edit Master title style
23
23
Base de Donnée Relationnel Objet 04 / 19
Dans PostgreSQL, un schéma est un conteneur logique qui
regroupe des objets de base de données tels que des tables, des
vues, des fonctions, des types d'objets personnalisés, des
séquences, etc. Les schémas offrent une organisation
structurée des objets et permettent une isolation et une gestion
plus fines des différentes entités d'une base de données.
La notion de Schéma :
Click to edit Master title style
24
24
Base de Donnée Relationnel Objet 05 / 19
Quelques Types de Schéma en PostgreSQL :
❑ Schéma par défaut ou public
❑ Schéma avec propriétaire spécifié
❑ Schéma temporaire
❑ Schéma avec commentaires
❑ Schéma avec autorisations spécifiques
Click to edit Master title style
25
25
Base de Donnée Relationnel Objet 10 / 19
Création d’une table dans un schéma :
Click to edit Master title style
26
26
Base de Donnée Relationnel Objet 11 / 19
Les objets en PostgreSQL sont des types définit par l’administrateur de la
base de données. Les types définit peuvent être des énumérations ou contenir
d’autre attributs (objets). Dans notre cas ici, nous allons utiliser les type
contenant des attributs.
Pour définir des objets, on utilise la syntaxe suivante :
Définition des types :
Click to edit Master title style
27
27
Base de Donnée Relationnel Objet 12 / 19
Il est également possible de définir des types appartenant à un
schéma.
La syntaxe est la suivante :
Définition des types :
Click to edit Master title style
28
28
Base de Donnée Relationnel Objet 14 / 19
Ces tables sont similaires aux autres sauf qu’ils contiennent des
objets. Pour définir un attribut de type objet, on suit les mêmes
principes que les types primitifs en spécifiant le type de
l’instance d’objet juste après son nom.
Syntaxe :
Création d’une table d’objet :
Click to edit Master title style
29
29
Base de Donnée Relationnel Objet 15 / 19
On peut être amener à manipuler des objet complexe ou faire
des actions répétitives sur ces derniers. Pour se simplifier la
tâche, on peut définir des fonctions pour effectuer ces actions.
Syntaxe :
Création des fonctions pour la manipulation de objets :
Click to edit Master title style
30
30
Base de Donnée Relationnel Objet 16 / 19
Insertion de données dans la table :
Click to edit Master title style
31
31
Base de Donnée Relationnel Objet 17 / 19
Récupération de données :
Click to edit Master title style
32
32
Base de Donnée Relationnel Objet 18 /20
Modification d’un objet :
Modification d’un objet :
Par contre postgresql ne permet pas de modifier un
attribut d’un type complexe.
NB: Type complexe et nom un attribut de type complexe
Click to edit Master title style
33
33
Base de Donnée Relationnel Objet 19 / 20
Suppression d’attribut de type complexe :
Suppression d’un type complexe :
DROP TYPE nom_type
Pour supprimer un type complexe, il faut d’abord supprimer toutes les
fonctions, tables, vues…… qui l’utilse.
Click to edit Master title style
34
Les limites des BDRO 20/20
34
❑ Performances: les BDRO présentent une mauvaise performance lorsqu’il y a
des requetés complexes ou lorsqu’on dois manipuler de jointures entre les
tables. Pour ce faire on peut utiliser des schémas, des index, et les vue
❑ Interopérabilité : certains systèmes ne prennent pas en charge les
fonctionnalités relationnel-objet. Cela peut rendre difficile l’intégration avec
des technologies tierce ou l’échange avec d’autres systèmes. Pour ce faire on
peut utiliser des formats de données standardisées comme JSON, XML …
❑ Complexité : Elles sont plus complexes que les bases de données
traditionnelles car il faut manipuler à la fois les types objets, les relations et les
requêtes, ce qui nécessite des connaissances supplémentaires.
Click to edit Master title style
35
“Merci Pour Votre Attention !
Vos Questions et Apports seront les
Bienvenues.
35

Contenu connexe

Similaire à BDRO.pdf

Diaporamas-Bases de données.pdf
Diaporamas-Bases de données.pdfDiaporamas-Bases de données.pdf
Diaporamas-Bases de données.pdfEST-UMI de Meknès
 
La persistance des données : ORM et hibernate
La persistance des données : ORM et hibernateLa persistance des données : ORM et hibernate
La persistance des données : ORM et hibernateYouness Boukouchi
 
SGBDR vs NoSQL, Différences et Uses Cases. Focus sur ArangoDB
SGBDR vs NoSQL, Différences et Uses Cases. Focus sur ArangoDBSGBDR vs NoSQL, Différences et Uses Cases. Focus sur ArangoDB
SGBDR vs NoSQL, Différences et Uses Cases. Focus sur ArangoDBRomain Cambien
 
base de données -note de cours
base de données -note de cours base de données -note de cours
base de données -note de cours Yassine Badri
 
cours06-nosql.pdf
cours06-nosql.pdfcours06-nosql.pdf
cours06-nosql.pdfhbadir
 
Mappingobjetrelationnel[1]
Mappingobjetrelationnel[1]Mappingobjetrelationnel[1]
Mappingobjetrelationnel[1]linasafaa
 
Base de donnees Avancees et Intro à NoSQL.ppt
Base de donnees Avancees et Intro à  NoSQL.pptBase de donnees Avancees et Intro à  NoSQL.ppt
Base de donnees Avancees et Intro à NoSQL.pptIdriss22
 
Bd relationnelles
Bd relationnellesBd relationnelles
Bd relationnellesmakram05
 
11 visual basic .net - acces aux donnees avec ado .net
11 visual basic .net - acces aux donnees avec ado .net11 visual basic .net - acces aux donnees avec ado .net
11 visual basic .net - acces aux donnees avec ado .netHamza SAID
 
Database/ Bases de données
Database/ Bases de donnéesDatabase/ Bases de données
Database/ Bases de donnéeszied kallel
 
Emna borgi mabroukachraita-datawarehouse
Emna borgi mabroukachraita-datawarehouseEmna borgi mabroukachraita-datawarehouse
Emna borgi mabroukachraita-datawarehouseEmna Borgi
 
Dwh udl 2014_2015_v0.22 - student
Dwh udl 2014_2015_v0.22 - studentDwh udl 2014_2015_v0.22 - student
Dwh udl 2014_2015_v0.22 - studentCarlos Sanin
 
BigData_Chp4: NOSQL
BigData_Chp4: NOSQLBigData_Chp4: NOSQL
BigData_Chp4: NOSQLLilia Sfaxi
 
Language C++ Ch01
Language C++ Ch01 Language C++ Ch01
Language C++ Ch01 yarsenv47
 
Base de données graphe, Noe4j concepts et mise en oeuvre
Base de données graphe, Noe4j concepts et mise en oeuvreBase de données graphe, Noe4j concepts et mise en oeuvre
Base de données graphe, Noe4j concepts et mise en oeuvreMICHRAFY MUSTAFA
 

Similaire à BDRO.pdf (20)

Diaporamas-Bases de données.pdf
Diaporamas-Bases de données.pdfDiaporamas-Bases de données.pdf
Diaporamas-Bases de données.pdf
 
La persistance des données : ORM et hibernate
La persistance des données : ORM et hibernateLa persistance des données : ORM et hibernate
La persistance des données : ORM et hibernate
 
SGBDR vs NoSQL, Différences et Uses Cases. Focus sur ArangoDB
SGBDR vs NoSQL, Différences et Uses Cases. Focus sur ArangoDBSGBDR vs NoSQL, Différences et Uses Cases. Focus sur ArangoDB
SGBDR vs NoSQL, Différences et Uses Cases. Focus sur ArangoDB
 
Si bdd
Si bddSi bdd
Si bdd
 
sgbd
sgbdsgbd
sgbd
 
Chapitre1.pdf
Chapitre1.pdfChapitre1.pdf
Chapitre1.pdf
 
base de données -note de cours
base de données -note de cours base de données -note de cours
base de données -note de cours
 
cours06-nosql.pdf
cours06-nosql.pdfcours06-nosql.pdf
cours06-nosql.pdf
 
Mappingobjetrelationnel[1]
Mappingobjetrelationnel[1]Mappingobjetrelationnel[1]
Mappingobjetrelationnel[1]
 
Base de donnees Avancees et Intro à NoSQL.ppt
Base de donnees Avancees et Intro à  NoSQL.pptBase de donnees Avancees et Intro à  NoSQL.ppt
Base de donnees Avancees et Intro à NoSQL.ppt
 
Bd relationnelles
Bd relationnellesBd relationnelles
Bd relationnelles
 
11 visual basic .net - acces aux donnees avec ado .net
11 visual basic .net - acces aux donnees avec ado .net11 visual basic .net - acces aux donnees avec ado .net
11 visual basic .net - acces aux donnees avec ado .net
 
Database/ Bases de données
Database/ Bases de donnéesDatabase/ Bases de données
Database/ Bases de données
 
Emna borgi mabroukachraita-datawarehouse
Emna borgi mabroukachraita-datawarehouseEmna borgi mabroukachraita-datawarehouse
Emna borgi mabroukachraita-datawarehouse
 
Dwh udl 2014_2015_v0.22 - student
Dwh udl 2014_2015_v0.22 - studentDwh udl 2014_2015_v0.22 - student
Dwh udl 2014_2015_v0.22 - student
 
Cours1 2 gdmm
Cours1 2 gdmmCours1 2 gdmm
Cours1 2 gdmm
 
BigData_Chp4: NOSQL
BigData_Chp4: NOSQLBigData_Chp4: NOSQL
BigData_Chp4: NOSQL
 
Language C++ Ch01
Language C++ Ch01 Language C++ Ch01
Language C++ Ch01
 
Neo4j
Neo4jNeo4j
Neo4j
 
Base de données graphe, Noe4j concepts et mise en oeuvre
Base de données graphe, Noe4j concepts et mise en oeuvreBase de données graphe, Noe4j concepts et mise en oeuvre
Base de données graphe, Noe4j concepts et mise en oeuvre
 

BDRO.pdf

  • 1. Click to edit Master title style 1 Exposé Du Groupe 7 Base de Donnée Relationnelle Objet BDRO Membres : ❖ ASSOU Ekoué Achille ❖ DWEGGAH ❖ NADJIRE Yendoukoa ❖ DAVISSÉ
  • 2. Click to edit Master title style 2 SOMMAIRE ❑ Introduction ❑ Base de Donnée Relationnelle: • Avantages • Inconvénients • Exemples ❑ Base de Donée Objet ❑ Base de Donnée Relationnel Objet ❑ Conclusion 2
  • 3. Click to edit Master title style 3 Introduction Les bases de données sont la solution pour le stockage des données générées et manipulées par les application. Le model le plus utilisé a très longtemps été le modèle relationnelle mais ce modèle montre des limites quant à la manipulation de certains types de données appelé objet. 3
  • 4. Click to edit Master title style 4 Base de Donnée Relationnelle 01 / 08 Les BDR (Bases de Données Relationnelles) sont des outils informatiques qui permettent de stocker et d'organiser des données de manière structurée. Elles sont utilisées dans de nombreux domaines, tels que la finance, la santé, l'éducation, etc. Cependant, comme tout outil, les BDR ont leurs avantages et inconvénients. 4
  • 5. Click to edit Master title style 5 5 Base de Donnée Relationnelle 02 / 08 Avantages : Structure organisée : Les BDR utilisent un modèle de données structuré avec des tables, des colonnes et des relations, ce qui permet une organisation claire des données. Exemple : Dans une base de données relationnelle pour un système de gestion d'une bibliothèque, vous pouvez avoir une table "Livres" avec des colonnes telles que "ID Livre", "Titre", "Auteur", "ISBN", et une table "Emprunts" avec des colonnes telles que "ID Emprunt", "ID Livre", "ID Utilisateur", "Date d'emprunt". Cette structure organisée facilite la gestion et la recherche des livres empruntés par les utilisateurs.
  • 6. Click to edit Master title style 6 6 Base de Donnée Relationnelle 03 / 08 Avantages : Intégrité des données : Les BDR appliquent des contraintes d'intégrité pour garantir la cohérence et la qualité des données. Exemple : Dans une base de données relationnelle pour un système de réservation d'hôtels, vous pouvez avoir une contrainte d'intégrité qui assure qu'une réservation ne peut être associée qu'à des chambres existantes dans la table "Chambres", grâce à une clé étrangère reliant les tables "Réservations" et "Chambres". Ainsi, seules les réservations liées à des chambres valides seront autorisées.
  • 7. Click to edit Master title style 7 7 Base de Donnée Relationnelle 04 / 08 Avantages : Requêtes flexibles : Les BDR offrent un langage de requête puissant, tel que SQL, permettant d'effectuer des requêtes complexes et de récupérer des données efficacement. Exemple : Dans une base de données relationnelle pour une application de vente en ligne, vous pouvez utiliser des requêtes SQL pour récupérer tous les produits d'une catégorie spécifique avec un certain prix et une disponibilité suffisante. Par exemple : SELECT * FROM Produits WHERE Catégorie = 'Vêtements' AND Prix > 50 AND Stock > 0.
  • 8. Click to edit Master title style 8 8 Base de Donnée Relationnelle 05 / 08 Avantages : Sécurité des données : Les BDR offrent des mécanismes de sécurité robustes, tels que l'authentification, l'autorisation et le contrôle d'accès, pour protéger les données contre les accès non autorisés. Exemple : Une base de données relationnelle utilisée par une institution financière peut mettre en œuvre des politiques de sécurité strictes, notamment l'identification et l'authentification des utilisateurs, ainsi que des niveaux d'autorisation granulaires pour accéder aux différentes tables et colonnes. Cela garantit que seuls les utilisateurs autorisés peuvent accéder aux données sensibles.
  • 9. Click to edit Master title style 9 9 Base de Donnée Relationnelle 06 / 08 Inconvénients : Difficulté avec des données complexes : Les BDR peuvent être moins adaptées au stockage de données complexes ou non structurées, nécessitant souvent des transformations et des jointures supplémentaires. Exemple : Si vous devez stocker des données semi-structurées telles que des documents JSON (JavaScript Object Notation) avec des structures variées, une base de données relationnelle peut nécessiter des manipulations supplémentaires pour extraire et organiser les données dans des tables relationnelles.
  • 10. Click to edit Master title style 10 10 Base de Donnée Relationnelle 07 / 08 Inconvénients : Performance avec des opérations massivement parallèles : Les BDR traditionnelles peuvent rencontrer des limites de performance lors de l'exécution d'opérations massivement parallèles sur de grands ensembles de données. Exemple : Lors du traitement simultané de milliers de requêtes d'accès à la base de données dans une application web à fort trafic, les performances peuvent diminuer si la BDR n'est pas optimisée pour gérer de telles charges de travail élevées.
  • 11. Click to edit Master title style 11 11 Base de Donnée Relationnelle 08 / 08 Inconvénients : Surcharge d'administration : Les BDR peuvent nécessiter une administration et une maintenance plus complexes, notamment en ce qui concerne l'optimisation des requêtes, l'indexation et les sauvegardes. Exemple : L'administration d'une base de données relationnelle peut impliquer la surveillance des performances, l'optimisation des requêtes, la gestion des index pour améliorer l'efficacité des opérations de recherche, ainsi que la planification et l'exécution de sauvegardes régulières pour garantir la disponibilité et la sécurité des données.
  • 12. Click to edit Master title style 12 12 BASE DE DONNEES OBJET 01 / 08 ❑ Les model de données à objet ont été créés pour modéliser les entité du monde réel, avec un état et des comportement (comprenez par-là les attributs et les méthodes) ❑ Tout entité du monde réel est un objet et un objet fait forcément référence à une entité du monde réel ❑ Le model objet fut créer pour supporter les objets manipulés en Programmation orientée Objet
  • 13. Click to edit Master title style 13 13 BASE DE DONNEES OBJET 02 / 08 ❑ Objet : un objet fait référence à une entité importante devant être modéliser dans la base de données. Il doit avoir un état (la valeur de ses attribut) et un comportement (ses méthodes). Il comporte aussi une identité qui permet de l’identifier ❑ Classe : c’est le modèle à parti duquel est créé un objet ❑ Objet complexe : un objet qui est composé de plusieurs autres objets ❑ Identité de l’objet (OID) : c’est un identifiant de l’objet qui ne peux pas être changé. Dès sa création le SGBD affecte à chaque objet un identifiant qui est invariant et reste le même durant toute sa durée de vie. Les attributs d’un objet peuvent changer mais pas sont OID. L’OID ne dépend pas de la valeur des propriétés de l’objet, elle est unique et est utile dans la création d’objets complexes. La référence d’un objet dans les attributs d’un autre objet est un pointeur pour éviter les jointures. Concepts fondamentaux de l’orienté objet
  • 14. Click to edit Master title style 14 14 BASE DE DONNEES OBJET 03 / 08 ❑ Encapsulation des Opération : l’encapsulation consiste à recueillir des données et méthodes au sein d’une structure avec une interface afin de cacher l’implémentation de l’objet. L’encapsulation garantit l’intégrité des données de l’objet. Ainsi l’implémentation d’une classe peut changer sans affecter l’interface que la classe fournie au reste de l’application. ❑ Extensibilité : grâce à l’encapsulation les base de données objet sont extensibles car elle peuvent évoluer par le comportement l’héritage ❑ Méthode : c’est un comportement de l’objet, une fonction faisant parti d’une classe. Elle permet de faire des traitements sur des données. ❑ Hiérarchie et héritage : c’est le même principe qu’en POO. Les objets hérités sont reliés par la relation « est un » Concepts fondamentaux de l’orienté objet
  • 15. Click to edit Master title style 15 15 BASE DE DONNEES OBJET 04 / 08 ❑ Héritage multiple : c’est lorsqu’un objet hérite de plusieurs classes. ❑ Polymorphisme : capacité qu’un objet a de réagir différemment au même message ❑ Redéfinition : c’est le fait de donner une nouvelle implémentation dans une sous-classe à une méthode présent dans la super-classe ❑ Surcharge : Possibilité de définir plusieurs codes pour une même opération, le code approprié étant sélectionné selon le type de paramètres fourni lors de l’appel de la méthode Concepts fondamentaux de l’orienté objet
  • 16. Click to edit Master title style 16 16 BASE DE DONNEES OBJET 05 / 08 ❑ Collection : c’est un regroupement d’un nombre variable d’élément (éventuellement zéro) organisé selon une structure particulière. On en a plusieurs : set, bag, List, array ❑ Classe paramétrée : ce sont des classes possédant un ou plusieurs paramètres (Par exemple un texte) c’est une application à la notion d’agrégation entre classe. ❑ Agrégation : c’est une association entre deux classes exprimant que les objets de la classe cible sont des composant de ceux de la classe source. Concepts fondamentaux de l’orienté objet
  • 17. Click to edit Master title style 17 17 BASE DE DONNEES OBJET 06 / 08 ❑ Les bases de données objets prennent tous leurs sens lorsqu’il s’agit de modéliser des données très riches et complexe avec de nombreuses variations : documents multimédia, données géographiques, conceptions par ordinateur… ❑ Les bases de données objet se basent sur les mêmes concepts fondamentaux que l’approche orientée objet. Ils font la particularité des bases de données objets par rapport aux autres types de base de données. Les base de données objets
  • 18. Click to edit Master title style 18 18 BASE DE DONNEES OBJET 07 / 08 ❑ Un SGBDO est un SGBD qui prend en charge la création des données comme objet et relations de manière persistante ❑ La persistance : le stockage en permanence des valeurs des propriétés d’un objet est appelé la persistance de l’objet ❑ La persistance renvoie à la capacité des objets à rester après l’arrêt du processus qui les a créés ❑ Les SGBDO ont été créés pour gérer des structures de données complexe, en profitant de la puissance de modélisation des modèles objet et de la puissance de stockage des bases de données Système de gestion de base données orienté objet
  • 19. Click to edit Master title style 19 19 BASE DE DONNEES OBJET 08 / 08 ❑ Offrir aux langages de POO une modalité de stockage permanente et de partage entre plusieurs utilisateurs ❑ Offrir aux BD des types de données complexes et extensibles ❑ Permettre la représentation des structures complexes et/ou de taille variable (données volumineuses) ❑ Fournir un ensemble de fonctionnalités OO (Support d’objet atomique et complexe, identités d’objet, héritage simple et le polymorphisme). Ce type de base de données a pour objectif :
  • 20. Click to edit Master title style 20 20 Base de Donnée Relationnel Objet 01 / 19 PostgreSQL est un système de gestion de base de données relationnel-objet open- source et puissant. Une base de données relationnel-objet combine les concepts des bases de données relationnelles et orientées objet pour permettre la modélisation et la gestion de données complexes. Il offre une grande variété de fonctionnalités avancées, notamment la gestion des objets, les fonctions stockées, les index complexes et la réplication.
  • 21. Click to edit Master title style 21 21 Base de Donnée Relationnel Objet 02 / 19 ❑ - Une base de données relationnel-objet utilise des tables relationnelles pour stocker les données de base, tout comme une base de données relationnelle classique. ❑ - Cependant, elle permet également de définir des types de données complexes, appelés types objet, qui peuvent contenir des attributs et des méthodes. Cependant postgresql ne permet pas de créer d’objet qui contiennent de méthodes ; néanmoins on peut créer de fonction qui les manipulent. Fonctionnement d'une base de données relationnel-objet :
  • 22. Click to edit Master title style 22 22 Base de Donnée Relationnel Objet 03 / 19 ❑ Modélisation précise : Les bases de données relationnel-objet permettent une modélisation plus précise et naturelle des données complexes, en représentant les entités du monde réel avec leurs attributs et comportements spécifiques. ❑ Gestion des relations : Elles facilitent la gestion des relations complexes entre les objets, en permettant la création de relations et de jointures entre les tables relationnelles et les types objets. ❑ Réutilisation du code : Les méthodes associées aux types objets peuvent être réutilisées dans différentes parties de l'application, ce qui favorise la modularité et la facilité de maintenance. ❑ Flexibilité : Les bases de données relationnel-objet offrent une plus grande flexibilité pour représenter des attributs non tabulaires, tels que les tableaux, les structures imbriquées, etc. Avantages des bases de données relationnel-objet :
  • 23. Click to edit Master title style 23 23 Base de Donnée Relationnel Objet 04 / 19 Dans PostgreSQL, un schéma est un conteneur logique qui regroupe des objets de base de données tels que des tables, des vues, des fonctions, des types d'objets personnalisés, des séquences, etc. Les schémas offrent une organisation structurée des objets et permettent une isolation et une gestion plus fines des différentes entités d'une base de données. La notion de Schéma :
  • 24. Click to edit Master title style 24 24 Base de Donnée Relationnel Objet 05 / 19 Quelques Types de Schéma en PostgreSQL : ❑ Schéma par défaut ou public ❑ Schéma avec propriétaire spécifié ❑ Schéma temporaire ❑ Schéma avec commentaires ❑ Schéma avec autorisations spécifiques
  • 25. Click to edit Master title style 25 25 Base de Donnée Relationnel Objet 10 / 19 Création d’une table dans un schéma :
  • 26. Click to edit Master title style 26 26 Base de Donnée Relationnel Objet 11 / 19 Les objets en PostgreSQL sont des types définit par l’administrateur de la base de données. Les types définit peuvent être des énumérations ou contenir d’autre attributs (objets). Dans notre cas ici, nous allons utiliser les type contenant des attributs. Pour définir des objets, on utilise la syntaxe suivante : Définition des types :
  • 27. Click to edit Master title style 27 27 Base de Donnée Relationnel Objet 12 / 19 Il est également possible de définir des types appartenant à un schéma. La syntaxe est la suivante : Définition des types :
  • 28. Click to edit Master title style 28 28 Base de Donnée Relationnel Objet 14 / 19 Ces tables sont similaires aux autres sauf qu’ils contiennent des objets. Pour définir un attribut de type objet, on suit les mêmes principes que les types primitifs en spécifiant le type de l’instance d’objet juste après son nom. Syntaxe : Création d’une table d’objet :
  • 29. Click to edit Master title style 29 29 Base de Donnée Relationnel Objet 15 / 19 On peut être amener à manipuler des objet complexe ou faire des actions répétitives sur ces derniers. Pour se simplifier la tâche, on peut définir des fonctions pour effectuer ces actions. Syntaxe : Création des fonctions pour la manipulation de objets :
  • 30. Click to edit Master title style 30 30 Base de Donnée Relationnel Objet 16 / 19 Insertion de données dans la table :
  • 31. Click to edit Master title style 31 31 Base de Donnée Relationnel Objet 17 / 19 Récupération de données :
  • 32. Click to edit Master title style 32 32 Base de Donnée Relationnel Objet 18 /20 Modification d’un objet : Modification d’un objet : Par contre postgresql ne permet pas de modifier un attribut d’un type complexe. NB: Type complexe et nom un attribut de type complexe
  • 33. Click to edit Master title style 33 33 Base de Donnée Relationnel Objet 19 / 20 Suppression d’attribut de type complexe : Suppression d’un type complexe : DROP TYPE nom_type Pour supprimer un type complexe, il faut d’abord supprimer toutes les fonctions, tables, vues…… qui l’utilse.
  • 34. Click to edit Master title style 34 Les limites des BDRO 20/20 34 ❑ Performances: les BDRO présentent une mauvaise performance lorsqu’il y a des requetés complexes ou lorsqu’on dois manipuler de jointures entre les tables. Pour ce faire on peut utiliser des schémas, des index, et les vue ❑ Interopérabilité : certains systèmes ne prennent pas en charge les fonctionnalités relationnel-objet. Cela peut rendre difficile l’intégration avec des technologies tierce ou l’échange avec d’autres systèmes. Pour ce faire on peut utiliser des formats de données standardisées comme JSON, XML … ❑ Complexité : Elles sont plus complexes que les bases de données traditionnelles car il faut manipuler à la fois les types objets, les relations et les requêtes, ce qui nécessite des connaissances supplémentaires.
  • 35. Click to edit Master title style 35 “Merci Pour Votre Attention ! Vos Questions et Apports seront les Bienvenues. 35