Vous êtes sur la page 1sur 40

Outline

Administration et optimisation des bases de


données
(1/2 Module : Administration des bases de données)

GI2 - SCM2

R.J.

Automne 2019

R.J. Administration des bases de données 1/40


Outline

1 Préambule

R.J. Administration des bases de données 2/40


Préambule

Définitions

Une base de données (database) est une entité informatique perme-


ttant de stocker des données, i.e., des éléments de connaissance ou
des renseignements bruts (numériques, alphabétiques . . . ), de natures
différentes (relatives à différents sujets), qui se rapportent à une appli-
cation, à une problématique ou à une activité donnée.
Ces données peuvent être traitées par des moyens informatiques en vue
de produire des informations utiles. Les traitements des données sont
l’une des utilisations les plus courantes des ordinateurs.
Les traitements font appel à des (combinaisons) d’opérations de
recherche, de sélection, de regroupement, de tri et de calcul
arithmétique.

R.J. Administration des bases de données 3/40


Préambule

Définitions

Une base de données est l’élément central d’un dispositif informatique


appelé ”système de base de données” (ou base de données tout court),
qui sert à la collecte, au stockage, au traitement, à l’extraction et à
l’utilisation des données.
Ce dispositif comporte également un logiciel moteur appelé ”système de
gestion de base de données” SGBD (DBMS pour DataBase Manage-
ment System), qui manipule et contrôle la base de données.
Il peut comporter également des logiciels applicatifs et disposer de
règles relatives à l’accès et à l’utilisation des informations.
Le SGBD est une suite de programmes (un logiciel) qui manipulent la
structure de la base de données et qui dirigent l’accès aux données qui
y sont stockées.

R.J. Administration des bases de données 4/40


Préambule

Définitions

L’accès aux données se fait et ne peut se faire que via le SGBD, qui
sert alors d’intermédiaire entre la base de données et les usagers (des
opérateurs humains ou des programmes d’application). Le SGBD per-
met ainsi d’interagir avec la base de données. Il assure sa création et
son exploitation (extraction de données, modification de données, ajout
de données, suppression de données . . . ).
Le SGBD reçoit des demandes d’accès, de traitement et de mise-à-jour
du contenu de la base de données, auxquelles il répond en effectuant
les opérations nécessaires pour réaliser les tâches demandées.
Le SGBD cache la complexité des opérations et offre une ”vue”
synthétique sur le contenu. Contrairement aux programmes utilisés avec
les fichiers classiques, on ne connaı̂t pas l’implantation physique des
données.

R.J. Administration des bases de données 5/40


Préambule

Définitions

Notons que le SGBD permet à plusieurs usagers de manipuler simul-


tanément le contenu, et qu’il peut offrir différentes ”vues” sur un même
ensemble de données.
Les SGBD ont pour particularité de séparer entre l’organisation logique
et physique des données d’un coté, et des traitements de l’autre coté ; Il
y a une indépendance données/programmes.

R.J. Administration des bases de données 6/40


Préambule

Définitions

Administrer des bases de données, c’est :


– – Installer, configurer et mettre à jour des SGBD,
– – créer et manipuler des bases de données,
– – établir et maintenir la sécurité des bases de données (en définissant
des utilisateurs de la base de données, tout en leur associant des
privilèges),
– – établir et maintenir des sauvegardes des données et des politiques
et des procédures de récupération de celles-ci,
– – suivre et maintenir la performance (par rapport au temps de
réponse),
– – planifier la croissance et des changements au niveau des espaces
de stockage,
– – faire migrer les données vers un autre serveur de base de données,
– – ...

R.J. Administration des bases de données 7/40


Préambule

Approche base de données Vs Approche système de fichiers

Le recours aux bases de données a été une alternative au procédé clas-


sique de stockage de données, par lequel une application place des
données dans des fichiers manipulés par l’application.
Dans l’approche système de fichiers, on définit les données en fonctions
des traitements ; il y a une dépendance données/programmes.

R.J. Administration des bases de données 8/40


