Tema 5 Flashcards

(29 cards)

1
Q

Què és un SGBD o DBMS? Posa exemples.

A

Software que permet gestionar (crear i manipular) Bases de Dades.

Comercialment: ORACLE, DB2, SQL Server

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Quan comença la història de les bases de dades?

A

La història de les bases de dades comença, quan s’utilitzà aquest terme per primera vegada l’any 1963 als Estats Units; no obstant, segles abans ja s’aplicava la base de dades per recol·lectar informació amb la diferència que es feia de manera manual.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Evolució dels SGBD (50s)

A

Dècada dels 50s: → Fitxers

● Una aplicació treballava amb pocs fitxers per generar un nou fitxer (processos batch) Exemple: entitat bancària
- No integritat
- No accés concurrent
- No seguretat
- Poca flexibilitat (calia reescriure les aplicacions si hi havia canvi en
les dades, en les consultes, …) …

● Es treballava amb cintes magnètiques que es llegien de forma seqüencial.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Evolució dels SGBD(60s)

A

Dècada dels 60s → BD Jeràrquiques i en Xarxa

● El 1961 Charles Bachman va dissenyar el primer SGBD generalitzat. El magatzem de dades integrals (Integrated Data Store, IDS) de General Electric. La idea fundacional de les Bases de Dades (en realitat els SGBD) era solucionar tots els problemes derivats de l’ús aïllat dels diferents fitxers.

● Sistemes centralitzats: gran ordinador (mainframes) i terminals “tontos”.

● Van aparèixer les primeres bases de dades basades en el Model de dades jeràrquic i
en xarxa.

● Les BD jeràrquiques emmagatzemen la informació en una estructura jeràrquica que podem imaginar amb una forma d’arbre invertit, on cada node pare pot tenir diferents fills. El node superior, que no té pare, es coneix com a arrel. I els nodes que no tenen fills s’anomenen fulles.
Segon Parcial. Bases de Dades

  ● Les BD en xarxa, semblant al model jeràrquic, amb registres interrelacionats mitjançant una estructura en forma d’arbre invertit, però més flexible, ja que permetia que els nodes tinguessin més d’un sol pare.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Evolució dels SGBD(70s)

A

➢ Dècada dels 70s → Model Relacional

  • Anys 1970-72
    (IBM) proposa el Model de Dades Relacional, es basa en la lògica de predicats i en la teoria de conjunts (àrees de la lògica i de les matemàtiques). Actualment, és el sistema més àmpliament utilitzat per modelitzar dades.

● Codd va definit un conjunt de 13 regles/lleis (0-12) per establir les característiques que ha de tenir una base de dades relacional. Actualment, tots els SGBD implementen aquestes regles (Wiki cast).

● Tal i com hem dit durant aquesta dècada i gràcies a Codd es van crear els dos SGBD: Relational Software System i System R, creat per IBM i utilitzant el llenguatge de consultes SEQUEL essent el precursor del llenguatge SQL.

  • Any 1976
    El doctor Peter Chen va proposar un model conceptual anomenat Entitat-Relació (ER) per tal de dissenyar Base de Dades.

● El programari de gestó de fitxers era massa senzill:

  • Tractament d’interrelacions no estava suportat.
  • Varis usuaris no podien actualitzar dades a l’hora.

● Durant la 2a meitat dels anys 70 sorgeix un programari més sofisticat: els Data Base Management System (DBMS) o Sistemes Gestors de Bases de Dades (SGBD) que permetia resoldre aquestes limitacions.

● Neix ORACLE, el SGBD més important en l’actualitat.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Evolució SGBD(80s)

A

