ì BASI DI DATI DISTRIBUITE - people.unica.it · 2016-12-13 · ì BASI DI DATI DISTRIBUITE...

17
ì BASI DI DATI DISTRIBUITE Definizione ì Un sistema distribuito è costituito da ì un insieme di nodi (o di siti) di elaborazione ì una rete dati che connette fra loro i nodi ì Obiettivo: far cooperare i nodi per la soluzione di un problema complesso ì suddivisione del problema in sottoproblemi più semplici ì coordinamento fra i nodi per ottenere la soluzione in modo efficiente 2

Transcript of ì BASI DI DATI DISTRIBUITE - people.unica.it · 2016-12-13 · ì BASI DI DATI DISTRIBUITE...

ìBASI DI DATI DISTRIBUITE

Definizione

ì Unsistemadistribuitoècostituitodaì uninsiemedinodi(odisiti)dielaborazione

ì unaretedaticheconnettefraloroinodi

ì Obiettivo:farcooperare inodiperlasoluzionediunproblemacomplesso

ì suddivisionedelproblemainsottoproblemi piùsemplici

ì coordinamento frainodiperottenerelasoluzioneinmodoefficiente

2

Cenni storici

ì Primiprototipidibasididatidistribuite(DDB)neglianni‘80e’90

ì Problematichedaaffrontareì distribuzionedeidati

ì replicadeidati

ì interrogazionidistribuite

ì gestionedelletransazioni

ì gestionedeimetadatidellabasedidatidistribuita

3

Concetti principali

ì Unabasedidatisidicedistribuitaseì Inodi (siti)dellabasedidatisonoconnessi fraloro

attraversounaretedicomunicazioneì inodipossonoesseredistribuitigeograficamenteì latipologiaetopologiadellaretepossonoavereun

impattosignificativosulleprestazioni

ì Idatimemorizzatineidiversinodi hannounaqualcherelazionelogicafradiloro

ì Ivarinodi non devononecessariamenteessereomogenei perquantoriguardaidati,l’hardwareoilsoftware

4

Trasparenza

ì Lacomplessitàdell’architetturadiunaDDBdeveesseretrasparente siaagliutentifinali,siaaglisviluppatoriì analogoallaindipendenzalogicaefisicadeidati

ì Trasparenza rispettoaì organizzazionedeidati

ì locationandnaming transparency

ì replicadeidati

ì frammentazioneorizzontaleeverticale

ì progettazioneeesecuzionedelletransazioni

5

Esempio di distribuzione e replica dei dati

6

Disponibilità e Affidabilità

ì Disponibilità (Availability)ì Probabilitàcheilsistemasiadisponibileinmodo

continuativoinunintervalloditempo

ì Affidabilità (Reliability)ì Probabilitàcheilsistemasiainesercizioinuncerto

istanteditempo

ì Faulttoleranceì tolleranzadelsistemaalverificarsidi

malfunzionamenti

7

Scalabilità

e Tolleranza al Partizionamento

ì Scalabilitàflessibilitàdelsistemanell’espanderelapropriacapacitàsenzainterrompereleoperazionicorrentiì Scalabilitàorizzontale

ì incrementodeinodidiunsistemadistribuito

ì Scalabilitàverticaleì incrementodellacapacitòdelsingolonodo

ì TolleranzaalPartizionamentocapacitàdelsistemadierogareilservizioinpresenzadinodidelsistemanonraggiungibiliì ilsistemaèpartizionato ingruppidinodichenon

comunicanofradiloro

8

Autonomia

ì Capacitàdeisingolinodidierogareunservizioautonomamenteì Autonomiadaprogetto

infasedimodellazionedeidatieperlagestionedelletransazioni

ì Autonomiadicomunicazioneilgradodicondivisionediinformazioneconaltrinodi

ì Autonomiainesecuzionegradodiindipendenzainfasediesecuzione

9