Préambule

Approche base de données Vs Approche système de fichiers

Par exemple, prenons le cas d’une entreprise qui a adopté un système


de fichiers, où chaque service définit ses fichiers en fonction de ses be-
soins :
– – Le service gestion-des-clients gère un fichier CLIENTS, qui contient
les données suivantes : Code client, Nom client, Age client, Numéro rue,
Ville.
– – Le service commercial gère un fichier COMMANDES, qui contient les
données suivantes : Numéro commande, Date commande, Total com-
mande, Code client, Nom client, Adresse client.
– – Le service commercial gère un fichier DETAILS-COMMANDES, qui
contient les données suivantes : Numéro commande, Numéro ligne
commande, Code produit, Prix unitaire, Quantité commandée.
– – Le service gestion-du-stock gère un fichier PRODUITS, qui con-
tient les données suivantes : Code produit, Libellé produit, Prix unitaire,
Quantité en stock.
Lorsqu’on inspecte les fichiers, on se rend compte qu’il y a une redon-
dance de certaines données ; ce qui conduit à un risque d’incohérence
lors de la mise-à-jour des fichiers.

R.J. Administration des bases de données 9/40


Préambule

Approche base de données Vs Approche système de fichiers

Il n’y a pas non plus d’intégrité des données. Puisque par exemple, on
peut passer une commande d’un client qui n’existe pas dans le fichier
CLIENTS.
Le contrôle des valeurs des données doit se faire via les programmes.
Par exemple, l’Age client doit être positif.
Il y a aussi un manque de confidentialité.
On peut noter également la difficulté des traitements (consultation, mise-
à-jour . . . ).

R.J. Administration des bases de données 10/40


Préambule

Approche base de données Vs Approche système de fichiers

L’utilisation des bases de données à suppléer l’utilisation de systèmes


de fichiers. Les bases de données offrent en effet plusieurs avantages :
– – L’intégration des données dans un seul fichier (la base de données),
– – la facilité du partage des données,
– – la possibilité de gérer de très grandes quantités de données (on peut
atteindre des tailles de l’ordre de plusieurs téraoctets),
– – la rapide obtention et modification des données,
– – la vérification que les données introduites sont correctes, e.g.,
s’assurer que les valeurs sont dans les limites admises, que les formats
sont corrects, . . . ,
– – le contrôle de l’intégrité des données,
– – la gestion des collisions lorsqu’il y a plusieurs modifications simul-
tanées de la même information, i.e., la gestion des accès concurrents,
– – la vérification (voire le refus) de la présence de redondances de
données,
– – le contrôle de l’accès aux informations et la production plus aisée
d’informations ”synthétiques” à partir des renseignements bruts stockés,

R.J. Administration des bases de données 11/40


Préambule

Approche base de données Vs Approche système de fichiers

– – la confidentialité des données, via notamment la notion de vue,


– – la possibilité de stocker des données multimédias,
– – la possibilité de créer automatiquement des compte-rendus (report) du
contenu de la base de données,
– – le déploiement de mécanismes pour éviter des pertes d’informations suite
à des pannes,
– – la disponibilité d’un large éventail de fonctions prédéfinies dans les SGBD
qui permettent des manipulations très variées,
– – la possibilité d’avoir une interface graphique et des langages de program-
mation sophistiqués,
– – la possibilité de l’utilisation du SGBD par d’autres logiciels,
– – ...

R.J. Administration des bases de données 12/40


Préambule

Approche base de données Vs Approche système de fichiers

Néanmoins, une base de données nécessite généralement plus


d’espace disque, ainsi que des ressources humaines et financières plus
importantes.
Si on revient à notre précédent exemple, les différents services de
l’entreprise vont utiliser la même base de données ; elle sera partagée
entre les différents services.
Tout ceci conduit à poser la définition suivante :
Une base de données est donc un ensemble structuré de données,
peu redondantes que possible, enregistrées sur un support accessible
par ordinateur, de façon à être indépendante des programmes qui les
utilisent.

