història de les bases de dades

13
Introducció a les bases de dades - Tema 0 – Introducció Autor: Miquel Boada Artigas Història de les bases de dades 1950 - …. Autor: Miquel Boada Artigas Data última modificació: 30/09/2016 Pàgina 1 de 13

Upload: miquel-boada-artigas

Post on 13-Apr-2017

23 views

Category:

Technology


2 download

TRANSCRIPT

Page 1: Història de les bases de dades

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

Història de les bases de dades 1950 - ….

Autor: Miquel Boada Artigas

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

Page 2: Història de les bases de dades

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

Història de les bases de dadesIntroducció.........................................................................................................................3

Model en bases de dades..............................................................................................3Cintes i targetes perforades (1950-1960)......................................................................3Models no relacionals (1960-1980)................................................................................4

Fitxers........................................................................................................................4Limitacions fitxers..................................................................................................5

Model jeràrquic (Hierarchical model). D’aquí a la lluna..............................................6Característiques model jeràrquic............................................................................7Limitacions model jeràrquic...................................................................................7

Model en xarxa (Network model)...............................................................................8Característiques del model en xarxa......................................................................9Desavantatges del model en xarxa......................................................................10

Models relacionals (1980)............................................................................................10Característiques dels models relacionals.................................................................10

Desavantatges del model relacional....................................................................11Bases de dades orientades a objectes.........................................................................11Bases de dades objecte relacionals.............................................................................11Bases de dades documentals......................................................................................11Bases de dades XML....................................................................................................12

Webgrafia........................................................................................................................13

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

Page 3: Història de les bases de dades

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

IntroduccióLa informació des de sempre ha estat important per les empreses. Quan no hi haviaordinadors, o aquests eren massa cars, hi havien persones a les empreses que la sevafeina consistia en anotar les dades en llibretes o registres: quantitat pendent de pagar ocobrar, registre de clients ... Amb l'aparició dels ordinadors s'ha aconseguit tenir una gestió i una consulta de lainformació «simple», ràpida i eficient. Tot i que al principi els sistemes eren«rudimentaris» els models en què es basa l'emmagatzematge de la informació ha anatmillorant per aconseguir l'eficiència en la gestió de la informació. Apart del'emmagatzematge i la gestió de la informació, és important que la informació estiguirelacionada entre ella. Si les dades són «illetes» d'informació sense relació serà moltdifícil realitzar consultes on es relacionin dades de les diferents «illetes».

Model en bases de dadesUn model en bases de dades fa referència a les regles que cal seguir per a poderrepresentar la informació en el sistema informàtic i, en última instància, en el dispositiud’emmagatzematge físic. El model representa en sí mateix una limitació en lespossibilitats, però garanteix, si s’aplica de forma correcte, que el sistema de bases dedades funcionarà de forma eficient i sense problemes segons el model aportat.Tots els models de bases de dades com a mínim han de presentar dues característiques:

1. Regles per a estructurar la informació.Per exemple, si vull fer una base de dades per un gavinet mèdic, tindré pacientsque fan visites a metges que realitzen els diagnòstics … El model cal que emdetermini com haig d’estructurar la informació dels metges , dels pacients, delsdiagnòstics… i com establir les relacions entre les diferents informacions.

2. Les operacions que podré realitzar amb la informacióEl model m’ha de determinar quines operacions (inserir, consultar, eliminar …)podré realitzar i com afectaran aquestes operacions a les dades i a les relacionsentre elles.

Cintes i targetes perforades (1950-1960)Durant els anys 50 i principi dels 60 es desenvolupen les cintes magnètiques com amedi d’emmagatzematge de la informació. La informació s’introduia a l’ordinador através de cintes o targetes perforades. Per altra banda s’introduien les instruccions quel’ordinador havia d’executar. L’ordinador realitzava els càlculs (processava) i els nousresultats eren emmagatzemats en cinta i opcionalment impressos en impressores. Elprocessament de la informació amb els medis de l’època era molt lent (comparat ambavui dia) i la lectura sequencial de les cintes era un «handicap» molt important.

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

Page 4: Història de les bases de dades

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

