La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Structure de stockage et relations

Présentations similaires


Présentation au sujet: "Structure de stockage et relations"— Transcription de la présentation:

1 Structure de stockage et relations

2 Objectifs A la fin de ce chapitre, vous pourrez :
décrire la structure logique de la base de données énumérer les types de segment et leur utilisation énumérer les mots-clés qui gèrent l'utilisation de l'espace de bloc obtenir des informations sur les structures de stockage à partir du dictionnaire de données

3 Structure de stockage et relations
Base de données PROD TABLESPACES SYSTEM USER_DATA RBS TEMP FICHIERS DE DONNEES DISK2/ USER1.dbf DISK3/ USER2.dbf DISK1/ ROLL1.dbf DISK1/ TEMP.dbf DISK1/SYS1.dbf SEGMENTS Seg RB S_DEPT Seg données S_EMP Seg données S_DEPT (suite) Seg Data S_EMP FIRST_NAME Index Seg Index RBS1 Seg RB RBS2 Seg RB RBS1 (suite) Seg RB RBS2 (suite) Seg RB Temp Seg Temp Table D.D. Seg données Index D.D. Seg Index EXTENTS DISPO BLOCS DE DONNEES Oracle

4 Types de segment Table Partition de table Cluster Index

5 Table organisée en index
Types de segment Table organisée en index Partition d'index Segment d'annulation Segment temporaire

6 Types de segment Segment LOB Table imbriquée Segment de bootstrap

7 Priorité des clauses de stockage
Valeur Oracle par défaut Tablespace Segment

8 Allocation et libération d'extents
Un extent est une tranche d'espace utilisée par un segment dans un tablespace. Un extent est alloué lorsqu'un segment est : créé étendu modifié Un extent est libéré lorsqu'un segment est : supprimé vidé

9 Extents utilisés et extents libres
Fichier de données En-tête de fichier Extent utilisé Extent libre

10 Bloc de base de données Unité minimum d'E/S
Comprend un ou plusieurs blocs du système d'exploitation Est défini à la création d'un tablespace DB_BLOCK_SIZE détermine la taille de bloc par défaut

11 Support de plusieurs tailles de bloc
Il est possible de créer une base de données avec une taille de bloc standard et jusqu'à quatre tailles de bloc non standard. Les tailles de bloc peuvent être égales à toute puissance de deux comprise entre 2 et 32 Ko.

12 Taille de bloc standard
Elle est définie à la création de la base de données à l'aide du paramètre DB_BLOCK_SIZE. Pour la modifier, il est nécessaire de recréer la base de données. Elle est utilisée par les tablespaces SYSTEM et TEMPORARY. DB_CACHE_SIZE indique la taille du cache de tampons DEFAULT pour une taille de bloc standard. Taille minimale = un granule (4 Mo ou 16 Mo) Valeur par défaut = 48 Mo

13 Tailles de bloc non standard
Configurez des caches supplémentaires avec les paramètres dynamiques suivants : DB_2K_CACHE_SIZE pour des blocs de 2 Ko DB_4K_CACHE_SIZE pour des blocs de 4 Ko DB_8K_CACHE_SIZE pour des blocs de 8 Ko DB_16K_CACHE_SIZE pour des blocs de 16 Ko DB_32K_CACHE_SIZE pour des blocs de 32 Ko DB_nK_CACHE_SIZE n'est pas autorisé si nK est la taille de bloc standard Taille minimale de chaque cache : un granule

14 Créer des tablespaces de taille de bloc non standard
CREATE TABLESPACE tbs_1 DATAFILE 'tbs_1.dbf' SIZE 10M BLOCKSIZE 4K; DESCRIBE dba_tablespaces Name Null? Type TABLESPACE_NAME NOT NULL VARCHAR2(30) BLOCK_SIZE NOT NULL NUMBER ...

15 Règles relatives à l'utilisation de plusieurs tailles de bloc
Toutes les partitions d'un objet doivent résider dans des tablespaces ayant la même taille de bloc. Tous les tablespaces temporaires, y compris les tablespaces permanents utilisés comme tablespaces temporaires par défaut, doivent utiliser la taille de bloc standard. Les segments de débordement d'une table organisée en index et les segments LOB en dehors de la ligne peuvent être stockés dans un tablespace ayant une taille de bloc différente de celle de la table de base.

16 Contenu d'un bloc de base de données
En-tête Espace libre Données

17 Paramètres d'utilisation de l'espace de bloc
INITRANS MAXTRANS PCTFREE PCTUSED

18 Gestion des blocs de données
Vous disposez de deux méthodes pour gérer les blocs de données : Gestion automatique de l'espace de segment Gestion manuelle

19 Gestion automatique de l'espace de segment
Cette méthode permet de gérer l'espace libre des segments de base de données. Le suivi de la quantité d'espace libre et utilisé dans les segments s'effectue à l'aide de bitmaps et non de listes de blocs libres. Cette méthode : facilite la gestion permet une meilleure utilisation de l'espace améliore les performances des opérations INSERT simultanées Restriction : Elle ne peut pas être utilisée pour les tablespaces qui contiendront des LOB.

20 Gestion automatique de l'espace de segment
Les segments bitmap contiennent un bitmap qui indique le statut de chaque bloc dans le segment par rapport à son espace disponible. La représentation des blocs est contenue dans un ensemble de blocs particulier, appelés "blocs bitmap" (BMB). Lorsque vous insérez une ligne, le serveur recherche dans la représentation des blocs un bloc disposant d'un espace suffisant. Lorsque la quantité d'espace disponible d'un bloc varie, le nouveau statut de ce dernier est indiqué dans le bitmap.

21 Configurer la gestion automatique de l'espace de segment
Vous ne pouvez activer la gestion automatique de l'espace de segment qu'au niveau tablespace pour les tablespaces gérés localement. Une fois qu'un tablespace est créé, les spécifications s'appliquent à tous les segments créés dans le tablespace. CREATE TABLESPACE data02 DATAFILE ‘/u01/oradata/data02.dbf’ SIZE 5M EXTENT MANAGEMENT LOCAL UNIFORM SIZE 64K SEGMENT SPACE MANAGEMENT AUTO;

22 Gestion manuelle des blocs de données
Permet de configurer manuellement les blocs de données à l'aide de paramètres tels que : PCTFREE PCTUSED FREELIST Seule méthode disponible dans les versions antérieures d'Oracle

23 Utilisation de l'espace de bloc
PCTFREE= PCTUSED=40 Insertions Insertions 80 % (en dehors de la liste de blocs libres) 1 2 Insertions 80 % Insertion (dans la liste de blocs libres) 40 % 3 4

24 Obtenir des informations sur le stockage
Pour obtenir des informations sur le stockage, interrogez les vues suivantes : DBA_EXTENTS DBA_SEGMENTS DBA_TABLESPACES DBA_DATA_FILES DBA_FREE_SPACE

25 Synthèse Ce chapitre vous a permis d'apprendre à :
utiliser des tablespaces pour : séparer des segments afin de faciliter l'administration gérer l'allocation d'espace utilisateur classer les segments par catégories en fonction du type d'information qu'ils contiennent définir des tailles d'extent à l'aide de la clause de stockage gérer l'utilisation de l'espace de bloc


Télécharger ppt "Structure de stockage et relations"

Présentations similaires


Annonces Google