R.J. Administration des bases de données 13/40


Préambule

Niveaux de représentation d’une base de données

Il y a trois différents niveaux de représentation d’une base de données :


– – Le niveau interne qui est associé au schéma physique de la base de
données,
– – Le niveau conceptuel qui est associé au schéma conceptuel de la
base de données,
– – Le niveau externe, qui offre différents schémas externes (vues util-
isateur).

R.J. Administration des bases de données 14/40


Préambule

Niveaux de représentation d’une base de données

Le niveau conceptuel décrit d’une manière abstraite l’ensemble des


données. Il montre l’organisation logique des données.
On élabore dans le niveau conceptuel un schéma conceptuel, appelé
aussi un modèle de données conceptuel ou encore un modèle de
données logique, qui décrit donc les données telles qu’elles sont dans la
pratique.
Le schéma conceptuel est une vue de la totalité des informations enreg-
istrées dans la base de données. Il est souvent organisé de la même
manière que les objets du monde réel auquel les informations se rap-
portent.
Le schéma conceptuel renseigne sur les caractéristiques de chaque type
de donnée et les relations entre les différentes données qui se trouvent
dans la base de données.

R.J. Administration des bases de données 15/40


Préambule

Niveaux de représentation d’une base de données

Le niveau interne décrit l’existence physique des données.


Le modèle de données physique est un modèle dérivé du modèle
logique qui décrit comment les données seront techniquement stockées
dans le disque dur. Il défini donc l’espace réservé à chaque information,
la manière avec laquelle les informations sont représentées sous forme
de suites de bits, et il utilise les indexes pour accélérer les opérations de
recherche.

Le niveau externe fournit une vision de tout ou d’une partie du schéma


conceptuel, pour chacun des utilisateurs de la base de données. Il four-
nit donc des vues pour les utilisateurs de la base de données.
Ce que voit l’utilisateur sont des informations dérivées du contenu de
la base de données et présentées d’une manière différente. Il existe
différentes vues adaptées à chacun des rôles joués par les utilisateurs.
Le schéma externe peut être vu comme un sous-schéma conceptuel.

R.J. Administration des bases de données 16/40


Préambule

Niveaux de représentation d’une base de données

Il existe plusieurs types de modèles de données. Les modèles de bases


de données de l’état-de-l’art sont :
– – Base de données hiérarchique,
– – base de données réseau,
– – base de données relationnelle,
– – base de données orientée objet,
– – base de données orientée documents,
– – base de données XML,
– – base de données orientée composant,
– – ...

R.J. Administration des bases de données 17/40


Préambule

Niveaux de représentation d’une base de données

Une base de données hiérarchique est une base de données où les
informations sont groupées dans des enregistrements ; chaque enreg-
istrement comporte des champs.
Les enregistrements sont reliés entre eux d’une manière hiérarchique,
i.e., qu’à chaque enregistrement correspond un enregistrement parent
unique. On a donc une structure arborescente.
Le modèle réseau est une extension du modèle hiérarchique, où les
liens entre les données peuvent exister sans restriction ; ce qui rend ce
modèle plus polyvalent.
Ce modèle permet ainsi d’établir des liaisons de type ”N-M” en
définissant des associations entre tous les types d’enregistrements. Les
enregistrements sont reliés entre eux par des pointeurs.

R.J. Administration des bases de données 18/40


Préambule

Niveaux de représentation d’une base de données

Une base de données relationnelle est un stock d’informations qui sont


décomposées et organisées dans des matrices appelées ”relations” ou
”tables”. Les données sont structurées en des tables, qui englobent
également les liens entre les données.
Chaque ligne d’une table est un enregistrement.
Le modèle de données relationnel est fondé sur la théorie des en-
sembles ; le contenu de la base de données est donc manié via des
opérations d’algèbre relationnelle.
Le modèle de données relationnel est le type de modèle de données le
plus couramment utilisé pour la réalisation d’une base de données. Il est
simple à mettre en œuvre, très populaire et fortement normalisé.