Vantaggi delle Basi di Dati Distribuite

ì Maggiorfacilitàeflessibilitànellosviluppo diapplicazioni

ì Maggioredisponibilitàdelservizioì isolamentodeinodiincasodimalfunzionamentoì replicadeidatiindiversinodi

ì Maggioriprestazioniì idatisonoframmentati inmodochesianovicini al

luogodovevengonorichiesti

ì Espansionefacilitatagrazieallascalabilità

10

ìFRAMMENTAZIONE E REPLICA

11

Frammentazione e Sharding

ì Infasediprogettooccorreindividuareleunitàlogichedellabasedidatichepossonoesseredistribuiteì Lerelazionistesse

ì Partizioniorizzontali(shard)dellerelazioniì corrispondonoaunaselezione inalgebrarelazionale

ì Partizioniverticalidellerelazioniì corrispondonoaunaproiezione inalgebrarelazionale

ì Frammentazionemista(ibrida)ì combinazionedipartizionamentoorizzontaleeverticale

12

Esempio

13

Impiegati del dipartimento 5

Esempio

14

Impiegati del dipartimento 4

Replica

ì Mantenerepiùcopiediunostessodatoinsitidistinti.ì Miglioraladisponibilità

ì Miglioraleprestazioniinfasediinterrogazione

ì Possibilirallentamentiinfasediaggiornamento

ì Individuareunabuonapoliticadidistribuzionedeidati perframmentazioneereplicarichiedelasoluzionediunproblemadiottimizzazionecomplesso

15

ìMODELLI DI DISTRIBUZIONE DEI DATI

Giorgio Giacinto 2015

Sharding

Giorgio Giacinto 2015

ì L’archiviononècentralizzatomaidatisonoframmentati inarchividistintiì utilequandoapplicazionieutentiaccedono

prevalentementesoloaunodeiframmenti

Replicazione master-slave

basi di dati con elevata frequenza di letture

Giorgio Giacinto 2015

ilmaster èilcollodibottigliael’anellodebolediquestaconfigurazione

Replicazione peer-to-peer (P2P)

Giorgio Giacinto 2015

Tuttiiserverhannolostessoruolo.Questasoluzionegarantisceridondanza,parallelismoescalabilità.Problema:garantirelacoerenza.

Soluzioni miste: master-slave e sharding

Giorgio Giacinto 2015

Soluzioni miste: peer-to-peer e sharding

Giorgio Giacinto 2015

ìMAP-REDUCE

Giorgio Giacinto 2015

Map

Giorgio Giacinto 2015

daunaggregatoauninsiemedicoppiechiave-valore

Vantaggi della fase di map

ì Consentedisuddividereunproblemainsottoproblemi parallelizzabili

ì Isottoproblemi possonoessereeseguitidadiversinodidiuncluster

ì Lafasemap agiscealivellodisingolorecord

ì Lafasereduce combinaivalorididiversecoppiechiave-valorechecondividonolastessachiave

Giorgio Giacinto 2015

Reduce

Giorgio Giacinto 2015

Partizionamento map-reduce

Giorgio Giacinto 2015

ìARCHITETTURE FISICHE

27

Shared-Nothing

ì Sistemimultiprocessoreadaccoppiamentostrettoì Condividonomemoriaprincipaleesecondaria

ì Sistemimultiprocessoreadaccoppiamentolascoì Condividonolamemoriasecondariamahanno

memoriaprimariaseparata

ì UnDBMSchesfruttaquestearchitettureèdettoparallel DBMSel’architetturashared nothingì nonèpresentedistribuzionedeidati,masolo

distribuzionedelcaricocomputazionale

28

Esempio shared-nothing

29

parallel database

Base di dati centralizzata

con accesso distribuito

30

Architettura per Basi di Dati Distribuite

31

Schema Architetturale

Basi di Dati Distribuite

32

Architettura Three-Tier Client/Server

33