Emmagatzematge de la informació

8

Click here to load reader

Transcript of Emmagatzematge de la informació

Page 1: Emmagatzematge de la informació

Introducció a les bases de dades - Tema 0 – Introducció Autor: Miquel Boada Artigas

Emmagatzematge de la informació

Autor: Miquel Boada Artigas

Data última modificació: 30/09/2016 Pàgina 1 de 8

Page 2: Emmagatzematge de la informació

Introducció a les bases de dades - Tema 0 – Introducció Autor: Miquel Boada Artigas

Emmagatzematge de la informacióConceptes previs...............................................................................................................3

Registre..........................................................................................................................3Dada clau.......................................................................................................................3

Introducció.........................................................................................................................3Emmagatzematge fixe i variable...................................................................................4Emmagatzematge sequencial........................................................................................4Soports direccionables o aleatoris.................................................................................4

Organització de fitxers......................................................................................................4Organització directa.......................................................................................................5Organització sequencial.................................................................................................5Organització sequencial indexada.................................................................................5Indexos secundaris........................................................................................................6«Indirection» en índexos secundaris..............................................................................6Indexos de múltiples nivell............................................................................................7

Webgrafia..........................................................................................................................8

Data última modificació: 30/09/2016 Pàgina 2 de 8

Page 3: Emmagatzematge de la informació

Introducció a les bases de dades - Tema 0 – Introducció Autor: Miquel Boada Artigas

Conceptes previsAbans de proseguir amb com s'emmagatzemen les dades d'una base de dades esdonaran una sèrie de conceptes bàsics relacionats amb les bases de dades.

RegistreUn registre és un conjunt de dades sobre una mateixa informació. Així, per exemple, sitenim la informació de 10 persones, la informació de cada una d'elles és un registre.

Dada clauUna dada clau és aquella informació que ens permet diferenciar un objecte d'un altre.Per exemple, si tinc dos cotxes els puc diferenciar per la seva matrícula. La matrículaseria la seva dada clau. Per exemple, una persona la puc identificar pel seu dni però nopel nom, ja que dues persones poden tenir el mateix nom.

IntroduccióLes dades d'una base de dades es guarden en fitxers.L'estructura i les eines que s'han generat al seu entorn són lesque permeten disposar d'un motor eficient de consulta i gestió dedades, que anomenarem sistema gestor de base de dades(SGBD). L'accés al fitxers es pot veure com una doble perspectiva:

1. Visió físicaLa visió lògica és l'emmagatzematge físic de les dades enel disc. La visió física utilitza adreces del disc formadesper:unitat, superficie («heads»), pista («Track o cylinder»)i sector1. L'unitat mínima de lectura o escritura a disc éssempre el sector. Per ajudar a identificar els inicis i finalsdels sectors s'utilitzen «gaps2» .

2. Visió lògicaLa visió lògica és la que utilitza el programador i que li permet accedir a lainformació sense necessitat de saber com estan guardades físicament les dadesen el suport. El sistema operatiu és el que fa d'interfície entre les dues visions.

1 En la imatge es visualitzen els mateixos sectors per pista: és habitual que les pistes exteriors més sectors que les interiors. 2 Zones del disc no magnetitzades: aproximadament representen el 10% del disc.

Data última modificació: 30/09/2016 Pàgina 3 de 8

Imatge 1: Estructura disc

A: Pista C: Sector

D:Cluster de sectors

(wikipedia.org)

Page 4: Emmagatzematge de la informació

Introducció a les bases de dades - Tema 0 – Introducció Autor: Miquel Boada Artigas

Emmagatzematge fixe i variableUn fitxer conté informació del mateix tipus. Així, per exemple, un fitxer de clientscontindrà 1 o molts clients cada un d'ells amb les seves dades. Quan es guarda lainformació en el fitxer a nivell físic es presenten dues opcions:

1. Utilitzar una tamany fix per a totes les dadesAquesta opció vol dir que totes les dades, per exemple, cada un dels clients delnostre fitxer, ocuparan el mateix tamany físic en el disc. L'espai que sobri seràun espai malgastat.