Models no relacionals (1960-1980)S’ha decidit dividir els sistemes amb relacionals i no relacionals donat la importànciaque ha tingut el model relacional en la informàtica ja moderna, tot i que avui dia s’estancomençant a imposar el model objecte-relacional i altres models no relacionals combases de dades XML.Durant la dècada del 60 i 70 s’imposaven els models no relacionals, bàsicament elmodel jeràrquic (hierarchical model) i el model en xarxa (network model). Abansd’incidir amb aquests models, s’introduirà una breu explicació de la creació de sistemesd’informació utilitzant fitxers i les limitacions que presenta aquest sistema.

Fitxers

L'aparició de les bases de dades , tal i com les entenem avui dia, comencen ambl'aparició del disc dur l'any 1960. El disc dur és un dispositiu, que a diferència de la cintamagnètica, permet l'accés directe a la informació: possibilitat d'accedir a una dadasense necessitat de llegir totes les dades precedents.La idea d'utilitzar fitxers prové de l'aplicació directa de l'emmagatzematge de lainformació amb arxivadors. Cada arxivador conté una sèrie de fitxes ordenades i cadafitxa conté unes dades associades a una etiqueta. A nivell informàtic un fitxer és un conjunt de dades organitzades amb una determinadaestructura. Els fitxers permeten emmagatzemar les dades de forma permanent i, pertant, poder-los recuperar en qualsevol moment posterior. En relació a l'estructura delfitxer pot venir determinada per un usuari, pel sistema operatiu o per un programador.En el procés manual quan una persona vol obtenir una determinada informació accedeixa l'arxivador i dins el mateix busca la fitxa o fitxes amb la informació necessària. En elprocés informàtic caldrà primer accedir al fitxer (arxivador) i buscar dins el seucontingut la fitxa o fitxes necessàries. Està clar que en el procés informàtic s'inclouenprogrames que faciliten i acceleren aquesta feina, de forma que l'usuari, per exemple,no tingui necessitat de saber ni tan sols com es diu el fitxer.Cal tenir clar que en les bases de dades modernes es continua utilitzant fitxers per aguardar la informació. Quan en el següent punt s’anomenen algunes de les limitacionsdels fitxers es fa referència a la creació d’una base de dades només amb fitxers senseutilitzar cap software específic ja desenvolupat.

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

Page 5: Història de les bases de dades

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

Limitacions fitxers1

1. El fet que els programes siguin personalitzats per a cada fitxer, fa que si esmodifica l'estructura d'un fitxer calgui modificar també els programes per poder-hiaccedir: dependència d’estructura.

2. Si cal afegir una dada per una determinada fitxa , cal incloure aquella informació atotes les fitxes. Per exemple, si es vol informar de l'email d'una persona, caldràque totes les persones tinguin també informació sobre aquest email.

3. Redundància de la informació: si el fitxer conté molta informació es pot donar elcas que per error es puguin duplicar dades.

4. Consistència de la informació: el fet que no hi hagi control de duplicats pot incidirque la informació sigui incoherent: no tota la informació duplicada té el mateixvalor (errors ortogràfics, d’introducció de la informació ...).

5. Dificultats per la inserció ordenada de noves dades i la modificació de lesmateixes.

6. Compartició de la informació: la compartició de la informació no és eficient. Si esvol evitar que dos usuaris modifiquin una mateixa dada cal bloquejar tot el fitxer.Si es bloqueja tot el fitxer no hi ha possibilitat que dos usuaris modifiquin duesdades diferents d'un mateix fitxer.

