Gestion des donnes en mmoire secondaire n Donnes

  • Slides: 27
Download presentation
Gestion des données en mémoire secondaire n Données persistantes en mémoire secondaire – n

Gestion des données en mémoire secondaire n Données persistantes en mémoire secondaire – n Organisation physique des données – n unité de disque façon dont les données sont structurées en mémoire secondaire Méthode d'organisation des données – structure de données particulière utilisée pour organiser les données en mémoire secondaire 1

Critères d'évaluation des méthodes d'organisation n Temps d'accès aux données par rapport à différentes

Critères d'évaluation des méthodes d'organisation n Temps d'accès aux données par rapport à différentes méthodes d'accès – sériel, sélection, . . . Délai d'insertion et de suppression n Occupation mémoire n 2

Conception physique n Choix des méthodes d ’organisation – – – n organisation sérielle

Conception physique n Choix des méthodes d ’organisation – – – n organisation sérielle organisation séquentielle indexage hachage organisation par grappe. . . Schéma interne de la BD 3

Principales caractéristiques disques n Unité de disque (disk pack ) ou disque 4

Principales caractéristiques disques n Unité de disque (disk pack ) ou disque 4

Capacité de Superbit n capacitéDisque = nb. Surfaces nb. Cylindres nb. Secteurs. Par. Piste

Capacité de Superbit n capacitéDisque = nb. Surfaces nb. Cylindres nb. Secteurs. Par. Piste taille. Secteur n = 20 surfaces 1000 cylindres 50 secteurs par piste 512 octets n = 512, 000 octets 500, 000 kilooctets(K) 500 mégaoctets (M) 5

Transfert d ’un secteur n Secteur – n Adresse physique de secteur – n

Transfert d ’un secteur n Secteur – n Adresse physique de secteur – n numéro de surface (no. Surface), numéro de cylindre (no. Cylindre), numéro de secteur dans la piste (no. Secteur) Adresse relative de secteur (no. Secteur. Relatif) – n unité d'adressage et de transfert minimal dans l'intervalle [0. . n-1] Tampon (buffer ) – zone de la mémoire centrale où transitent les données 6 de la mémoire secondaire

Modèle simple d'estimation du coût d'une entrée/sortie (transfert) sur disque n Temps de transfert

Modèle simple d'estimation du coût d'une entrée/sortie (transfert) sur disque n Temps de transfert (entrée/sortie) de n octets – Temps. ESDisque(n) = Temps. Pos. Début + Temps. Trans (n) n Temps. Pos. Début = Temps. Dép. Bras + Temps. Rotation (10 ms) – Temps. Dép. Bras : 6 -25 ms (6 ms) – Temps. Rotation : 4, 18 à 8, 35 ms = 60 à 120 tours/sec (4 ms) n Temps. Trans(n) = n / Taux. Trans. Vrac – Taux. Trans. Vrac = Nombre. Octets. Piste / Temps. Rotation. Complète (2 M/sec) – ex: Temps. Trans(2 K) = 2 K / 2 M/sec = 1 ms n ex: Temps. ESDisque(2 K) = 10 ms + 1 ms = 11 ms n Minimiser le nombre d'entrées/sorties en mémoire secondaire 7

Importance de la contiguïté physique n Ex: transfert de 2000 secteurs de 512 octets

Importance de la contiguïté physique n Ex: transfert de 2000 secteurs de 512 octets (1 M) – Secteurs consécutifs n Temps. ESDisque(1 M) = 10 ms + 500 ms = 510 ms – Secteurs dispersés aléatoirement n Temps. ESDisque(un secteur) = 10 ms + 0, 25 ms = 10, 25 ms n Total = 2000 10, 25 = 20 500 ms = 20, 5 secs n Effet de grappe (clustering) – regrouper physiquement selon patrons d ’accès logiques 8

Contrôleur de disque n Contrôleur de disque (disk controller ) – – n Interface

Contrôleur de disque n Contrôleur de disque (disk controller ) – – n Interface du contrôleur : – – n processeur simple et indépendant de l'unité centrale de traitement DMA ( « Direct Memory Access » ) type de transfert (lecture ou écriture) adresse du premier secteur nombre de secteurs à transférer adresse du tampon Normes pour PC – IDE/ATA, SCSI 9

Autres types d'unité de mémoire secondaire Tableau comparatif des types de mémoire 10

Autres types d'unité de mémoire secondaire Tableau comparatif des types de mémoire 10

Unité de mémoire secondaire logique /physique n n Partition du disque (disk partition) –

Unité de mémoire secondaire logique /physique n n Partition du disque (disk partition) – découper un disque en plusieurs partitions – unité logique de mémoire secondaire Descripteur de disque – partitions, hiérarchie des répertoires et fichiers – maintenu sur disque 11