R.J. Administration des bases de données 19/40


Préambule

Niveaux de représentation d’une base de données

Une base de données orientée objet est un stock d’informations qui sont
groupées sous formes de collections d’objets persistants ; les entités
(informations) sont représentées par des objets.
Une base de données orientée objet est un lot d’objets de différentes
classes. Chaque objet possède des propriétés (des caractéristiques pro-
pres), et des méthodes qui sont des opérations en rapport avec l’objet.
Une classe est une catégorie d’objets qui reflète typiquement un sujet
concret.
Les SGBD Orientées Objet sont écrits dans des langages de program-
mation orientées objet.
Une base de données orientée documents est une base de données
destinée aux applications qui gèrent des documents.

R.J. Administration des bases de données 20/40


Préambule

Niveaux de représentation d’une base de données

Une base de données XML Native (ou base de données XML tout court)
est une base de données qui s’appuie sur le modèle de données fourni
par XML. Elle utilise typiquement des langages de requête XML comme
XPath ou XQuery.
L’indexation dans une base de données XML nécessite d’indexer non
seulement le contenu des éléments mais aussi d’indexer la structure et
les relations entre les éléments.
Une extension possible des bases de données XML sont les bases de
données RDF, avec le langage d’interrogation SPARQL.
Une base de données orientée composant est un ensemble
d’informations qui sont stockées sous un modèle particulier de gestion
de données et de programmation de systèmes de gestion de bases de
données.
La particularité principale d’une base de données orientée composant
est l’usage du paradigme de la ”programmation orientée composant”.

R.J. Administration des bases de données 21/40


Préambule

Niveaux de représentation d’une base de données

On trouve d’autres types de bases de données, comme :


– – Les bases de données orientées colonnes qui sont des bases de
données qui stockent les données par colonne et non par ligne.
– – Les bases de données orientées texte (appelées aussi ”Base de
données dans un fichier plat”) qui sont des modèles de bases de
données, généralement une table, sous la forme d’un simple fichier. Un
fichier plat est un fichier texte ou du texte combiné avec un fichier binaire
contenant généralement un seul enregistrement par ligne.
– – Les bases de données orientées graphe qui sont des bases de
données orientées objet utilisant la théorie des graphes, donc avec des
nœuds et des arcs, qui permettent de représenter et de stocker les
données.
– – ...

R.J. Administration des bases de données 22/40


Préambule

Niveaux de représentation d’une base de données

Notons finalement que la famille des SGBD Relationnels englobe des


SGBD dits Relationnel-Objet (ou Objet-Relationnel) qui s’appuient sur
le modèle relationnel tout en apportant des extensions objet. Ils combi-
nent la richesse sémantique des concepts de l’orienté-objet à la logique
relationnelle.
Les bases de données relationnel-objet utilisent un modèle de données
relationnel tout en permettant le stockage des objets. Dans ces bases
de données, les associations d’héritage des objets s’ajoutent aux asso-
ciations entre les entités du modèle relationnel.
Le paradigme relationnel-objet étend donc le modèle relationnel avec
son concept d’intégrité référentielle pour inclure des concepts de
l’approche objet.

R.J. Administration des bases de données 23/40


Préambule

SGBD centralisés ou distribués

Les SGBD peuvent être centralisés ou distribués.


Un SGBD est dit centralisé lorsque le logiciel contrôle l’accès à une base
de données placée sur un ordinateur unique.
Un SGBD est dit distribué lorsqu’il contrôle l’accès à des données qui
sont dispersées entre plusieurs ordinateurs.
Dans cette configuration, un logiciel est placé dans chacun des ordi-
nateurs, et ces derniers utilisent des moyens de communication pour
coordonner les opérations.
L’utilisateur voit à tout moment l’ensemble des données, comme si elles
étaient présentes en une seule place.

R.J. Administration des bases de données 24/40


Préambule

SGBD embarqués et SGBD spatiaux

Les SGBD peuvent être embarqués, et peuvent être aussi spatiaux.