2. Utilitzar una longitud variableCom el seu nom indica, cada una de les informacions ocupa un espai variable, osigui, l'espai que sigui necessari per a emmagatzemar la seva informació. Unclient amb poques dades ocuparà menys espai que un client que tingui moltesdades, amb la qual cosa no hi ha una despesa extra d'espai en disc. Lainformació de cada una de les dades sí que està limitada a un tamany màximque conformarà el màxim d'espai que pot ocupar cada un dels registres.

Emmagatzematge sequencialL'emmagatzematge físic sequencial de les dades és aquell que situa totes les dades unadarrera l'altre en el disc. Quan es vol llegir una dada cal recòrrer tota la informacióprèvia a la mateixa. Si per millorar les consultes es requereix introduir les dades deforma ordenada, hi ha problemes quan s'han d'insertar dades entremig d'altres dades.Els suports físics sequencials pràcticament estan limitats a la realització de còpies deseguretat i han estat substituits pels suports aleatoris. Un exemple de dispositiud'emmagatzematge sequencial seria una cinta magnètica.

Soports direccionables o aleatorisEls soports aleatoris són aquells que puc accedir directament a una informació sensenecessitat de llegir la informació prèvia. Els discos durs són dispositius d'accés aleatori,ja que l'agulla es pot posicionar directament en el sector a llegir.

Organització de fitxersQuan es crea un fitxer cal determinar el tipus d'organització que li volem assignar. Eltipus d'organització dependrà bàsicament de la funcionalitat del fitxer. El tipusd'organització és a nivell lògic, per tant, podrem tenir una organització sequencial lògicaen un dispositiu d'accés aleatori.

Data última modificació: 30/09/2016 Pàgina 4 de 8

Page 5: Emmagatzematge de la informació

Introducció a les bases de dades - Tema 0 – Introducció Autor: Miquel Boada Artigas

Organització directaEls fitxers amb organització directa permeten accedir directament a una posició delfitxer a partir de la dada clau del registre. El sistema consisteix en aplicar una funciómatemàtica a la paraula clau i el resultat és la posició física del registre. L'organització directa de fitxers té dos condicionants:

1. Només pot treballar amb registres de longitud fixe.2. Cal saber d'entrada el nombre màxim de registres que podrà contenir el fitxer, ja

que cada registre ja té una posició prefixada en el fitxer.

Organització sequencialEn l'organització de fitxers sequencial la informació es guarda a nivell lògic de formaordenada i continua en el suport d'emmagatzematge. El fet que la informació estiguiordenada, permet reduir3 el nombre de lectures a realitzar en el cas de buscar unainformació determinada. L'organització lògica sequencial és un mètode d'organitzaciómolt eficient quan es necessita accedir a tota la informació d'un fitxer, però la inserció,modificació i eliminació de dades és complexe4.L'organització sequencial és la més simple i més utilitzada, tot i que l'organitzaciódirecte5 és més eficient.

Organització sequencial indexada Un dels problemes amb els fitxerssequencials són la lentitud en la consultad'informació. Per a millorar l'eficiència de lesconsultes, es proposa la utilització de fitxerssequencials indexats. Aquesta organitzacióes basa en tenir un segon fitxer que seràl'índex (com un índex d'un llibre) per tal depoder agilitzar la cerca de la informació. Un índex està format bàsicament per ladada sobre la que voldrem buscar lainformació i una informació de l'ubicaciófísica6 del disc on hi ha la resta de lainformació. Cercant dins de l'índex(suposadament de menor tamany) s'agilitzael procés de cerca.Per a millorar el rendiment del sistema calvalorar si és millor emmagatzemar l'índexen memòria volàtil o no: un dels factorsclaus de la decisió és el propi tamany de l'índex.En l'organització sequencial indexada hi ha dos tipus d'índexos segons les referències ales adreces físiques del suport d'emmagatzematge:

3 En realitat el número de lectures es pot reduir a log2 n on n és el nombre de blocs o sectors amb informació. 4 Una de les opcions és deixar espais entre informacions per a poder insertar dades noves entremig o bé ubicar la informació en