Organisation par bloc n Fichier ~ tableau de blocs (taille variable) – – Lire.

Organisation par bloc n Fichier ~ tableau de blocs (taille variable) – – Lire. Bloc(IN id. Interne, IN numéro. Bloc, OUT tampon. Application, …) Écrire. Bloc(IN id. Interne, IN numéro. Bloc, IN tampon. Application, …) 12

Bloc, page ou enregistrement physique n Ensemble de bits d'une taille fixe – habituellement

Bloc, page ou enregistrement physique n Ensemble de bits d'une taille fixe – habituellement n secteurs (1, 2, 4, 8, …) – traduction bloc => secteur n Unité de base de transfert de données n Unité minimale d'allocation d'espace 13

Allocation des secteurs aux blocs de Superbit n Allocation par cylindre pour minimiser déplacement

Allocation des secteurs aux blocs de Superbit n Allocation par cylindre pour minimiser déplacement du bras 14

Calcul d ’adresse relative du premier secteur d ’un bloc n no. Secteur. Relatif

Calcul d ’adresse relative du premier secteur d ’un bloc n no. Secteur. Relatif (105) – = no. Bloc (21) nb. Secteurs. Par. Bloc (5) 15

Calcul de l ’adresse physique du premier secteur du bloc n n no. Cylindre

Calcul de l ’adresse physique du premier secteur du bloc n n no. Cylindre (0) = no. Secteur. Relatif (105) DIV nb. Secteurs. Par. Cylindre (1000) où nb. Secteurs. Par. Cylindre (1000) = nb. Secteurs. Par. Piste (50) nb. Surfaces (20) n no. Surface (2) = (no. Secteur. Relatif (105) MOD nb. Secteurs. Par. Cylindre (1000)) DIV nb. Secteurs. Par. Piste (50) n no. Secteur (5) = (no. Secteur. Relatif (105) MOD nb. Secteurs. Par. Cylindre (1000)) MOD nb. Secteurs. Par. Piste (50) 16

Allocation d'espace contigu n Allocation en vrac à la création du fichier n Croissance

Allocation d'espace contigu n Allocation en vrac à la création du fichier n Croissance de la taille du fichier ? ? ? Fragmentation externe n 17

Allocation dynamique d'espace par granule n Granule d'allocation d'espace (segment, cluster, extent) – –

Allocation dynamique d'espace par granule n Granule d'allocation d'espace (segment, cluster, extent) – – n unité d'allocation d'espace ensemble de blocs consécutifs Fragmentation du fichier (file fragmentation) Défragmentation 18

Table d'allocation des fichiers (file allocation table - FAT) n Ex: granule = 1

Table d'allocation des fichiers (file allocation table - FAT) n Ex: granule = 1 bloc n Style DOS n Allocation d ’espace chaînée n Chargée en mémoire centrale 19

Taille optimale de bloc n Grande taille => – – – n effet de

Taille optimale de bloc n Grande taille => – – – n effet de grappe données transférées inutilement gaspillage d ’espace pour petits fichiers Compromis – – 2 K, 4 K, 8 K pour applications traditionnelles >> pour entrepôt de données, multimédia 20

Antémémoire (cache memory ) n Mémoire intermédiaire n Données fréquemment utilisées n Réduire le

Antémémoire (cache memory ) n Mémoire intermédiaire n Données fréquemment utilisées n Réduire le temps moyen n Antémémoire disque (disk cache) – réalisée en mémoire centrale afin d'accélérer les entrées/sorties sur un disque 21

Principe de l ’ antémémoire 22

Principe de l ’ antémémoire 22

Antémémoire n Gestionnaire de l'antémémoire disque (“disk cache manager ”) 23

Antémémoire n Gestionnaire de l'antémémoire disque (“disk cache manager ”) 23

Écriture en antémémoire 24

Écriture en antémémoire 24

Sélection d ’une victime n n n Processus #1: lire Bloc 3 et antémémoire

Sélection d ’une victime n n n Processus #1: lire Bloc 3 et antémémoire pleine ! Choix d ’une victime pour remplacement: Bloc 2 ’ qui est sale (s = 1) Évacuation de la victime 25

Remplacement de la victime 26

Remplacement de la victime 26

Stratégie de remplacement n Maximiser la probabilité d ’accès en antémémoire n Remplacer le

Stratégie de remplacement n Maximiser la probabilité d ’accès en antémémoire n Remplacer le tampon le moins récemment utilisé (Least Recently Used (LRU)) n Remplacer le tampon le moins fréquemment utilisé (Least Frequently Used (LFU)) 27