7. La validació de la informació introduïda cal realitzar-la a nivell de programa (perexemple, l'increment de salari no pot ser superior al 2%). Si canvia la validació calcanviar també tots els programes on es s'implementi la validació.

8. Consultes complexes són complicades: quan en una consulta cal obtenirinformació emmagatzemada en diferents arxius cal realitzar programescomplexos.

9. El sistema implementa seguretat (edició, lectura, eliminació, modificació) a nivelld'arxiu, però no a nivell de detall de la informació. O pot modifcar totes les dadesde l'arxiu o no en pot modificar cap.

10. Atomicitat: quan és necessari modificar dades de diferents llocs no es potgarantir que l'operació no quedi a mitjes. Per exemple, si es fa un traspàs bancarientre dos clients, cal realitzar dues operacions: anotar l'increment de diners perun client i la disminució per l'altre. Si hi ha algun problema que impedeixi que esrealitzi la segona operació , la informació queda inconsistent.

11. No es garenteix la integritat de les dades. Per exemple, si vull representar enfitxers les especialitats que exerceix un metge, es podrà donar d’alta un metgesense que s’hagi d’introduir (ni existeixi) cap especialitat en el sistema.

1 El fet que les limitacions estiguin limitades no està relacionat amb la importància que pugui tenir cada un dels punts.

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

Page 6: Història de les bases de dades

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

Model jeràrquic (Hierarchical model). D’aquí a la lluna

El model jeràrquic es va desenvolupar en primer lloc per l’empresa IBM per a podertenir un control de totes les peces de la nau especial Apollo, que havia d’enviar unapersona a la lluna i retornar-la a la terra. La primera base de dades jeràrquica es vadissenyar i desenvolupar l’any 1966. La primera instal·lació es va realitzar dos anysdesprés (1968). Tenia el nom de Information Control System (ICS) i el seu objectiu era lade tenir un control de totes les peces necessàries per a construir el primer cohet queenviaria l’home a la lluna. El 1969 el sistema ICS passa a rebatejar-se com a IMS/360(information management system). Cal tenir en compte que encara hi ha empreses queutilitzen el sistema IMS2.El model jeràrquic es caracteritza per a relacionar la informació a través d’un arbre, ons’estableix la relació entre la informació de pare a fill.En el model jeràrquic es parteix d’un node que és l’arrel de l’arbre i a partir d’aquí esvan establint les diverses relacions entre les diferents dades que conformaran la basede dades.

2 https://www-01.ibm.com/software/data/ims/

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

Imatge 2: Representació model físicImatge 1: Representació model jeràrquic per a un gavinetmèdic

Page 7: Història de les bases de dades

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

Característiques model jeràrquic

1. Independència de dispositiuPer l’utilització exhaustiva que s’estava realitzant del sistema informàtic i perl’evolució pròpia de l’època, es tenia clar que els dispositius d’emmagatzematgeanirien evolucionant. Era imprescindible crear un software que pogués funcionaramb qualsevol dispositiu.

2. Independència de dadesEls programes que dónen accés a les dades continuen funcionant si les dadescanvien. Per exemple, si canvio una dada de «float» a «integer» no cal realitzarcanvis als programes per accedir al seu valor.

3. Eficiència d’emmagatzematgeEn aquella època els discos tenien un tamany molt reduït. Calia montar unsistema eficient per a minimitzar el temps de gravació de la informació.

4. Integritat de les dadesEl sistema havia d’assegurar que les dades sempre fossin coherents. Perexemple, si una peça s’havia d’acoplar a una altra peça, les dues peces hand’existir en el sistema!

5. Eines per la recuperació de dadesEl model jeràrquic incorpora eines pròpies per a la recuperació de dades.

6. Compartició de dadesEs poden definir quines operacions podrà realitzar cada usuari per a cada unade les dades.

Limitacions model jeràrquic

El model jeràrquic , com veurem a continuació , presenta algunes limitacions que fa quenomés sigui aplicable en alguns casos particulars.

1. Implementació complexe.Per a implementar el software cal tenir coneixements de l’estructura física delsdispositius d’emmagatzematge.

2. Dependència en l’estructura de la base de dades.Tot i que el sistema jeràrquic contempla la independència de les dades laindependència en relació a l’estructura de les dades no està suportada. Així, perexemple, si cal afegir una nova informació «email» a la fitxa de clients, ésnecessari reajustar els programes ja existents.

3. Creació de programes complexe.El sistema de punters i la pròpia naturalesa de les bases de dades jeràrquiquesfa que el desenvolupament de les aplicacions sigui complex. Els programadorsnecessiten saber com les dades estan distribuides físicament en el disc. Es diuque és un sistema creat per programadors per tal que l’utilitzin programadors.

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

Page 8: Història de les bases de dades

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

4. Relacions n:m no estan suportadesEn el nostre exemple d’un gavinet mèdic, un metge només pot tenir unaespecialitat o bé un client no pot visitar a més d’un doctor. Per a poder cubriraquestes relacions de forma standard, cal duplicar la informació. En la imatge esmostra com un metge pot tenir dues especialitats assignades.

5. Duplicitat de la informacióCom s’ha vist en el punt anterior, per a poder representar algunes relacions calduplicar la informació. Els problemes de la duplicitat de la informació , apart del’espai en disc, són les actualitzacions de les dades que presenten una majorlentitud i complexitat.

6. EstàndardsNo es disposa d’una documentació precisa dels conceptes del model ni el models’ajusta a cap estàndard.

Model en xarxa (Network model)

El model en xarxa es formalitza a final dels anys 60 i està estandaritzat com a modelCODASYL. Es tracta d’un model semblant al jeràrquic, però la relació entre les diferentsinformacions es tracta mitjançant nodes.

Per veure com implementa les relacions el modelen xarxa utilitzarem un exemple. Seguint enl’exemple del gavinet mèdic guardarem lainformació dels metges , pacients i els seusdiagnòstics (per facilitar la comprensió hemeliminat les especialitats).Les diferents relacions que hi ha són que un metgevisitarà molts pacients i un pacient pot ser visitatper diferents metges. Un client tindrà moltsdiagnòstics, però un diagnòstic només serà per unpacient.En la imatge es pot observar com la relació que hiha entre la informació de pacient i la de doctor hagenerat un nou element que s’ha indicat amb elnom de Visita. Aquest element conté a més unainformació del tipus de visita (programada,urgència …) que s’ha realitzat.

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

Imatge 3: Jerarquia no vàlida

Imatge 4: Representació model en xarxa

Page 9: Història de les bases de dades

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

Característiques del model en xarxa

✔ Permet relacions N:M

Els problemes que existien en el model jeràrquic per a representar que unmetge exerceix vàries especialitats i que una especialitat és exercida per varismetges són suportades de forma estàndard en el model en xarxa.

✔ Millora l’accés a les dades

Els mecanismes de navegació entre els diferents nodes és més eficient jas’estableixen més enllaços entre els diferents tipus d’informació.

✔ Integritat de les dades

Si hi ha una relació entre dues informacions, per exemple doctor i pacient, elsistema garanteix que existeixen les dues informacions o bé la relació no espodrà dur a terme.

✔ Independència de dispositiu

✔ Independència de dades

✔ Existència d’estàndards

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

Page 10: Història de les bases de dades

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

Desavantatges del model en xarxa

✗ Implementació complexe i desenvolupament complex

El model en xarxa es basa en l’existència de punters que relacionen lainformació. La implementació d’aquests punters requereixen coneixements del’emmagatzematge físic de les dades.

✗ Dependència en l’estructura de la base de dades.

Igual com passava amb el model jeràrquic la independència de l’estructura dedades no està suportada.

Models relacionals (1980)Tot i que s’ha indicat l’època dels 80 com a naixement dels models relacionals cal dir,per ser justos, que aquests es varen desenvolupar a partir d’un article de Edgar Frank"Ted" Codd publicat el 1970. El rendiment dels models relacionals no podia competiramb els models jeràrquics i de xarxa, que eren molt més eficients. L’aparició de la basede dades relacional System R desenvolupada per IBM va fer que la situació es capgirés iels sistemes relacionals es varen començar a imposar en el mercat.

Característiques dels models relacionals

1. Representació de la informacióEl sistema permet representar gairebé tots els tipus de dades i establir de formafàcil la relacions entre les diverses dades.

2. Facilitat d’úsLa disposició d’un llenguatge propi d’alt nivell permet accedir a les dades deforma més fàcil. El programador només es preocupa d’accedir a les dades,sense necessitat de saber com es guarden físicament en el disc.

3. Independència de les dades i estructura de dadesEs poden realitzar alguns canvis en l’estructura de les dades i continuar fent úsdels programes ja existents sense necessitat d’introduir canvis.

4. Independència físicaL’emmagatzematge de les dades és totalment independent dels programes,podent-se utilitzar qualsevol sistema d’arxius o bé sistemes d’arxius diferentsper una mateixa base de dades.

5. Integritat de les dadesEl sistema garanteix que les dades sempre siguin coherents. El sistema controlatambé que no hi hagi duplicitat d’informació: per exemple, que la informaciód’un client estigui dues vegades en la base de dades.

6. Compartició i bloquejosEl sistema controla l’accés multiusuari a les dades i permet definir la seguretaten diferents nivells. Quan hi ha modificacions concurrents, el sistema bloquejanomés una part d’informació, per tal que no es produeixin inconsistències.

7. EscalableEl sistema permet un creixement gradual per a poder-se adaptar a lesnecessitats de cada moment.

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

Page 11: Història de les bases de dades

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

8. EstàndardsHi ha nombrosa documentació tant del model com dels diferents llenguatgesque implementa.

Desavantatges del model relacional

✗ Incompetència amb objectes

L’estructura de la informació dels models relacionals no s’adapten a larepresentació de dades que uitlitzen els llenguatges de programació moderns:cal fer programes intermitjos per a transformar les dades del model relacional almodel de dades del llenguatge.

✗ Informació multimèdia, gràfica ...

El model relacional no incorpora eines per a poder treballar amb aquest tipus dedades o informacions.

Bases de dades orientades a objectesEl sistema relacional és un sistema molt implantat en el món empresarial. Aquestsistema però té un problema molt important que és la comunicació amb els llenguatgesde programació que s’utilitzen actualment: llenguatges orientats a objecte. Quan esnecessita gestionar una informació , cal transformar aquesta informació a un o varisobjectes i després poder operar sobre ells. Per evitar aquesta transformació es vapensar en montar bases de dades orientades a objectes.

Bases de dades objecte relacionalsLes bases de dades orientades a objectes , tot i ser una bona idea, no es varen acabarimposant en el mercat ja que el model relacional és una solució molt eficient alsrequeriments dels usuaris. Les bases de dades objecte relacionals neixen de la idea d’aprofitar tota la potència delsllenguatges orientat a objectes i del model relacional creant sistemes gestors de basesde dades que barregessin els dos conceptes. Caldrà veure si aquests sistemes s’acabenimposant a les bases de dades relacionals.

Bases de dades documentalsEls sistemes gestors de bases de dades relacionals tenen un problema quan han derepresentar grans informacions. Així, per exemple, l’emmagatzematge de videos, audioi textos grans, tot i que està permès, presenten problemes amb la representació i cercade la informació. Les bases de dades documentals varen crear-se per a poder gestionartota classe de «documents» sense aplicar el model relacional.

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

Page 12: Història de les bases de dades

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

Bases de dades XMLUn dels problemes que hi ha amb les bases de dades relacionals és que tot i quel’estructura de la informació es pot canviar alguns canvis poden afectar als programes ,essent necessaris canvis en aquests. Per exemple, quan es defineix un objecte:treballador, client, article … en el model relacional tots han de tenir les mateixescaracterístiques. Si d’un client vull guardar el seu nif, nom, adreça, email i telèfon totsels clients tindran una estructura per a poder emmagatzemar aquesta informació. Si esvol afegir una nova dada, per exemple «data de naixement», es modificarà l’estructurade tots els clients: a tots els clients podré emmagatzemar la data de naixement3. Lesbases de dades XML defineixen una estructura pròpia per a cada element: per a cadaclient puc decidir, per exemple, si vull que se li pugui informar o no de la data denaixement.Les bases de dades XML no tenen la intenció de substituir al model relacional. Algunssistemes gestors de bases de dades relacionals incorporen la possibilitat de treballaramb bases de dades XML. La idea és disposar d’una eina molt flexible quan s’han deguardar petites informacions però amb una estructura de dades molt variable.

3 En alguns casos aquesta opció ja és adequada.

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

Page 13: Història de les bases de dades

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 13 de 13