un altre lloc del disc i fer una referència a aquesta ubicació per a poder-la enllaçar: es trenca l'ordenació o es trenca lasequencialitat física.

5 No tots els llenguatges de programació poden treballar amb aquest tipus d'organització de fitxers.6 Normalment una llista

Data última modificació: 30/09/2016 Pàgina 5 de 8

Imatge 2: Sparse index

http://osm.cs.byu.edu/CS452/supplements/FileOrg.pdf

Page 6: Emmagatzematge de la informació

Introducció a les bases de dades - Tema 0 – Introducció Autor: Miquel Boada Artigas

1. Sparse index (imatge 6)La indexació es realitza segons la dada o dades ubicades en el primer registredel primer bloc.

2. Dense indexLa indexació es realitza per a tots els registres de cada un dels blocs.

Indexos secundarisEls índexos secundaris són aquells que es creen pel camp queno està ordenat la informació. Per exemple, si tinc un fitxerd'alumnes ordenat per DNI les cerques per aquest criteriseran ràpides, ja que la informació ja estarà indexada. Sihabitualment es fan cerques per nom o altres criteris, lacreació d'un índex secundari permeten realitzar aquestes deforma eficient. Els índexos secundaris són sempre de tipus«dense»: a partir d'una dada no podem deduir la posició d'unaaltra dada.

«Indirection» en índexos secundarisUn dels problemes que tenen elsíndexos secundaris és que la informacióper la qual està indexada, si téinformació duplicada, es repeteix ladada en cada una de les entrades del'índex. Apart del major espai ocupaten el disc, les consultes són més lentes:cal llegir més blocs del disc7. Per evitarla repetició de les dades i millorar elrendiment global de les cerques, es potcrear una estructura intermitja amb totsels blocs on apareix una determinadaentrada de l'índex.

Aquesta estructura d'índexos pot ser també aprofitada per a millorar el rendiment de lescerques quan hi ha més d'un criteri de cerca. Suposem que volem buscar totes lespel·lícules de Disney de l'any 1995. El procés a seguir seria:

1. Cercar totes les adreces de bloc per les pel·lícules de la productora Disney. Cercadins de l'índex «Studio index» de la imatge. Obtenim la informació de les adrecesfísiques de bloc de la informació.

2. Cercar totes les pel·lícules de l'any 1995. Cerca dins de «Year index». Obtenim lainformació de les adreces físiques de bloc de la informació.

3. Buscar les adreces de bloc comunes (intersecció) de les adreces resultants de les

7 Les lectures als dispositius d'entrada i sortida són molt lentes en comparació a les lectures a la memòria.

Data última modificació: 30/09/2016 Pàgina 6 de 8

Imatge 3: Index secundari

Imatge 4: Exemple d'«indirection» en index secundari

Page 7: Emmagatzematge de la informació

Introducció a les bases de dades - Tema 0 – Introducció Autor: Miquel Boada Artigas

dues cerques.4. Recuperar la informació associada als blocs resultants del punt 3.

Indexos de múltiples nivellEls índexos estructurats en varis nivells millorenl'eficiència de les consultes. Es creen varis índexosamb diferents rang de dades. Cada un d'aquestíndexos apunta a un altra bloc d'índexos amb un altrerang de dades. Quan es busca una determinada dadaes fa en grups més reduïts i es limiten el númerod'operacions de lectures en disc.

Data última modificació: 30/09/2016 Pàgina 7 de 8

Imatge 5: Índex multinivell

Page 8: Emmagatzematge de la informació

Introducció a les bases de dades - Tema 0 – Introducció Autor: Miquel Boada Artigas

Webgrafiahttps://www.dlsweb.rmit.edu.au/toolbox/knowmang/content/models/network_model.htmhttp://osm.cs.byu.edu/CS452/supplements/FileOrg.pdfhttp://robotica.uv.es/pub/Libro/PDFs/CAPI6.pdfhttp://www.comphist.org/computing_history/new_page_9.htmhttps://www.seas.upenn.edu/~zives/03f/cis550/codd.pdfhttps://es.wikipedia.org/wiki/Modelo_relacional#Ventajas

Data última modificació: 30/09/2016 Pàgina 8 de 8