➢ Dècada dels 80s
- Es consolida el model relacional com la base teòrica dels SGBDs Comercials.

  • Durant la dècada dels 80 IBM llança el seu motor de base de dades DB2 basant-se amb el seu System R.
  • Encara que el sistema relacional s’inventès en la dècada anterior, és en aquesta a on agafa més volada i es postula com a principal model de dades per moltes empreses utilitzant els SGBD relacionals.
  • Uns anys més tard, IBM crea el llenguatge SQL, un potent llenguatge de consultes per manipular la informació de base de dades relacionals.
  • El 1986, l’Institut Nacional Nord-americà de Normalització va publicar les primeres normes que enunciaven la sintaxi i la semàntica de l’SQL i aquest es converteix en el llenguatge estàndard de les BD relacionals.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Evolució dels SGBD(90s)

A

➢ Dècada dels 90s
- Els fabricants de SGBD consoliden els seus productes i proporcionen extensions pel suport de nous tipus de dades (imatges, multimèdia,…) SGBD són el pilar de molts sistemes Client / Servidor a través d’internet.

  • Apareixen els primers prototips de SGBD orientats a objectes (Object Database Management Systems,…).
  • A mitjans dels 90s, IBM treu una versió de DB2 capaç de dividir una base de dades enorme en varis servidors comunicats per línies de gran velocitat, creant d’aquesta manera les base de dades paral·leles / distribuïdes.
  • A finals de dècada IBM i Oracle incorporen a les seves BD la capacitat de manipular objectes, creant així, les base de dades orientades a objectes. Aquestes base de dades orientades a objectes es basen en l’existència d’objectes persistents que s’emmagatzemen pel seu processament mitjançant programes orientats a objectes. En comptes d’emmagatzemar relacions i taules.
  • Finalment, durant els anys noranta, la implantació arreu de les BD, fins i tot en petits sistemes personals, va motivar l’aparició dels anomenats llenguatges de quarta generació (4GL), els quals es continuen utilitzant en l’actualitat.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Models de Bases de dades - no SQL (característiques, perquè el seu ús…)

A
  • Des de fa poc, han entrat en joc els SGBD anomenats noSQL considerades la pròxima generació de SGBD amb els següents punts característics: no relacionals, distribuïdes, no tenir un esquema fix, open-source (algunes), fàcilment escalables de forma horitzontal.
  • Per què NoSQL?
  • La majoria dels SGBD clàssics es basen en transaccions per tal de garantir la integritat de les dades. Això assegura la consistència de les dades en totes les situacions de gestió de les dades de forma concurrent. Aquestes característiques transaccionals també connegudes com

ACID (Atomacy, Consistency, Isolation, Durability) fan que no sigui fàcil ampliar-los i escalar-los tal com es demostra en el teorema CAP.

➔ En informàtica teòrica, el teorema CAP (Consistency, Availability, Partition Tolerance), també conegut com a teorema de Brewer (Eric Brewer), formula que és impossible garantir simultàniament les tres característiques següents en una aplicació distribuïda:

  • Consistència: Tots els nodes veuen la mateixa dada al mateix temps.
  • Disponibilitat: La garantia que cada petició a un node rep una resosta de si ha
    tingut èxit o ha fallat.
  • Tolerància a la partició: El sistema continua operant malgrat la partició
    arbitrària a causa d’errors en la xarxa i això és totalment transparent pels clients.
  • Molts dels SGBD NoSQL, s’han preocupat més per tenir una alta disponibilitat i partionat disminuint les seves característiques de Consistència/Coherència.
  • Un dels principals objectius dels sistemes NoSQL és l’escalabilitat horitzontal (augmentar el número de màquines) i per fer això es necessita d’una forta tolerància de partició de xarxa que requereix renuncia a qualsevol consistència o disponibilitat.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Exemple model de base de dades No SQL

A
  • Per exemple imaginem que tenim una aplicació distribuïda de reserves d’apartaments tipus AirBnb.
  • Per millorar el rendiment tenim la base de dades distribuïda en dos continents: Europa i Amèrica.
  • Imaginem que la comunicació entre Europa i Amèrica falla. Què fem amb els clients que volen fer una reserva en el mateix apartament? Els deixem fer reserves o no? Què prioritzem?
  • Consistència: No deixem fer la reserva, perquè no sabem si Europa o Amèrica tenen una reserva per aquell apartament en concret.
  • Disponibilitat: Deixem fer la reserva i ja arreglarem els possibles problemes de consistència més endavant.