Un SGBD embarqué est un SGBD sous forme de composants logiciels
qui peuvent être incorporés dans un logiciel applicatif.
Contrairement à un SGBD client-serveur dans lequel un processus traite
les requêtes, un modèle embarqué se compose de bibliothèques logi-
cielles liées par une liaison dynamique avec le logiciel qui utilise le
SGBD.
Dans ce type de SGBD, la base de données est souvent composée d’un
fichier unique dont le format est identique, quelles que soient les car-
actéristiques de l’ordinateur utilisé.
Cette architecture permet d’avoir des SGBD qui ne sont pas lourds et
encombrants ; ils deviennent aussi plus facile à installer.

R.J. Administration des bases de données 25/40


Préambule

SGBD embarqués et SGBD spatiaux

Les applications informatiques telles que les systèmes d’information


géographiques et les outils de conception assistée par ordinateur
utilisent des SGBD spatiaux.
Ce type de logiciels permet le stockage d’informations géométriques
telles que des points, des lignes, des surfaces et des volumes.
Ils comportent des fonctions permettant de retrouver une information sur
la base de caractéristiques géométriques telles que les coordonnées ou
la dimension.

R.J. Administration des bases de données 26/40


Préambule

SGBD personnels, de groupe, d’entreprise ou pour des services Internet

Selon le périmètre d’utilisation des bases de données, on distingue


aussi entre : des SGBD personnels, des SGBD de groupe, des SGBD
d’entreprise et des SGBD pour des services Internet.
Les SGBD personnels sont des SGBD qui sont conçus pour servir
un seul utilisateur à la fois. Lorsqu’un deuxième utilisateur essaye
d’accéder à la base de données, il doit attendre que le premier ait ter-
miné. Ces SGBD sont parfois installés sur des ordinateurs personnels
pour des bases de données dites de bureau.
Les SGBD de groupe sont des SGBD qui peuvent être utilisés par
plusieurs usagers simultanément. Le nombre d’usagers est de l’ordre
de 50 à 100 usagers. Les SGBD de groupe sont les plus populaires
dans les petites et moyennes institutions.
Les SGBD d’entreprise sont des SGBD qui sont puissants, et qui sont
capables de manipuler de grandes quantités d’informations. Ils peuvent
être utilisées par des milliers d’usagers simultanément.
R.J. Administration des bases de données 27/40
Préambule

SGBD personnels, de groupe, d’entreprise ou pour des services Internet

L’apparition de services Internet de grande audience a nécessité des


moyens techniques adaptés à des besoins sans précédents en ter-
mes de nombre d’utilisateurs et de quantité de données. Prévus pour
la répartition de charge, de nouveaux SGBD dits ”NoSQL” ont fait le
compromis de ne pas mettre en œuvre certaines fonctionnalités clas-
siques des SGBD en vue d’obtenir la puissance de calcul et la scala-
bilité nécessaires aux populaires services web qui sont le e-commerce,
la recherche de documents et les réseaux sociaux.

R.J. Administration des bases de données 28/40


Préambule

Utilisation des bases de données

Les bases de données sont utilisées partout :


