Vous êtes sur la page 1sur 17

ADMINISTRATION DES BASE

DE DONNEES

1
PLAN DU COURS
La gestion des utilisateurs qui manipuleront des bases de données.

La gestion des privilèges qui permettent de donner des droits sur la base de données et sur
les données de la base

La gestion des rôles

La gestion des vues

Partitionnement des données.

2
GESTION DES VUES
Une vue est un objet de la base de données
constituée d’un nom et d’une requête de sélection.
Imaginons que nous utilisons très souvent dans notre
application la même requête.
Au lieu de devoir retaper a chaque fois, il serait
intéressant de pouvoir sauvegarder notre requête de
sélection une fois pour toute et de pouvoir y accéder.
La vue est stockée dans la base de manière durable.
On stocke la requête et non le résultat.
3
GESTION DES VUES
Créer une vue:
 La création de vue se fait au travers de l’instruction CREATE VIEW
 Il suffit de spécifier un nom de vue et une requête de sélection:
CREATE VIEW nomVue
AS requete_select;
 Une fois créer la vue existera dans la base de donnees
 Il est possible de retrouver la vue:
SELECT *
FROM schema.view
SHOW tables

4
GESTION DES VUES
Consulter une vue
 Une fois la vue en place il est possible de la
consulter comme s’il s’agissait d’une table.
SELECT * FROM nom_vue;
 Pour accéder au colonne de la vue, on peut
commencer par lister ces colonnes
DESCRIBE Nom_vue;
 Les colonnes de la vue correspondent comme on
pouvait s’y attendre aux colonnes du select.
5
GESTION DES VUES
Consulter une vue
 Lors de la création de la vue pour renommer les
colonnes on utilise la commande suivante:
CREATE VIEW nomVue(nomcol1,nomcol2,…,etc)
AS
SELECT col1,col2,…
FROM nomtable
WHERE critères;
 Naturellement, l’ordre des colonnes de la vue
doivent correspondre a l’ordre des colonnes dans
6
select.
GESTION DES VUES
Consulter une vue
 On peut mettre n’importe quel select dans une vue
a l’exception de :
 Pas de SELECT qui contient une sous requête
dans la clause FROM
 Les tables doivent exister au moment de la
création de la vue.
 pas de select qui s’appuie sur des variables.

7
GESTION DES VUES
Consulter une vue
 Il est possible de créer des vue sur des select.
 Il est également possible de créer des vues sur des vues.
 Il est possible de créer des vues basées sur des jointures entre vues
et sélection.
 La requête select est figée au moment de la création de la vue
ainsi:
• Si vous ajouter une colonne a la table, elle ne sera pas prise en
compte dans la vue.
• Si vous supprimez une colonne, votre vue ne fonctionnera plus

8
GESTION DES VUES
Modifier une vue
 La façon la plus simple de modifier une vue est
simplement de la recréer.
 Pour éviter d’avoir a la supprimer avec un drop,
vous pouvez utiliser la commande
CREATE OR REPLACE nomVue AS ….;
 On peut également utiliser la commande ALTER
VIEW qui aura le même effet:
ALTER VIEW nomVue AS ….;
9
GESTION DES VUES
Résumer sur la vue:
 La vue permet de factoriser du code dont nous
avons besoin souvent comme les fonctions en
programmation
 Elle permet également de simplifier les requetés en
effectuant déjà des jointures dans des vues.
 Pour la plupart des opérations , les vues sont
considérées comme des tables et peuvent être
utiliser comme tel.
10
PARTITIONNEMENT DES DONNEES
Pourquoi partitionner?
 Pour dépasser les limites de taille de mes disques.
 Pour améliorer les performances
 Pour gérer l’import ou l’ archivage des données.

11
PARTITIONNEMENT DES DONNEES
Définition:
Le partitionnement c’est le fait de diviser une table(ou bd) en
plusieurs morceaux pour les repartir, le plus souvent entre
différents serveurs. Dans ce cas on parle de sharding.
Il peut aussi se faire sur une seule et même machine.
Quand une machine n’est plus capable de traiter efficacement
les données et pour fournir plus de scalabilite
Les règles de partitionnement peuvent être définies
manuellement ou être automatique.

12
PARTITIONNEMENT DES DONNEES
Type de partitionnement:
 Partitionnement horizontal: découpe la table horizontalement, il offre
la possibilité au système d’interroger les fragments de table
simultanément par les différents serveurs.
Avantages:
 Favorisant un gain en rapidité.
Inconvénients:
 Infrastructure plus complexe
 Augmentation de la latence
 Les recherches croisées peuvent saturer le canal de communication
utiliser entre les serveurs.
 Partitionnement vertical: on découpe la table verticalement, l’idée est
de séparer les colonnes souvent utilisées des colonnes rarement
accédées afin de diminuer la taille des tables. 13
PARTITIONNEMENT DES DONNEES
Conditions de partitionnement:
 La colonne de partitionnement doit être NOT NULL
 Le partitionnement doit concerner la table tout entière.
 Les valeurs des bornes doivent être connues.
 La volumétrie des données est conséquente.
 Les partitions sont gérées par des stockages.
 Certains index sont eux aussi partitionnés.

14
PARTITIONNEMENT DES DONNEES
Comment partitionner?
 Une colonne NOT NULL de la table est choisie comme clé de
partitionnement.
 On peut partitionner par la colonne identifiant ou une colonne
calculée.

15
PARTITIONNEMENT DES DONNEES
Etapes de création d’une table partitionnée?
1. Création des espaces de stockages du
partitionnement.
a. Création des storages
b. Ajouts de fichiers aux storages.
2. Création de la fonction de partition.
3. Création du schéma de partitionnement
4. Création de la table partitionnée.
16
PARTITIONNEMENT DES DONNEES
Gestion d’une partition:
 Modifier le schéma de partitionnement
ALTER PARTITION SCHEME nom_partition
NEXT USED nom_fichier.
 Modifier la fonction de partitionnement pour ajouter une borne.
ALTER PARTITION FUNCTION nom_fonction_partition()
SPLIT RANGE(nouvelle limite)
 Pour déplacer une partition d’une table a l’autre.
ALTER TABLE [nom_schema.]nom_table
SWITCH PARTITION numero_partition_depart
TO [autre_schema.]autre table
PARTITION numero_partition_arrivee;

17

Vous aimerez peut-être aussi