Basi di Dati

Click here to load reader

  • date post

    03-Jan-2016
  • Category

    Documents

  • view

    35
  • download

    0

Embed Size (px)

description

Basi di Dati. Sistemi per BD Relazionali: Modello Fisico Concetti Fondamentali. versione 2.0. Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina). DBMS Relazionali – Modello Fisico >> Sommario. Concetti Fondamentali. Introduzione - PowerPoint PPT Presentation

Transcript of Basi di Dati

  • Basi di DatiSistemi per BD Relazionali:Modello FisicoConcetti Fondamentaliversione 2.0Questo lavoro concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina)

    G. Mecca - [email protected] - Basi di Dati

  • Concetti FondamentaliIntroduzioneMemorieGerarchia di memorieDischi magneticiBlocchiDefinizione di Modello fisicoStrategia di gestione del discoPaginazioneDBMS Relazionali Modello Fisico >> Sommario

    G. Mecca - [email protected] - Basi di Dati

  • Concetti FondamentaliStrategia di Memorizzazione nei FileRecordFattore di bloccoDirectory del fileFile heap e file ordinatiStrategia di Accesso ai FileIndice primarioIndice secondarioDBMS Relazionali Modello Fisico >> Sommario

    G. Mecca - [email protected] - Basi di Dati

  • IntroduzioneParliamo del modello fisico dei DBMS relazionalitecniche e strutture per la memorizzazione permanente delle basi di daties: le tabelle sono salvate in file su discoIndipendente dal modello logicoNotevole impatto sulle prestazioniDBMS Relazionali Modello Fisico >> Concetti Fondamentali

    G. Mecca - [email protected] - Basi di Dati

  • Gerarchia di MemorieDBMS Relazionali Modello Fisico >> Concetti FondamentaliI livello in linea, volatile acc. diretto MBII livello in linea, pers. acc. diretto GBIII livello fuori linea, pers. acc. sequenziale TBbase di daticopie della base di dati

    G. Mecca - [email protected] - Basi di Dati

  • Dischi MagneticiSuperfici magneticheimpressionabili in modo persistenteTecnologiapiatti rotanti attorno ad un asseletti da testinefissate ad un braccio mobileDBMS Relazionali Modello Fisico >> Concetti Fondamentali

    G. Mecca - [email protected] - Basi di Dati

  • Dischi MagneticiDBMS Relazionali Modello Fisico >> Dischi MagneticiTestineMovimento bracciaBracciaPiatti

    G. Mecca - [email protected] - Basi di Dati

  • Dischi MagneticiOrganizzazione dei datiblocchiBloccounit di lettura e scritturadimensione tipica: 512 byte 8 Kbyteper leggere un bit necessario leggere tutto il blocco in cui contenutoAccesso diretto ai blocchi (block id)DBMS Relazionali Modello Fisico >> Concetti Fondamentali

    G. Mecca - [email protected] - Basi di Dati

  • Dischi MagneticiTempi di trasferimentomovimento delle testine + letturaIl movimento prevale1 blocco: 12-60msblocco successivo: 1-2msClusteringraggruppamento dei dati perch siano fisicamente vicini su discoDBMS Relazionali Modello Fisico >> Concetti Fondamentali

    G. Mecca - [email protected] - Basi di Dati

  • Modello FisicoMemorizzazione della base di dati in fileFile di grandi dimensioniverso i terabytedimensioni non compatibili con la RAMAccesso ai datii dati devono essere conservati su discoe trasportati nella RAM solo per le elab.DBMS Relazionali Modello Fisico >> Concetti Fondamentali

    G. Mecca - [email protected] - Basi di Dati

  • Modello FisicoProblemi legati alla persistenzaGestione del discocome accedere efficientemente a blocchi su discoMemorizzazione dei dati nei filecome codificare efficientemente le tabelle nei fileOttimizzazione delle operazioni sui filecome effettuare efficientemente le ricerche e gli aggiornamentiDBMS Relazionali Modello Fisico >> Concetti Fondamentali

    G. Mecca - [email protected] - Basi di Dati

  • Modello FisicoTre componentiStrategia di gestione del discoStrategia di memorizzazione nei fileStrategia di accessoFondamentale per le prestazionile operazioni sulle tabelle vengono implementate dal DBMS secondo le strategie scelteDBMS Relazionali Modello Fisico >> Concetti Fondamentali

    G. Mecca - [email protected] - Basi di Dati

  • Strategia di Gestione del DiscoBuffer Managermodulo che gestisce laccesso al discolettura e scrittura dei blocchiLivelli superioridammi il blocco X del discoTecnicabuffer di blocchi in memoria RAM per limitare laccesso al discoDBMS Relazionali Modello Fisico >> Concetti Fondamentali

    G. Mecca - [email protected] - Basi di Dati

  • Strategia di Gestione del DiscoDBMS Relazionali Modello Fisico >> Concetti Fondamentali

    Buffer Manager

    Memoria RAMblocco del disco #xxxspazio liberospazio liberoArea destinata al Bufferblocco del disco #yyyblocco del disco #zzzblocchi da 8 kByte

    ... #101... #8292#8293...#16484#16485 ...#24676#24677...#32868#32869... #41060...

    G. Mecca - [email protected] - Basi di Dati

  • Strategia di Gestione del DiscoAlgoritmi di paginazionesimili alla gestione della memoria virtualePercentuale di successo (hit ratio)percentuali di blocchi prelevati dal bufferLobiettivo massimizzare lhit ratioParametri su cui interveniredimensione del bufferalgoritmi di paginazioneDBMS Relazionali Modello Fisico >> Concetti Fondamentali

    G. Mecca - [email protected] - Basi di Dati

  • Strategia di MemorizzazioneRecord: unit di registrazione nel fileCodifica binaria di una ennuplaCodifica posizionaleordinamento degli attributimemorizzazione dei valori in sequenzarappresentazione fisica dei tipiDBMS Relazionali Modello Fisico >> Concetti Fondamentali

    G. Mecca - [email protected] - Basi di Dati

  • Strategia di MemorizzazioneDimensioni standard dei campiint, integer: 32 bit, complemento a 2real, float: 32 bit, virgola mobiledouble precision: 64 bit, virgola mobilechar: 8 bit, ASCIIchar(n): n*8 bit, ASCIIdate: 80 bit, ASCII, aaaa-mm-ggDBMS Relazionali Modello Fisico >> Concetti Fondamentali

    G. Mecca - [email protected] - Basi di Dati

  • Record, un EsempioDBMS Relazionali Modello Fisico >> Concetti FondamentaliTABLE Studenti(matricola integer NOT NULL PRIMARY KEY, cognome char(20) NOT NULL, nome char(20) NOT NULL, facolta char(10), annoCor integer);

    G. Mecca - [email protected] - Basi di Dati

  • Record di Lunghezza FissaDBMS Relazionali Modello Fisico >> Concetti Fondamentalitotale: 58 byte, 464 bit

    G. Mecca - [email protected] - Basi di Dati

  • Strategia di MemorizzazioneFattore di blocconumero di record contenuti in un blocco bfr= floor(dimBlocco/dimRecord)floor: funzione parte intera inferiore Esempio: dimBlocco = 4096 bytedimBlocco = 512 bytedimRecord= 58 bytedimRecord= 58 bytebfr = 70bfr = 8sfrido = 36 bytesfrido = 48 byteDBMS Relazionali Modello Fisico >> Concetti Fondamentali

    G. Mecca - [email protected] - Basi di Dati

  • Strategia di Memorizzazione File: sequenza di blocchiBlocco: sequenza di recordId di record: (id blocco, offset record)Struttura del fileStruttura doppiamente collegataDirectory dei Blocchi (nellheader del file) lista di puntatori ai blocchi del fileCombinazione delle dueDBMS Relazionali Modello Fisico >> Concetti Fondamentali

    G. Mecca - [email protected] - Basi di Dati

  • Tipi di File File heaporganizzazione disordinatai record vengono inseriti in codaFile ordinatoviene mantenuto lordine secondo un campo di ordinamentoi record vengono inseriti secondo lordineDBMS Relazionali Modello Fisico >> Concetti Fondamentali

    G. Mecca - [email protected] - Basi di Dati

  • File HeapDBMS Relazionali Modello Fisico >> Concetti Fondamentali

    G. Mecca - [email protected] - Basi di Dati

  • File Ordinato per MatricolaDBMS Relazionali Modello Fisico >> Concetti Fondamentali

    G. Mecca - [email protected] - Basi di Dati

  • Strategia di MemorizzazioneE necessario sceglieredimensione dei blocchiorganizzazione dei file per le tabellePrestazioni inaccettabiliE necessario avere strutture aggiuntive per laccesso ai fileStrategia di AccessoDBMS Relazionali Modello Fisico >> Concetti Fondamentali

    G. Mecca - [email protected] - Basi di Dati

  • Strategia di Accesso Operazioni sul fileAggiornamenti (inserimenti, cancellazioni)Ricerche con condizione (es: annoCor=2) Ricerche in ordine (es: studenti per matricola)Organizzazione Idealeinserimenti e cancellazioni efficientiricerca binariaevitare ordinamenti del fileDBMS Relazionali Modello Fisico >> Concetti Fondamentali

    G. Mecca - [email protected] - Basi di Dati

  • Operazioni sui File HeapInserimenti molto rapidiadatto per es. a tabelle temporaneeRicerche lineariNecessario lordinamentocreazione di una copia ordinata1M rec di 100 byte: 15 minutiPrestazioni inaccettabili per file di grandi dimensioniDBMS Relazionali Modello Fisico >> Concetti Fondamentali

    G. Mecca - [email protected] - Basi di Dati

  • Operazioni sui File OrdinatiInserimenti onerosiricerche e spostamenti Ricerche binarielog2(NB) accessi, dove NB = num. di blocchies: se dimBlocco=2048, dimFile=2GNB=1M, log2(NB)=20, pi ricerca lineare nel bloccoOrdinamentonon necessario per la chiave di ordinamentonecessario per le altre chiaviDBMS Relazionali Modello Fisico >> Concetti Fondamentali

    G. Mecca - [email protected] - Basi di Dati

  • Strategia di AccessoStrutture di accessoinsieme di strutture ausiliarie di accesso al file utilizzate per migliorare le prestazioni delle operazioniIndici: file di riferimenti al file primarioinsieme di voci (chiave, rif.) es: indice analit.pi maneggevoli perch di dim. minoriDBMS Relazionali Modello Fisico >> Concetti Fondamentali

    G. Mecca - [email protected] - Basi di Dati

  • Indice sulla MatricolaDBMS Relazionali Modello Fisico >> Concetti Fondamentalipuntatori aiblocchi

    G. Mecca - [email protected] - Basi di Dati

  • Indice sulla MatricolaEsempiodimBlocco=2048dimFile=2G NBFile =1M, log2(NBFile)=20numero di record dellindice = 1Mdimensione record indice = 4byte + 6 bytedimIndice=10MNBIndice appross. 8192, log2(NBIndice)=13DBMS Relazionali Mode