– – Dans la bourse, les banques et les assurances,
– – dans le e-commerce et la logistique,
– – dans l’enseignement, la santé et le transport,
– – dans la recherche scientifique,
– – dans les petites, moyennes et grandes entreprises,
– – dans l’administration publique et les collectivités territoriales,
– – dans la sûreté nationale, la gendarmerie royale et la douane,
– – dans la météorologie et les médias,
– – ...
Voici des exemples concrets d’utilisation des bases de données :
– – Facebook, Twiter et la messagerie électronique,
– – les serveurs de documents sur internet (https://tel.archives-
ouvertes.fr , http://citeseer.ist.psu.edu/index),
– – les bases de données virales des antivirus,
– – les catalogues et les inventaires de stocks, de magasins, ou de bib-
liothèques,

R.J. Administration des bases de données 29/40


Préambule

Utilisation des bases de données

– – les outils de réservation de billets d’avions, d’autocars, de trains, de spec-


tacles, ou d’événements sportifs,
– – l’octroi de documents administratifs (certificat de propriété, la déclaration
des impôts . . . ),
– – la gestion des abonnés aux réseaux de distribution de l’eau et de
l’électricité, ou aux réseaux de téléphonie,
– – la gestion des ressources humaines dans les entreprises et dans la fonc-
tion publique,
– – la facturation des achats dans les grandes surfaces,
– – le calcul de statistiques et d’indices par Bank Al-Maghrib, et le Haut Com-
missariat au Plan,
– – les programmes MASSAR et RAMED,
– – le recensement de la population,
– – la politique de compensation,
– – ...

R.J. Administration des bases de données 30/40


Préambule

TOP 10 des SGBD selon leur popularité – Classement de Septembre 2019 (source :

http://db-engines.com/)

R.J. Administration des bases de données 31/40


Préambule

TOP 10 des SGBD selon leur popularité – Variation des scores au long des 7 dernières

années (source : http://db-engines.com/)

R.J. Administration des bases de données 32/40


Préambule

TOP 10 des SGBD selon leur popularité

Remarques :
– – Le classement est dominé par les SGBD Relationnels.
– – Oracle, Microsoft SQL Server, IBM Db2 et Microsoft Access sont des
SGBD commerciaux.
– – MySQL, PostgreSQL, MongoDB, Redis, Elasticsearch et Cassandra
sont des SGBD gratuits.

R.J. Administration des bases de données 33/40


Préambule

SGBD Oracle

Oracle (tout court) ou Oracle Database est un SGBD Relationnel, et plus


particulièrement c’est un SGBD Relationnel-Objet. Il est développé par
Oracle Corporation depuis 1979, et c’est le SGBD le plus populaire au
monde.
Notez bien qu’Oracle Corporation propose depuis 2005 des versions to-
talement gratuite de son SGBD, appelées ”Express Edition” (XE). Ces
versions gratuites sont néanmoins limitées par rapport aux versions
commerciales.
La dernière version gratuite est sortie le 20 octobre 2018 ; c’est la ver-
sion Oracle Database 18c XE. Elle peut être utilisée sur des machines
Windows (x64) et sur des machines Linux (x64). Elle limite le nombre de
processeurs pouvant être utilisés à 2, on peut solliciter jusqu’à 2 GO de
mémoire vive, et la taille maximale des données utilisateur est 12 GO.

R.J. Administration des bases de données 34/40


Préambule

SGBD Oracle

Oracle Database 18c XE offre une partie des fonctionnalités de l’édition


EE (Enterprise Edition) de la version commerciale Oracle Database 18c.
Remarque :
La toute dernière version commerciale est sortie le 13 février 2019 ; c’est
la version Oracle Database 19c.

R.J. Administration des bases de données 35/40


Préambule

Oracle Database 18c XE

Vidéo 1 : Présentation d’Oracle Database 18c XE.

Vidéo 2 : Installation sous Linux d’Oracle Database 18c XE.

Vidéo 3 : Installation sous Windows d’Oracle Database 18c XE.

Installez Oracle Database 18c XE dans votre PC. Il est joint aux slides de cette
partie (ainsi que les 3 précédentes vidéos).

R.J. Administration des bases de données 36/40


Préambule

Oracle Database 18c XE

Gardez bien en tête ce mot de passe administrateur que vous avez saisi.
Utilisé avec les comptes SYS, SYSTEM et PDBADMIN, il vous permettra de
gérer et d’administrer les bases de données créées.
R.J. Administration des bases de données 37/40
Préambule

Oracle Database 18c XE

Notez ces informations de connexion ; elles vous seront utiles par la suite.
R.J. Administration des bases de données 38/40
Préambule

Oracle Database 18c XE

N’oubliez pas de s’assurer de la bonne installation de l’outil.

R.J. Administration des bases de données 39/40


Préambule

Oracle Database 18c XE

R.J. Administration des bases de données 40/40

Vous aimerez peut-être aussi