Important: ÉS EL NEGOCI/CLIENT QUE DECIDIRÀ QUÈ VOL FER!!

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Quan utilitzem el model relacional i quan el NoSQL?

A

● Quan utilitzar Relacional?

  • Estem al davant d’una mitjana o gran escala de base de dades (10-100GB) amb poca concurrència (cents d’usuaris com a màxim).
  • Quan necessitem de ACID, especialment l’Atomicitat i la Consistència; Les dades tenen moltes relacions entre elles (jerarquies, mestre-esclau, etc…);
  • Quan utilitzem poques taules (5-10 taules en
  • Quan volem emmagatzemar una àmplia varietat de dades en cents o milers de taules normalitzades.

● Els sistemes relacions estan dissenyats per ser escalats verticalment i de bon inici necessiten màquines amb molta quantitat de memòria, ràpid I/O throughput mitjançant SANs i SSDs. S’escalen ocasionalment a través de clustering i partició de les dades.

● Quan utilitzar NoSQL?

  • Volem implementar a gran escala una base de dades d’alta concurrència (cents de GB, milers d’usuaris).
  • No requerim de les regles ACID.
  • No requerim de relacions i restriccions a l’esquema de dades.
  • Quan utilitzem poques taules (5-10 taules en
  • Quan volem implementar alta disponibilitat amb costos baixos.

● Aquests sistemes són bons en molts dels llocs web (web sites). Per exemple, Google, Twitter. Creieu que és realment important si retrassen uns segons alguns tweets o fins i tot que es perdin? I si Google no mostra la informació de resultats de l’última pàgina web que s’ha creat o ell ha escanejat? O per exemple si els resultats de Google perd algun enllaç pel camí?

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Classificació de Dades NoSQL

A
  1. Orientats a documents
    - Són SGBD que gestionen dades semi estructurades. És a dir, documents. Aquests documents normalment són formats estàndards (XML, JSON, …)
    - Exemples: MongoDB.
  2. Orientats a columnes
    - Aquests tipus de base de dades estan pensades per realitzar consultes i agregacions sobre grans quantitats de dades. El seu model de dades és similar al de les BD relacionals, però emmagatzemen columnes de dades en comptes de registres.
    - Exemples: HBase, Cassandra (aquesta és un híbrid entre orientada a columnes i clau-valor).
  3. Orientats a Clau-Valor
    - Aquestes són les més senzilles d’entendre. Simplement guarden una dada (string, enter, JSON) mitjançant una clau única. Cada vegada que volem fer referència aquella dada ho hem de fer mitjançant aquesta clau.
    - Exemples: DynamoDB, Redis…
  4. Graf
    - Basades en la teoria de grafs utilitzant nodes i arestes per representar les dades emmagatzemades. Són molt útils per guardar informació en models amb moltes relacions, com xarxes, i connexions socials. Fan pensar amb els models de xarxa.
    - Exemples: Infinite Graph, Neo4j…
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Explicació Bases de Dades Distribuïdes

A
  • Un dels sectors informàtics on s’està evolucionant més darrerament, tot integrant el desenvolupament tecnològic amb la innovació metodològica, és el relatiu als sistemes distribuïts d’informació.
  • En entorns d’internet, on no podem controlar el nombre d’usuaris que es connectaran al nostre sistema, és molt important poder distribuir la càrrega.
  • Per molt dimensionat que tinguem un servidors (memòria, CPUs, disc durs) si anem afegint usuaris arribarà un moment que per limitacions físiques no podrà donar servei.
  • El primer problema que hem de resoldre és com distribuirem la nostra base de dades. Imaginem que tenim una taula ‘R’, i volem distribuir-la. Tindrem dues maneres de fer-ho:

● Rèplica: El sistema guarda vàries còpies de les dades en diferents ubicacions (redundància intencionada).

● Fragmentació: Consisteix en dividir les dades en diferents trossos de manera que a partir dels fragments, podem recomposar-los.
- Horitzontal: Dividim les taules en conjunts de registres complets.
- Vertical: Dividim les taules en els seus camps corresponents.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Explicació Bases de Dades distribuïdes avantatges i inconvenients - Rèplica

A
  1. Avantatges
    - Facilitarà molt les operacions de lectura, ja que disposarem de les mateixes dades en diferents localitzacions. Això comportarà que augmenti molt la disponibilitat de les base de dades.
    - Repartiment de càrrega: Diferents nodes executant consultes complexes.
  2. Inconvenients
    - Operacions d’actualització complexes.
    - Cada vegada que haguem de modificar unes dades, hem de realitzar-la a totes
    les ubicacions al mateix temps, ja que sinó perdríem consistència de les dades.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Explicació Bases de Dades distribuïdes - Fragmentació

A
  • Fragmentar una relació (taula) R, consisteix en dividir-la en diferents relacions: R1,R2, R3,…Rn. De manera que a partir d’aquests fragments, podem recomposar la relació original R. Tenim dos tipus:
  • Fragmentació horitzontal: Les taules les dividim en conjunts de tuples completes. Per poder crear una fragmentació horitzontal utilitzarem l’operador de selecció o delta (𝛿) sobre la relació original en el model relacional.
  • Fragmentació vertical: Si dividim les taules per un conjunt de camps. Per crear aquesta fragmentacio vertical utilitzarem l’operador de projecció pi (π).Si volem recomposar la relació utilitzarem l’operador de join natural (⋈).
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Què és el Big Data?

A
  • S’anomena Big Data, dades massives o macrodades, als conjunts d’informació el volum de les quals sobrepassa les capacitats de les eines convencionals de processament de dades.
  • També es refereix a la recopilació de totes aquestes dades i la nostra capacitat d’utilitzar-les al nostre favor en una àmplia gamma d’àrees, des dels negocis fins a la política.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

V’s del Big Data

A
  • Volum: Grans quantitats de dades a tractar. Ordres de magnitud de Petabyte – Zettabyte,…
  • Varietat: Dades estructurades, no estructurades, textos, imatges, etc…
  • Velocitat: Quantitat de temps que invertim en el processat de les dades. Terme important i a tenir en compte
    Veracitat: Fiabilitat de la informació que obtenim.

Podem afegir altres com:

● Variabilitat: Capacitat de les dades de canviar constantment. El significat d’una paraula pot variar depenent del context en el qual ens trobem.

● Valor: Convertir les dades en brut en informació útil. De tot el que fem hem d’aconseguir-ne un valor.

● Visualització: Cal un mecanisme de facilitat de lectura i comprensió d’aquestes

17
Q

Conceptes Bàsics Big Data

A

— Veure al document

18
Q

Fases del cicle de vida del Big Data

A

— Veure al document

19
Q

Casos d’ús del Big Data

A

— Veure al document

20
Q

Com saber quin SGBD escollir?

A
  • El SGBD a escollir anirà en funció dels requeriments/limitacions del projecte.
  • Principalment tindrem:
    ● Bases de dades propietàries (pagament per llicència Oracle, MSSQL)

● Base de dades lliures (Postgresql, MariaDB).

21
Q

Què és el quadrant de Gartner?

A
  • Un bon indicador de com està el mercat de les noves tecnologies és veure el famós quadrant màgic de la consultora americana Gartner, destinada a la consultoria i investigació en el mercat de les noves tecnologies.
  • Agrupa el competidors per:
    ● Líders (leaders): Són qui tenen la millor puntuació resultant de combinar l’habilitat d’execució i l’abast de visió.

● Aspirants (challengers): Caracteritzats per oferir bones funcionalitats i un nombre considerable d’instal􏰀lacions del producte, però sense la visió dels líders.

● Visionaris (visionaries): Tenen habilitat per anticipar-se a les necessitats del mercat, però en canvi no responen amb una plataforma sòlida per respondre a les necessitats a nivell global.

● Nínxols específics (niche players): Enfocats a determinades àrees de les tecnologies d’emmagatzematge de BD, però sense

22
Q

Objectius SGBD

A
  • Integrar tota la informació del sistema per evitar redundàncies sense perdre de vista les diferents perspectives que tenen els usuaris.
  • A més els SGBD que es construeixin han d’assegurar la independència, la integritat i la seguretat de les dades..
23
Q

Funcionalitats SGBD

A
  • Integració de tota la informació de l’organització.
  • Persistència de les dades.
  • Accessibilitat simultània per diferents usuaris (o aplicacions).
  • Descripció unificada de les dades i independent de les aplicacions (independència
    lògica de les dades).
  • Independència de les aplicacions respecte a la representació física de les dades (independència física de les dades).
  • Definició de vistes parcials de les dades per diferents usuaris.
  • Mecanismes per assegurar la integritat i la seguretat de les dades.
  • Consultes no predefinides i complexes.
  • Evitar dades redundants.
24
Q

Arquitectura dels SGBD (què és l’esquema d’una base de dades?, quins nivells de definició té?)

A

●Esquema d’una base de dades

  • És la descripció de: Taules, camps, relacions entre taules, restriccions,… - Metadades.

Nivells de definició de les bases de dades:
- Nivell físic: Esquema intern. descripció física (registres, índexs,…)

  • Nivell Lògic. Esquema extern. Visions dels usuaris. Esquema conceptual. Descripció única de l’esquema de la base de dades
25
Independència de les dades (nivells i explicació dels nivells)
- Independència de dades: Els canvis en un nivell no afecten a la resta. - Es distingeixin dos nivells: ● Independència física de dades (canvis en el nivell físic). ● Independència lògica de dades (canvis en el nivell lògic). - SGBDs existents: ● Independència física: sí. ● Independència lògica: parcial... -Nivell físic: ● la base de dades. ● l’esquema intern. Independència física de dades: ● Canvis en l’esquema intern no afecten a l’esquema conceptual ni l’esquema extern. ● Va més enllà de simples canvis de suport (disc o sistema de fitxers). ● Permet afegir (o treure) índexs, usar tècniques de hash,... -Nivell lògic: ● Esquema conceptual. ● Esquemes externs. - Independència lògica de dades: ● Canvis en l’esquema conceptual: només afecten als esquemes externs que tenen les entitats o els atributs canviats. ● Canvis en els esquemes externs: només afectaran als usuaris d’aquests esquemes.
26
Explicació com funciona el flux de dades i control
— Veure document
27
Quins models de dades hi ha?
- Models conceptuals pel disseny de Bases de dades: ● model d’alt nivell proper a la manera de pensar de l’usuari. ● és independent de la base de dades escollida. ● Hem estudiat el model entitat relació i el model EER. ● També es pot fer amb diagrames de classes amb UML. -Models de definició (implementació): •expressa la tècnica usada en la base de dades. •Hem estudiat el model relacional. •Altres models: jeràrquic, en xarxa, orientat a objectes, no SQL. -Models físics: Proporciona informació sobre la manera de guardar les dades en el suport físic. Depèn totalment del SGBD escollit.
28
Quins tipus d’usuaris tenim?
Tipus d’usuaris: - Administrador de la base de dades. - Dissenyadors de bases de dades. - Usuaris finals: ● usuaris informàtics. ● usuaris no informàtics dedicats.
29
Posa mínim 2 exemples de llenguatges i interfícies de BD
● Llenguatges -SQL (SELECT, INSERT, UPDATE, DELETE,...) -Llenguatges 4GL. -Interfícies visuals. -Crides a funcions (ODBC i similars). -Llenguatge hostatjat (precompiladors de SQL).