Concorrenza, lucidi integrativi
|
|
- Liliana Sacco
- 8 anni fa
- Visualizzazioni
Transcript
1 Concorrenza, lucidi integrativi Paolo Atzeni, gennaio 2001 Anomaly 5: Phantom Transaction t 1 Transaction t 2 bot read salaries of employees in dept A and compute average bot insert new employee in Dept A commit read salaries of employees in dept A and compute average commit 29/01/2001 Paolo Atzeni, Concorrenza, lucidi integrativi 2 1
2 Anomaly 5: Phantom, again Transaction t 1 Transaction t 2 bot bool:=(there is BD course) if not bool then insert BD course... commit bot bool:=(there is BD course) if not bool then insert BD course... commit 29/01/2001 Paolo Atzeni, Concorrenza, lucidi integrativi 3 CSR e VSR Ogni schedule conflict-serializzabile è view-serializzabile, ma non necessariamente viceversa Controesempio per la non necessità: r1(x) w2(x) w1(x) w3(x) view-serializzabile: view-equivalente a r1(x) w1(x) w2(x) w3(x) non conflict-serializzabile Sufficienza: vediamo 29/01/2001 Paolo Atzeni, Concorrenza, lucidi integrativi 4 2
3 CSR implica VSR CSR: esiste schedule seriale conflict-equivalente VSR: esiste schedule seriale view-equivalente Per dimostrare che CSR implica VSR è sufficiente dimostrare che la conflict-equivalenza C implica la view-equivalenza V, cioè che se due schedule sono C allora sono V Quindi, supponiamo S 1 C S 2 e dimostriamo che S 1 V S 2 I due schedule hanno: stesse scritture finali: se così non fosse, ci sarebbero almeno due scritture in ordine diverso e poiché due scritture sono in conflitto i due schedule non sarebbero C stessa relazione legge-da : se così non fosse, ci sarebbero scritture in ordine diverso o coppie lettura-scrittura in ordine diverso e quindi, come sopra sarebbe violata la C 29/01/2001 Paolo Atzeni, Concorrenza, lucidi integrativi 5 CSR e aciclicità del grafo dei conflitti Se uno schedule S è CSR allora è C ad uno schedule seriale. Supponiamo le transazioni nello schedule seriale ordinate secondo il TID: t 1, t 2,, t n. Poiché lo schedule seriale ha tutti i conflitti nello stesso ordine dello schedule S, nel grafo di S ci possono essere solo archi (i,j) con i<j e quindi il grafo non può avere cicli, perché un ciclo richiede almeno un arco (i,j) con i>j. Se il grafo di S è aciclico, allora esiste fra i nodi un ordinamento topologico (cioè una numerazione dei nodi tale che il grafo contiene solo archi (i,j) con i<j). Lo schedule seriale le cui transazioni sono ordinate secondo l ordinamento topologico è equivalente a S, perché per tutti i conflitti (i,j) si ha sempre i<j. 29/01/2001 Paolo Atzeni, Concorrenza, lucidi integrativi 6 3
4 Controllo della concorrenza in pratica Anche la conflict-serializabilità, pur più rapidamente verificabile, è inutilizzabile in pratica La tecnica sarebbe efficiente se potessimo conoscere il grafo dall inizio, ma così non è: uno scheduler deve operare incrementalmente, cioè ad ogni richiesta di operazione decidere se eseguirla subito oppure fare qualcos altro; non è praticabile mantenere il grafo, aggiornarlo e verificarne l aciclicità ad ogni richiesta di operazione Inoltre, la tecnica si basa sull ipotesi di commit-proiezione In pratica, si utilizzano tecniche che garantiscono la conflict-serializzabilità senza dover costruire il grafo non richiedono l ipotesi della commit-proiezione 29/01/2001 Paolo Atzeni, Concorrenza, lucidi integrativi 7 Two-phase locking (2PL) 2PL (Two-Phase Locking, Locking a due fasi ): Protocollo che impone a ciascuna transazione di acquisire tutti i propri lock prima di iniziare a rilasciarne (o, in altre parole, che impedisce l aquisizione di nuovi lock a transazioni che ne abbiano gia rilasciati) Uno scheduler 2PL e e uno scheduler che genera solo schedule 2PL cioe schedule in cui tutte le transazioni rispettano il protocollo 2PL (e gestisce i lock come visto in precedenza) 29/01/2001 Paolo Atzeni, Concorrenza, lucidi integrativi 8 4
5 2PL e CSR Ogni schedule 2PL e anche conflict serializzabile, ma non necessariamente viceversa Controesempio per la non necessita : r 1 (x) w 1 (x) r 2 (x) w 2 (x) r 3 (y) w 1 (y) Viola 2PL Conflict-serializzabile Sufficienza: vediamo 29/01/2001 Paolo Atzeni, Concorrenza, lucidi integrativi 9 2PL implica CSR S schedule 2PL Consideriamo per ciascuna transazione l istante in cui ha tutte le risorse e sta per rilasciare la prima Ordiniamo le transazioni in accordo con questo valore temporale e consideriamo lo schedule seriale corrispondente Vogliamo dimostrare che tale schedule è equivalente ad S: allo scopo, consideriamo un conflitto fra un azione di t i e un azione dei t j con i<j; è possibile che compaiano in ordine invertito in S? no, perché in tal caso t j dovrebbe aver rilasciato la risorsa in questione prima della sua acquisizione da parte di t i 29/01/2001 Paolo Atzeni, Concorrenza, lucidi integrativi 10 5
6 Basic timestamp mechanism The scheduler has counters RTM(x) and WTM(x) for each object: RTM(x): the youngest transaction that has read x WTM(x): the youngest transaction that has written x The scheduler receives read and write requests: read(x,ts): if ts < WTM(x) then the request is rejected and the transaction is killed, otherwise the request is accepted and RTM(x) is set equal to the greater of RTM(x) and ts write(x,ts): if ts < WTM(x) or ts < RTM(x) then the request is rejected and the transaction is killed, otherwise the request is accepted and WTM(x) is set equal to ts Each schedule is conflict-equivalent to the serial schedule (induced by the timestamps), so TS implies CSR 29/01/2001 Paolo Atzeni, Concorrenza, lucidi integrativi 11 Inefficiencies of TS The method causes the forced abort of a large number of transactions To avoid dirty reads, the system must buffer writes until commit, and this introduces waiting of transactions 29/01/2001 Paolo Atzeni, Concorrenza, lucidi integrativi 12 6
7 2PL vs TS Sono incomparabili Schedule in TS ma non in 2PL r 1 (x) w 1 (x) r 2 (x) w 2 (x) r 0 (y) w 1 (y) Schedule in 2PL ma non in TS r 2 (x) w 2 (x)r 1 (x) w 1 (x) Schedule in TS e in 2PL r 1 (x) r 2 (y) w 2 (y) w 1 (x) r 2 (x) w 2 (x) 29/01/2001 Paolo Atzeni, Concorrenza, lucidi integrativi 13 Comparison 2PL vs TS In 2PL the transactions are put in waiting. In TS they are killed and then restarted The serialization order in 2PL is imposed by locks, while in TS it is imposed by the timestamps The necessity of waiting for the commit of the transaction causes strict 2PL and buffering of writes in TS 2PL can give rise to deadlocks (discussed next) Restarting costs more than waiting: 2PL wins! 29/01/2001 Paolo Atzeni, Concorrenza, lucidi integrativi 14 7
8 Granularita dei lock I lock possono essere acquisiti a diversi livelli di granularita : Tutta la base di dati Tutta una relazione Parte di una relazione (con criterio logico e fisico) Singola ennupla Vantaggi e svantaggi: Granularita fine: Riduce le probabilita di conflitto Richiede piu operazioni Granularita grossolano: Il contrario Permette forme di predicate-locking 29/01/2001 Paolo Atzeni, Concorrenza, lucidi integrativi 15 Predicate locking Anomalia phantom : Inserimento di una ennupla, dopo aver verificato che non ce ne sia un altra con lo stesso valore della chiave Puo essere evitata con un lock a livello dipredicato Concettualmente, su una parte di relazione che soddisfa una condizione (valore della chiave) in pratica sull indice 29/01/2001 Paolo Atzeni, Concorrenza, lucidi integrativi 16 8
9 Tuning dei lock e della granularita Compito del progettista (fisico) e del DBA Parametri a disposizione Granularita ; criteri base: A livello di ennupla per transazioni brevi e locali A livello di pagina per transazioni medie che sfruttino l ordinamento fisico A livello di relazione (o base di dati) per transazioni che ne coinvolgano porzione significativa Soglia (numero massimo di lock) oltre la quale si passa ad una granularita meno fine ( lock escalation ) Dimensione della tabella di lock 29/01/2001 Paolo Atzeni, Concorrenza, lucidi integrativi 17 Deadlock resolution techniques A deadlock is a cycle in the wait-for graph which indicates wait conditions between transactions (node=transaction, arc=wait condition). Three techniques: 1. Timeout (most used; problem: choice of timeout with tradeoffs) 2. Deadlock detection 3. Deadlock prevention Deadlock detection: performs the search for cycles in a wait-for graph Deadlock prevention: kills the transactions that could cause a cycle (thus: it overkills) 29/01/2001 Paolo Atzeni, Concorrenza, lucidi integrativi 18 9
10 Prevenzione dello stallo Si basa su note condizioni necessarie per lo stallo; evitandone almeno una, lo si impedisce hold and wait: in caso di stallo, ci deve essere una transazione con risorse assegnate e in attesa su altre. Per evitare questo si possono assegnare tutte le risorse in blocco a ciascuna transazione. Poco efficiente: occorre attendere che tutte le risorse siano libere. circular wait: ci deve essere una situazione di attesa circolare. Per evitare questo si considerano i timestamp delle transazioni, e si impone che una transazione possa porsi in attesa solo su un dato detenuto da una transazione piu giovane, altrimenti una delle due deve essere abortita. Causa un numero eccessivo di restart (molto superiore al rischio di stallo) ed e difficile scegliere la vittima (con rischio di blocco individuale, o starvation). 29/01/2001 Paolo Atzeni, Concorrenza, lucidi integrativi 19 Isolation levels offered by SQL2 Some transactions are defined as read-only (they can t request exclusive locks and cannot write [except for temporary ones]) The level of isolation can be set for each transactions Read uncommitted no concurrency control, allows all anomalies Read committed avoids dirty reads and lost updates, but not inconsistent reads and phantoms Repeatable read allows phantoms, avoids other anomalies Serializable avoids all anomalies 29/01/2001 Paolo Atzeni, Concorrenza, lucidi integrativi 20 10
11 Isolation levels, come sono realizzati Read uncommitted non richiede niente (e ammesso solo per transazioni read-only) Read committed rispetta gli altrui lock in scrittura (mantenuti fino al commit) Repeatable read 2PL, ma senza predicate lock Serializable 2PL e predicate lock 29/01/2001 Paolo Atzeni, Concorrenza, lucidi integrativi 21 Isolation levels, commenti Le definizioni sono diventate standard di recente, ma la terminologia e variegata (e incoerente) guardare i manuali! Level 0, Level 1, Level 2, Level 3 (o Degree 0, ) Read uncommitted, Read committed, Repeatable read, Serializable Read uncommitted, Cursor stability, Read stability, Repeatable read 29/01/2001 Paolo Atzeni, Concorrenza, lucidi integrativi 22 11
12 Concorrenza, lucidi integrativi Paolo Atzeni, gennaio 2001 Anomaly 5: Phantom Transaction t 1 Transaction t 2 bot read salaries of employees in dept A and compute average bot insert new employee in Dept A commit read salaries of employees in dept A and compute average commit 29/01/2001 Paolo Atzeni, Concorrenza, lucidi integrativi 2 1
13 Anomaly 5: Phantom, again Transaction t 1 Transaction t 2 bot bool:=(there is BD course) if not bool then insert BD course... commit bot bool:=(there is BD course) if not bool then insert BD course... commit 29/01/2001 Paolo Atzeni, Concorrenza, lucidi integrativi 3 CSR e VSR Ogni schedule conflict-serializzabile è view-serializzabile, ma non necessariamente viceversa Controesempio per la non necessità: r1(x) w2(x) w1(x) w3(x) view-serializzabile: view-equivalente a r1(x) w1(x) w2(x) w3(x) non conflict-serializzabile Sufficienza: vediamo 29/01/2001 Paolo Atzeni, Concorrenza, lucidi integrativi 4 2
14 CSR implica VSR CSR: esiste schedule seriale conflict-equivalente VSR: esiste schedule seriale view-equivalente Per dimostrare che CSR implica VSR è sufficiente dimostrare che la conflict-equivalenza C implica la view-equivalenza V, cioè che se due schedule sono C allora sono V Quindi, supponiamo S 1 C S 2 e dimostriamo che S 1 V S 2 I due schedule hanno: stesse scritture finali: se così non fosse, ci sarebbero almeno due scritture in ordine diverso e poiché due scritture sono in conflitto i due schedule non sarebbero C stessa relazione legge-da : se così non fosse, ci sarebbero scritture in ordine diverso o coppie lettura-scrittura in ordine diverso e quindi, come sopra sarebbe violata la C 29/01/2001 Paolo Atzeni, Concorrenza, lucidi integrativi 5 CSR e aciclicità del grafo dei conflitti Se uno schedule S è CSR allora è C ad uno schedule seriale. Supponiamo le transazioni nello schedule seriale ordinate secondo il TID: t 1, t 2,, t n. Poiché lo schedule seriale ha tutti i conflitti nello stesso ordine dello schedule S, nel grafo di S ci possono essere solo archi (i,j) con i<j e quindi il grafo non può avere cicli, perché un ciclo richiede almeno un arco (i,j) con i>j. Se il grafo di S è aciclico, allora esiste fra i nodi un ordinamento topologico (cioè una numerazione dei nodi tale che il grafo contiene solo archi (i,j) con i<j). Lo schedule seriale le cui transazioni sono ordinate secondo l ordinamento topologico è equivalente a S, perché per tutti i conflitti (i,j) si ha sempre i<j. 29/01/2001 Paolo Atzeni, Concorrenza, lucidi integrativi 6 3
15 Controllo della concorrenza in pratica Anche la conflict-serializabilità, pur più rapidamente verificabile, è inutilizzabile in pratica La tecnica sarebbe efficiente se potessimo conoscere il grafo dall inizio, ma così non è: uno scheduler deve operare incrementalmente, cioè ad ogni richiesta di operazione decidere se eseguirla subito oppure fare qualcos altro; non è praticabile mantenere il grafo, aggiornarlo e verificarne l aciclicità ad ogni richiesta di operazione Inoltre, la tecnica si basa sull ipotesi di commit-proiezione In pratica, si utilizzano tecniche che garantiscono la conflict-serializzabilità senza dover costruire il grafo non richiedono l ipotesi della commit-proiezione 29/01/2001 Paolo Atzeni, Concorrenza, lucidi integrativi 7 Two-phase locking (2PL) 2PL (Two-Phase Locking, Locking a due fasi ): Protocollo che impone a ciascuna transazione di acquisire tutti i propri lock prima di iniziare a rilasciarne (o, in altre parole, che impedisce l aquisizione di nuovi lock a transazioni che ne abbiano gia rilasciati) Uno scheduler 2PL e e uno scheduler che genera solo schedule 2PL cioe schedule in cui tutte le transazioni rispettano il protocollo 2PL (e gestisce i lock come visto in precedenza) 29/01/2001 Paolo Atzeni, Concorrenza, lucidi integrativi 8 4
16 2PL e CSR Ogni schedule 2PL e anche conflict serializzabile, ma non necessariamente viceversa Controesempio per la non necessita : r 1 (x) w 1 (x) r 2 (x) w 2 (x) r 3 (y) w 1 (y) Viola 2PL Conflict-serializzabile Sufficienza: vediamo 29/01/2001 Paolo Atzeni, Concorrenza, lucidi integrativi 9 2PL implica CSR S schedule 2PL Consideriamo per ciascuna transazione l istante in cui ha tutte le risorse e sta per rilasciare la prima Ordiniamo le transazioni in accordo con questo valore temporale e consideriamo lo schedule seriale corrispondente Vogliamo dimostrare che tale schedule è equivalente ad S: allo scopo, consideriamo un conflitto fra un azione di t i e un azione dei t j con i<j; è possibile che compaiano in ordine invertito in S? no, perché in tal caso t j dovrebbe aver rilasciato la risorsa in questione prima della sua acquisizione da parte di t i 29/01/2001 Paolo Atzeni, Concorrenza, lucidi integrativi 10 5
17 Basic timestamp mechanism The scheduler has counters RTM(x) and WTM(x) for each object: RTM(x): the youngest transaction that has read x WTM(x): the youngest transaction that has written x The scheduler receives read and write requests: read(x,ts): if ts < WTM(x) then the request is rejected and the transaction is killed, otherwise the request is accepted and RTM(x) is set equal to the greater of RTM(x) and ts write(x,ts): if ts < WTM(x) or ts < RTM(x) then the request is rejected and the transaction is killed, otherwise the request is accepted and WTM(x) is set equal to ts Each schedule is conflict-equivalent to the serial schedule (induced by the timestamps), so TS implies CSR 29/01/2001 Paolo Atzeni, Concorrenza, lucidi integrativi 11 Inefficiencies of TS The method causes the forced abort of a large number of transactions To avoid dirty reads, the system must buffer writes until commit, and this introduces waiting of transactions 29/01/2001 Paolo Atzeni, Concorrenza, lucidi integrativi 12 6
18 2PL vs TS Sono incomparabili Schedule in TS ma non in 2PL r 1 (x) w 1 (x) r 2 (x) w 2 (x) r 0 (y) w 1 (y) Schedule in 2PL ma non in TS r 2 (x) w 2 (x)r 1 (x) w 1 (x) Schedule in TS e in 2PL r 1 (x) r 2 (y) w 2 (y) w 1 (x) r 2 (x) w 2 (x) 29/01/2001 Paolo Atzeni, Concorrenza, lucidi integrativi 13 Comparison 2PL vs TS In 2PL the transactions are put in waiting. In TS they are killed and then restarted The serialization order in 2PL is imposed by locks, while in TS it is imposed by the timestamps The necessity of waiting for the commit of the transaction causes strict 2PL and buffering of writes in TS 2PL can give rise to deadlocks (discussed next) Restarting costs more than waiting: 2PL wins! 29/01/2001 Paolo Atzeni, Concorrenza, lucidi integrativi 14 7
19 Granularita dei lock I lock possono essere acquisiti a diversi livelli di granularita : Tutta la base di dati Tutta una relazione Parte di una relazione (con criterio logico e fisico) Singola ennupla Vantaggi e svantaggi: Granularita fine: Riduce le probabilita di conflitto Richiede piu operazioni Granularita grossolano: Il contrario Permette forme di predicate-locking 29/01/2001 Paolo Atzeni, Concorrenza, lucidi integrativi 15 Predicate locking Anomalia phantom : Inserimento di una ennupla, dopo aver verificato che non ce ne sia un altra con lo stesso valore della chiave Puo essere evitata con un lock a livello dipredicato Concettualmente, su una parte di relazione che soddisfa una condizione (valore della chiave) in pratica sull indice 29/01/2001 Paolo Atzeni, Concorrenza, lucidi integrativi 16 8
20 Tuning dei lock e della granularita Compito del progettista (fisico) e del DBA Parametri a disposizione Granularita ; criteri base: A livello di ennupla per transazioni brevi e locali A livello di pagina per transazioni medie che sfruttino l ordinamento fisico A livello di relazione (o base di dati) per transazioni che ne coinvolgano porzione significativa Soglia (numero massimo di lock) oltre la quale si passa ad una granularita meno fine ( lock escalation ) Dimensione della tabella di lock 29/01/2001 Paolo Atzeni, Concorrenza, lucidi integrativi 17 Deadlock resolution techniques A deadlock is a cycle in the wait-for graph which indicates wait conditions between transactions (node=transaction, arc=wait condition). Three techniques: 1. Timeout (most used; problem: choice of timeout with tradeoffs) 2. Deadlock detection 3. Deadlock prevention Deadlock detection: performs the search for cycles in a wait-for graph Deadlock prevention: kills the transactions that could cause a cycle (thus: it overkills) 29/01/2001 Paolo Atzeni, Concorrenza, lucidi integrativi 18 9
21 Prevenzione dello stallo Si basa su note condizioni necessarie per lo stallo; evitandone almeno una, lo si impedisce hold and wait: in caso di stallo, ci deve essere una transazione con risorse assegnate e in attesa su altre. Per evitare questo si possono assegnare tutte le risorse in blocco a ciascuna transazione. Poco efficiente: occorre attendere che tutte le risorse siano libere. circular wait: ci deve essere una situazione di attesa circolare. Per evitare questo si considerano i timestamp delle transazioni, e si impone che una transazione possa porsi in attesa solo su un dato detenuto da una transazione piu giovane, altrimenti una delle due deve essere abortita. Causa un numero eccessivo di restart (molto superiore al rischio di stallo) ed e difficile scegliere la vittima (con rischio di blocco individuale, o starvation). 29/01/2001 Paolo Atzeni, Concorrenza, lucidi integrativi 19 Isolation levels offered by SQL2 Some transactions are defined as read-only (they can t request exclusive locks and cannot write [except for temporary ones]) The level of isolation can be set for each transactions Read uncommitted no concurrency control, allows all anomalies Read committed avoids dirty reads and lost updates, but not inconsistent reads and phantoms Repeatable read allows phantoms, avoids other anomalies Serializable avoids all anomalies 29/01/2001 Paolo Atzeni, Concorrenza, lucidi integrativi 20 10
22 Isolation levels, come sono realizzati Read uncommitted non richiede niente (e ammesso solo per transazioni read-only) Read committed rispetta gli altrui lock in scrittura (mantenuti fino al commit) Repeatable read 2PL, ma senza predicate lock Serializable 2PL e predicate lock 29/01/2001 Paolo Atzeni, Concorrenza, lucidi integrativi 21 Isolation levels, commenti Le definizioni sono diventate standard di recente, ma la terminologia e variegata (e incoerente) guardare i manuali! Level 0, Level 1, Level 2, Level 3 (o Degree 0, ) Read uncommitted, Read committed, Repeatable read, Serializable Read uncommitted, Cursor stability, Read stability, Repeatable read 29/01/2001 Paolo Atzeni, Concorrenza, lucidi integrativi 22 11
Esecuzione concorrente di transazioni
Esecuzione concorrente di transazioni A L B E R T O B E L U S S I P A R T E I I A N N O A C C A D E M I C O 2 0 1 1-2 0 1 2 Tecniche applicate nei DBMS Le tecniche per il controllo della concorrenza che
DettagliCorso di Sistemi di Gestione di Basi di Dati. Esercitazione sul controllo di concorrenza 12/02/2004
Corso di Sistemi di Gestione di Basi di Dati Esercitazione sul controllo di concorrenza 12/02/2004 Dott.ssa Antonella Poggi Dipartimento di Informatica e Sistemistica Antonio Ruberti Università di Roma
DettagliTratti dal cap. 9 di: Atzeni, Ceri, Paraboschi, Torlone Basi di Dati II edizione, 1999, McGraw-Hill
/XFLGLVXOFRQWUROORGHOODFRQFRUUHQ]D Tratti dal cap. 9 di: Atzeni, Ceri, Paraboschi, Torlone Basi di Dati II edizione, 1999, McGraw-Hill $QRPDOLD /RVW8SGDWH Si considerino le due transazioni identiche: W1
DettagliControllo concorrenza
Controllo concorrenza Esercitazioni - Basi di dati (complementi) Autore: Dr. Simone Grega Esercizio. Dati gli schedule: s r w r w r w s r w r w r3 w r r3 s3 r r3 rz w w3 Specificare, con una breve giustificazione,
DettagliBasi di Dati e Sistemi Informativi. Le Transazioni. Corso di Laurea in Ing. Informatica Ing. Gestionale Magistrale
Giuseppe Loseto Corso di Laurea in Ing. Informatica Ing. Gestionale Magistrale Struttura DBMS Gestore delle interrogazioni Decide le strategie di accesso ai dati per rispondere alle interrogazioni Gestore
DettagliTecnologia di un Database Server (centralizzato) Gestione della concorrenza
Concorrenza Basi di Dati / Complementi di Basi di Dati 1 Tecnologia di un Database Server (centralizzato) Gestione della concorrenza Angelo Montanari Dipartimento di Matematica e Informatica Università
DettagliARCHITETTURA DI UN B.D.M.S. Parte I Il controllo di concorrenza
ARCHITETTURA DI UN B.D.M.S. Parte I Il controllo di concorrenza Michele de Nittis Generalità A livello astratto un DataBase Management System può essere suddiviso nei seguenti moduli: OTTIMIZZATORE FILE
DettagliIndicare se i seguenti schedule possono produrre anomalie; i simboli ci e ai indicano l esito (commit o abort) della transazione.
Capitolo 2 Esercizio 2.1 Indicare se i seguenti schedule possono produrre anomalie; i simboli ci e ai indicano l esito (commit o abort) della transazione. 1. r1(x), w1(x), r2(x), w2(y), a1, c2 2. r1(x),
DettagliBasi di Dati Complementi Esercizi Esercizi su concurrency control
Basi di Dati Complementi Esercizi Esercizi su concurrenc control Esercizio. Dati gli schedule : s r w r w r w s r w r w r3 w r r3 s3 r r3 rz w w3 a. specificare, con una breve giustificazione, a quali
DettagliTRANSAZIONI. Una transazione è una successione di operazioni che si può concludere con successo o con insuccesso.
Una transazione è una successione di operazioni che si può concludere con successo o con insuccesso. Nel caso di successo, i risultati delle operazioni effettuate devono essere resi definitivi; invece,
Dettagliexecute reject delay
Scheduler Lo scheduler stabilisce l ordine di esecuzione delle operazioni. Le azioni che svolge sono: execute: l operazione può essere eseguita immediatamente, per cui viene passata al data manager reject:
DettagliTransazioni. Architettura di un DBMS. Utente/Applicazione. transazioni. Transaction Manager. metadati, statistiche.
Query/update Query plan Execution Engine richieste di indici, record e file Index/file/record Manager comandi su pagine Query Compiler Buffer Manager Lettura/scrittura pagine Architettura di un DBMS Utente/Applicazione
DettagliEsecuzione concorrente di transazioni
Esecuzione concorrente di transazioni A L B E R T O B E L U S S I P A R T E I I A N N O A C C A D E M I C O 2 0 1 0-2 0 1 1 Tecniche applicate nei DBMS Le tecniche per il controllo della concorrenza che
DettagliGestione delle transazioni. Database Management Systems 3ed, R. Ramakrishnan and J. Gehrke 1
Gestione delle transazioni Database Management Systems 3ed, R. Ramakrishnan and J. Gehrke 1 Transazioni v L esecuzione concorrente dei programmi utente è essenziale per le buone prestazioni del DBMS Poiché
DettagliDeadlock (stallo) Parte III. Deadlock
Parte III Deadlock Sistemi Operativi - prof. Silvio Salza - a.a. 2008-2009 III - 1 Deadlock (stallo) Su di un tavolo ci sono un piatto ed una forchetta A e B sono seduti al tavolo, per mangiare ciascuno
DettagliSistemi Operativi mod. B. Sistemi Operativi mod. B A B C A B C P 1 2 0 0 P 1 1 2 2 3 3 2 P 2 3 0 2 P 2 6 0 0 P 3 2 1 1 P 3 0 1 1 < P 1, >
Algoritmo del banchiere Permette di gestire istanze multiple di una risorsa (a differenza dell algoritmo con grafo di allocazione risorse). Ciascun processo deve dichiarare a priori il massimo impiego
DettagliBasi di Dati prof. A. Longheu. 5 Progettazione fisica
Basi di Dati prof. A. Longheu 5 Progettazione fisica Progettazione Fisica Per effettuare la progettazione fisica, ossia l implementazione reale del modello logico creato nella fase della progettazione
DettagliDB - Cenni sulla gestione delle transazioni
transazioni Cenni sulla gestione delle transazioni in DBMS transazioni Cenni sulla gestione delle transazioni in DBMS Basato sulle slides di transazioni Cenni sulla gestione delle transazioni in DBMS Basato
DettagliIl linguaggio SQL: trigger. Versione elettronica: 04.7.SQL.trigger.pdf
Il linguaggio SQL: trigger Sistemi Informativi T Versione elettronica: 04.7.SQL.trigger.pdf DBMS attivi Un DBMS si dice attivoquando dispone di un sottosistema integrato per definire e gestire regole I
DettagliParte 1 Gestione della concorrenza
Gestione dei dati Parte 1 Gestione della concorrenza Maurizio Lenzerini, Riccardo Rosati Facoltà di Ingegneria dell informazione, informatica e statistica Sapienza Università di Roma Anno Accademico 2012/2013
DettagliTransazioni in SQL. Nicola Vitacolonna Corso di Basi di Dati Università degli Studi di Udine 4 dicembre 2013
Transazioni in SQL Nicola Vitacolonna Corso di Basi di Dati Università degli Studi di Udine 4 dicembre 2013 1 Introduzione Informalmente, una transazione è una sequenza (arbitrariamente lunga) di operazioni
DettagliCoordinazione Distribuita
Coordinazione Distribuita Ordinamento degli eventi Mutua esclusione Atomicità Controllo della Concorrenza 21.1 Introduzione Tutte le questioni relative alla concorrenza che si incontrano in sistemi centralizzati,
DettagliAffidabilità e Concorrenza
Affidabilità e Concorrenza Affidabilità Resistenza ai guasti Concorrenza Efficienza: più transazioni contemporanee Senza introdurre fenomeni indesiderati 2 Transazione Unità elementare di lavoro Ben formata:
DettagliOrdinamento degli eventi. Lezione 11. Osservazioni. Relazione verificato prima. Cenni ai sistemi operativi distribuiti 3. Coordinazione distribuita
Lezione 11 Cenni ai sistemi operativi distribuiti 3. Coordinazione distribuita Ordinamento degli eventi Un sistema monoprocessore Unico clock Unica memoria Ordinamento degli eventi Mutua esclusione Deadlock
DettagliInformatica Generale Andrea Corradini. 19 - Sistemi di Gestione delle Basi di Dati
Informatica Generale Andrea Corradini 19 - Sistemi di Gestione delle Basi di Dati Sommario Concetti base di Basi di Dati Il modello relazionale Relazioni e operazioni su relazioni Il linguaggio SQL Integrità
DettagliEsecuzione concorrente di transazioni
Esecuzione concorrente di transazioni A L B E R T O B E L U S S I P A R T E I A N N O A C C A D E M I C O 2 0 1 0-2 0 1 1 Osservazione Per gestire con prestazione accettabili il carico di lavoro tipico
DettagliControllo di concorrenza. concorrenza 1
Controllo di concorrenza concorrenza 1 I vantaggi della concorrenza sul server (1 cpu, 1 disco, 1 sistema di trasmissione) è possibile il parallelismo tra: elaborazione :cpu (c) operazioni di I/O: disco
DettagliIntroduzione. Coordinazione Distribuita. Ordinamento degli eventi. Realizzazione di. Mutua Esclusione Distribuita (DME)
Coordinazione Distribuita Ordinamento degli eventi Mutua esclusione Atomicità Controllo della Concorrenza Introduzione Tutte le questioni relative alla concorrenza che si incontrano in sistemi centralizzati,
DettagliSISTEMI OPERATIVI. Deadlock (blocco critico) Domande di verifica. Luca Orrù Centro Multimediale Montiferru 04/06/2007
2007 SISTEMI OPERATIVI Deadlock (blocco critico) Domande di verifica Luca Orrù Centro Multimediale Montiferru 04/06/2007 Deadlock (blocco critico) 1. Si descriva il deadlock e le condizioni sotto cui si
DettagliPag. 1. Gestione delle transazioni. Linguaggio SQL: costrutti avanzati. Esempio applicativo. Gestione delle transazioni. Prelievo. Esempio applicativo
Gestione delle transazioni Introduzione Transazioni in SQL Linguaggio SQL: costrutti avanzati 2 applicativo Operazioni bancarie operazione di prelievo dal proprio conto corrente mediante bancomat Gestione
DettagliDeadlock e Starvation
DTI / ISIN / Titolo principale della presentazione 1 Deadlock e Starvation Amos Brocco, Ricercatore, DTI / ISIN 3 aprile 2012 Condivisione di risorse In un sistema si trovano delle risorse che possono
DettagliTransazioni. Capitolo 13. Scrittura immediata e scrittura differita. Concorrenza in un DBMS. Una transazione. Gestione delle transazioni
Capitolo 13 Gestione delle transazioni Transazioni L esecuzione concorrente dei programmi utente è essenziale per le buone prestazioni del DBMS Poiché gli accessi al disco sono frequenti e relativamente
DettagliBASI DI DATI: Aspetti gestionali e sviluppi evolutivi dei DBMS info@vittorioprisco.com
BASI DI DATI: Aspetti gestionali e sviluppi evolutivi dei DBMS info@vittorioprisco.com 1 Tecnologia di un Database Server - DEFINIZIONI - DATABASE SERVER: E un sistema dedicato alla gestione dei dati.
DettagliIl linguaggio SQL: transazioni
Il linguaggio SQL: transazioni Sistemi Informativi T Versione elettronica: 4.8.SQL.transazioni.pdf Cos è una transazione? Una transazione è un unità logica di elaborazione che corrisponde a una serie di
DettagliLinguaggio SQL: costrutti avanzati
Linguaggio SQL: costrutti avanzati Gestione delle transazioni Introduzione Transazioni in SQL Proprietà delle transazioni 2 Pag. 1 1 Gestione delle transazioni Esempio applicativo Operazioni bancarie operazione
DettagliTransazioni - Parte 1
Basi di dati II Lezione 3 09/10/2008 Caputo Domenico Cosimo, Francesco Pichierri Transazioni - Parte 1 Le transazioni hanno a che fare con la programmabilità delle basi di dati. Prima di trattarle è necessaria
DettagliJava threads (2) Programmazione Concorrente
Java threads (2) emanuele lattanzi isti information science and technology institute 1/28 Programmazione Concorrente Utilizzo corretto dei thread in Java emanuele lattanzi isti information science and
DettagliSistemi Operativi II Corso di Laurea in Ingegneria Informatica
www.dis.uniroma1.it/~midlab Sistemi Operativi II Corso di Laurea in Ingegneria Informatica Prof. Roberto Baldoni Complementi: Deadlock Tecniche di gestione del deadlock: 1. Caratterizzazione del deadlock
DettagliIndice Prefazione... 1 1 SQL Procedurale/SQL-PSM (Persistent Stored Modules)... 3 Vincoli e Trigger... 9
Prefazione... 1 Contenuti... 1 Ringraziamenti... 2 1 SQL Procedurale/SQL-PSM (Persistent Stored Modules)... 3 1.1 Dichiarazione di funzioni e procedure... 3 1.2 Istruzioni PSM... 4 2 Vincoli e Trigger...
DettagliCorso di Laurea in Ingegneria Informatica Fondamenti di Informatica II Modulo Basi di dati a.a
Corso di Laurea in Ingegneria Informatica Fondamenti di Informatica II Modulo Basi di dati a.a. 2012-2013 2013 Docente: Gigliola Vaglini Docenti laboratorio: Francesco Pistolesi,, Antonio Virdis Lezione
DettagliScheduling della CPU Introduzione ai Sistemi Operativi Corso di Abilità Informatiche Laurea in Fisica
Scheduling della CPU Introduzione ai Sistemi Operativi Corso di Abilità Informatiche Laurea in Fisica prof. Ing. Corrado Santoro A.A. 2010-11 Architettura di un sistema operativo Progr 1 Progr 2 Progr
DettagliData Base Management System. Strumenti: Formato: Pro: Contro: Software specifico. Proprietario
Data Base Management System Strumenti: Software specifico Formato: Pro: Proprietario Massima semplicità di inserimento e gestione Tipizzazione Validazione dei dati Contro: Creazione del database Programmazione
DettagliLa gestione della concorrenza in pratica
La gestione della concorrenza in pratica Basi di dati: Architetture e linee di evoluzione - Seconda edizione Capitolo 2 Appunti dalle lezioni Soluzioni possibili Uno scheduling è considerato corretto se
DettagliBENEDETTI ALESSANDRO Matricola :252805 PROGETTO DI TECNOLOGIA DELLE BASI DI DATI PARTE 2
BENEDETTI ALESSANDRO Matricola :252805 PROGETTO DI TECNOLOGIA DELLE BASI DI DATI PARTE 2 Testo: Sviluppare semplici programmi che permettano di verificare i diversi livelli di isolamento previsti da SQL
DettagliEsempio di sistema informativo
Corso di Laurea in Ingegneria Informatica Fondamenti di Informatica II Modulo Basi di dati a.a. 2013-2014 Docente: Gigliola Vaglini Docente laboratorio: Francesco Pistolesi Esempio di sistema informativo
DettagliSerializable Snapshot Isolation (SSI) in PostgreSQL 9.1
Serializable Snapshot Isolation (SSI) in PostgreSQL 9.1 Marco Nenciarini Italian PostgreSQL Users Group www.itpug.org www.postgresql.org Chi sono? DBA, sviluppatore e sysadmin presso 2ndQuadrant Database
DettagliBasi di Dati: Complementi Docente: Prof. Pierangela Samarati
Basi di Dati: Complementi Docente: Prof. Pierangela Samarati Appello di Maggio online 22 Maggio 2010 Tempo a disposizione 2:00h Soluzioni Domanda 1) Elencare e descrivere in modo completo le proprietà
DettagliUn sistema operativo è un insieme di programmi che consentono ad un utente di
INTRODUZIONE AI SISTEMI OPERATIVI 1 Alcune definizioni 1 Sistema dedicato: 1 Sistema batch o a lotti: 2 Sistemi time sharing: 2 Sistema multiprogrammato: 3 Processo e programma 3 Risorse: 3 Spazio degli
DettagliMODELLISTICA DI IMPIANTI E SISTEMI 2
MODELLISTICA DI IMPIANTI E SISTEMI 2 Indice 1 Dalla traccia al modello 2 1.1 BAS................................................ 4 I Traccia Si consideri il problema della gestione efficiente dei servizi
DettagliTecnologia di un Database Server (centralizzato) Introduzione generale
Introduzione Basi di Dati / Complementi di Basi di Dati 1 Tecnologia di un Database Server (centralizzato) Introduzione generale Angelo Montanari Dipartimento di Matematica e Informatica Università di
DettagliCorso di Programmazione Concorrente
Corso di Programmazione Concorrente Stallo Valter Crescenzi crescenz@dia.uniroma3.it http://www.dia.uniroma3.it/~crescenz Assunzione di Progresso Finito Tutti i processori virtuali hanno una velocità finita
Dettagli8 Tecniche di recovery
8 Tecniche di recovery Se viene sottomessa una transazione T, o tutte le operazioni di T sono completate ed il loro effetto è registrato permanentemente nel DB, o T non ha nessun effetto né sul DB né su
DettagliBasi di Dati Distribuite
Basi di Dati Distribuite P. Atzeni, S. Ceri, S. Paraboschi, R. Torlone (McGraw-Hill Italia) Basi di dati: architetture linee di evoluzione - seconda edizione Capitolo 3 Appunti dalle lezioni SQL come DDL
DettagliTransazioni e controllo della concorrenza
Transazioni e controllo della concorrenza Tecniche di programmazione distribuita - responsabilità del programmatore, basso livello Alto livello - transazione sequenza di operazioni sul server, che coinvolgono
DettagliSistemi Operativi. Scheduling della CPU SCHEDULING DELLA CPU. Concetti di Base Criteri di Scheduling Algoritmi di Scheduling
SCHEDULING DELLA CPU 5.1 Scheduling della CPU Concetti di Base Criteri di Scheduling Algoritmi di Scheduling FCFS, SJF, Round-Robin, A code multiple Scheduling in Multi-Processori Scheduling Real-Time
DettagliSistemi Operativi SCHEDULING DELLA CPU. Sistemi Operativi. D. Talia - UNICAL 5.1
SCHEDULING DELLA CPU 5.1 Scheduling della CPU Concetti di Base Criteri di Scheduling Algoritmi di Scheduling FCFS, SJF, Round-Robin, A code multiple Scheduling in Multi-Processori Scheduling Real-Time
DettagliPROVA FINALE V. AULETTA G. PERSIANO ALGORITMI II - -MAGIS INFO
PROVA FINALE V. AULETTA G. PERSIANO ALGORITMI II - -MAGIS INFO 1. Load Balancing Un istanza del problema del load balancing consiste di una sequenza p 1,..., p n di interi positivi (pesi dei job) e un
DettagliIntroduzione ai Metodi Formali
Intruzione ai Meti Formali Sistemi software anche molto complessi regolano la vita quotidiana, anche in situazioni life-critical (e.g. avionica) e business-critical (e.g. operazioni bancarie). Esempi di
DettagliFile system II. Sistemi Operativi Lez. 20
File system II Sistemi Operativi Lez. 20 Gestione spazi su disco Esiste un trade-off,tra spreco dello spazio e velocità di trasferimento in base alla dimensione del blocco fisico Gestione spazio su disco
DettagliL architettura di un DBMS
L architettura di un DBMS sources: Lucidi del corso di Lucidi del corso di Laboratorio di Basi di dati e sistemi informativi, Montesi, Magnani, Corso di laurea in Informatica per il management, Scienze
DettagliDatabase. Si ringrazia Marco Bertini per le slides
Database Si ringrazia Marco Bertini per le slides Obiettivo Concetti base dati e informazioni cos è un database terminologia Modelli organizzativi flat file database relazionali Principi e linee guida
DettagliSistemi Operativi Kernel
Approfondimento Sistemi Operativi Kernel Kernel del Sistema Operativo Kernel (nocciolo, nucleo) Contiene i programmi per la gestione delle funzioni base del calcolatore Kernel suddiviso in moduli. Ogni
DettagliArtifact Centric Business Processes (I)
Introduzione Autore: Docente: Prof. Giuseppe De Giacomo Dipartimento di Informatica e Sistemistica SAPIENZA - Universitá di Roma 16 Novembre 2008 Una visione assiomatica La modellazione dei processi di
DettagliDMA Accesso Diretto alla Memoria
Testo di rif.to: [Congiu] - 8.1-8.3 (pg. 241 250) 08.a DMA Accesso Diretto alla Memoria Motivazioni Organizzazione dei trasferimenti DMA Arbitraggio del bus di memoria Trasferimento di un blocco di dati
DettagliGestione delle transazioni. Concetto di transazione
Dario Maio http://www.csr.unibo.it/~maio/ dmaio@deis.unibo.it Concetto di transazione Una transazione è un unità logica di elaborazione che corrisponde a un insieme di operazioni fisiche elementari (letture/scritture)
DettagliLo schedulatore del kernel
Lo schedulatore del kernel Lo schedulatore Lo schedulatore è un programma del kernel che si occupa di scegliere un processo/lavoro che ha richiesto una risorsa. Lo schedulatore a lungo termine LTS è quello
DettagliRecovery manager Gestore della affidabilità
Riferimenti Basi di Dati Complementi Parte 2: Tecnologie per DBMS Parte 2.5: Recovery Manager Trasparenze parte Recovery manager Basi di Dati Atzeni et al. - Capitolo 2.1, 2.2 Anche: Garcia Molina, Ullman,
DettagliIntroduzione all Information Retrieval
Introduzione all Information Retrieval Argomenti della lezione Definizione di Information Retrieval. Information Retrieval vs Data Retrieval. Indicizzazione di collezioni e ricerca. Modelli per Information
Dettagliwww.previsioniborsa.net COME SI ENTRA IN POSIZIONE
www.previsioniborsa.net 5 lezione sul METODO CICLICO COME SI ENTRA IN POSIZIONE Ci sono molti modi per entrare in posizione in un mercato (future) o un titolo, ma noi dobbiamo trovare un sistema che sia
DettagliGestione della memoria centrale
Gestione della memoria centrale Un programma per essere eseguito deve risiedere in memoria principale e lo stesso vale per i dati su cui esso opera In un sistema multitasking molti processi vengono eseguiti
DettagliTecnologia delle Basi di Dati
Basi di Dati Prof. Alfredo Cuzzocrea Università degli Studi di Trieste Tecnologia delle Basi di Dati Credits to: Dr. A. Poggi UniRoma1 Transazioni Una transazione è una unità elementare di lavoro svolta
DettagliReplicazione. Requisisti di consistenza i clienti devono ricevere risposte consistenti e coerenti. Motivazioni
Replicazione Replicazione dei dati: gestione e manutenzione di un insieme di copie dei dati Motivazioni: - disponibilità - tolleranza ai guasti - prestazioni aching diverso da replicazione aching non aumenta
DettagliTransazioni. Antonella Poggi. Dipartimento di informatica e Sistemistica Università di Roma La Sapienza
Transazioni Antonella Poggi Dipartimento di informatica e Sistemistica Università di Roma La Sapienza Progetto di Applicazioni Software Anno accademico 2008-2009 Questi lucidi sono stati prodotti sulla
DettagliTRANSAZIONI DISTRIBUITE TRANSAZIONI
TRANSAZIONI DISTRIBUITE Transazioni distribuite Atomicità di una transazione distribuita Protocollo Two-Phase Commit Gestione dell affidabilità Fallimenti durante il 2PC Gestione della concorrenza Serializzabilità
DettagliCOGNOME MATRICOLA. UTENTE(ID, Nome, Cognome, Eta) ALBERGO(Nome, Citta, NumStelle) PRENOTAZIONE(Codice, NomeAlbergo, IDUtente, DataArrivo, NumNotti)
NOME COGNOME MATRICOLA ESERCIZIO 1 (12 punti) Dato il seguente schema relazionale, che modella le informazioni relative ad un servizio di prenotazione di strutture alberghiere: UTENTE(ID, Nome, Cognome,
Dettagli3. Introduzione all'internetworking
3. Introduzione all'internetworking Abbiamo visto i dettagli di due reti di comunicazione: ma ce ne sono decine di tipo diverso! Occorre poter far comunicare calcolatori che si trovano su reti di tecnologia
DettagliSincronizzazione distribuita: Mutua esclusione ed elezione
Sistemi Distribuiti Sincronizzazione distribuita: Mutua esclusione ed elezione 1 Mutua Esclusione (algoritmo centralizzato) a) Il Processo 1 chiede al coordinatore il permesso di entrare in una regione
DettagliIL PROBLEMA DELLO SHORTEST SPANNING TREE
IL PROBLEMA DELLO SHORTEST SPANNING TREE n. 1 - Formulazione del problema Consideriamo il seguente problema: Abbiamo un certo numero di città a cui deve essere fornito un servizio, quale può essere l energia
DettagliSincronizzazione nei Sistemi Distribuiti
Sincronizzazione nei Sistemi Distribuiti Sincronizzazione dei Clock In un sistema centralizzato la misurazione del tempo non presenta ambiguità. (ogni computer ha il proprio clock) In un sistema distribuito
DettagliIntroduzione all Architettura del DBMS
Introduzione all Architettura del DBMS Data Base Management System (DBMS) Un DBMS è uno strumento per la creazione e la gestione efficiente di grandi quantità di dati che consente di conservarli in modo
DettagliBasi di dati II Prova parziale 11 aprile 2012 Compito A Rispondere su questo fascicolo. Tempo a disposizione: un ora e quindici minuti.
Basi di dati II Prova parziale 11 aprile 2012 Compito A Rispondere su questo fascicolo. Tempo a disposizione: un ora e quindici minuti. Cognome Nome Matricola Ordin. Domanda 1 (20%) Considerare un sistema
DettagliTransazioni. Transazioni. Stati di una transazione. Transazioni
Transazioni Antonella Poggi Domenico Lembo Dipartimento di informatica e Sistemistica SAPIENZA Università di Roma Progetto di Applicazioni Software Anno accademico 2009-2010 Transazioni Una transazione
DettagliOrganizzazione della produzione
Scheduling Organizzazione della produzione PROOTTO che cosa chi ORGNIZZZIONE PROCESSO come FLUSSO I PROUZIONE COORINMENTO PINIFICZIONE SCHEULING quando Pianificazione della produzione: schedulazione di
DettagliSistemi Operativi SCHEDULING DELLA CPU
Sistemi Operativi SCHEDULING DELLA CPU Scheduling della CPU Concetti di Base Criteri di Scheduling Algoritmi di Scheduling FCFS, SJF, Round-Robin, A code multiple Scheduling in Multi-Processori Scheduling
DettagliDecomposizione senza perdita. Decomposizione senza perdita. Conservazione delle dipendenze. Conservazione delle dipendenze
Decomposizione senza perdita Data una relazione r su X, se X 1 e X 2 sono due sottoinsiemi di X la cui unione è X stesso, allora il join delle due relazioni ottenute per proiezione di r su X 1 e X 2 è
DettagliPROGRAMMA DI CLASSE 5AI
Istituto di Istruzione Superiore Euganeo Istituto tecnico del settore tecnologico Istituto professionale del settore servizi socio-sanitari Istituto professionale del settore industria e artigianato PROGRAMMA
DettagliSistemi di gestione delle basi di dati. T. Catarci, M. Scannapieco, Corso di Basi di Dati, A.A. 2008/2009, Sapienza Università di Roma
Sistemi di gestione delle basi di dati 1 Cos è un DBMS? Una collezione integrata molto grande di dati Modella organizzazioni del mondo reale Entità (ad esempio studenti, corsi) Relazioni (ad esempio, Madonna
DettagliLa Gestione delle risorse Renato Agati
Renato Agati delle risorse La Gestione Schedulazione dei processi Gestione delle periferiche File system Schedulazione dei processi Mono programmazione Multi programmazione Gestione delle periferiche File
DettagliSCHEDULATORI DI PROCESSO
Indice 5 SCHEDULATORI DI PROCESSO...1 5.1 Schedulatore Round Robin...1 5.2 Schedulatore a priorità...2 5.2.1 Schedulatore a code multiple...3 5.3 Schedulatore Shortest Job First...3 i 5 SCHEDULATORI DI
DettagliRicerca Operativa e Logistica
Ricerca Operativa e Logistica Dott. F.Carrabs e Dott.ssa M.Gentili A.A. 2011/2012 Lezione 10: Variabili e vincoli logici Variabili logiche Spesso nei problemi reali che dobbiamo affrontare ci sono dei
DettagliProf. Giuseppe Chiumeo. Avete già studiato che qualsiasi algoritmo appropriato può essere scritto utilizzando soltanto tre strutture di base:
LA STRUTTURA DI RIPETIZIONE La ripetizione POST-condizionale La ripetizione PRE-condizionale INTRODUZIONE (1/3) Avete già studiato che qualsiasi algoritmo appropriato può essere scritto utilizzando soltanto
Dettagliregola(1,[e,f],b) regola(2,[m,f],e) regola(3,[m],f) regola(4,[b,f],g) regola(5,[b,g],c) regola(6,[g,q],a)
ESERCIZIO1 PREMESSA Per risolvere problemi spesso esistono delle regole che, dai dati del problema, permettono di calcolare o dedurre la soluzione. Questa situazione si può descrivere col termine regola(,
DettagliAPPENDICE. Procedure in SQL (1)
APPENDICE Procedure in SQL Transazioni in SQL Embedded SQL Remote Procedure Call Appendice 1 Procedure in SQL (1) Standard SQL2 permette di definire procedure, associate a singoli comandi SQL, memorizzate
DettagliRicorsione in SQL-99. Introduzione. Idea di base
Ricorsione in SQL-99 Introduzione In SQL2 non è possibile definire interrogazioni che facciano uso della ricorsione Esempio Voli(lineaAerea, da, a, parte, arriva) non è possibile esprimere l interrogazione
DettagliESERCIZIO 1 (15 punti) Dato il seguente schema relazionale, che modella le informazioni relative ad un sistema di prenotazioni di biglietti aerei:
NOME COGNOME MATRICOLA ESERCIZIO 1 (15 punti) Dato il seguente schema relazionale, che modella le informazioni relative ad un sistema di prenotazioni di biglietti aerei: VELIVOLO(NomeModello, MaxPasseggeri)
DettagliLa gestione della concorrenza
La gestione della concorrenza R. A. Elmasri, S. B. Navathe (Addison Wesley - Pearson) Sistemi di Basi di dati Complementi Capitolo 1 e Capitolo 2 Appunti dalle lezioni Transazione Transazioni e tecnologie
DettagliChe differenza c è tra una richiesta XML ed una domanda XML? (pag. 4)
FAQ INVIO DOMANDE CIGO CON FLUSSO XML Cosa serve per inviare una domanda CIGO con il flusso XML? (pag. 2) Come si prepara una domanda in formato XML? (pag. 3) Che differenza c è tra una richiesta XML ed
DettagliMacchine a stati finiti. Sommario. Sommario. M. Favalli. 5th June 2007
Sommario Macchine a stati finiti M. Favalli 5th June 27 4 Sommario () 5th June 27 / 35 () 5th June 27 2 / 35 4 Le macchine a stati si utilizzano per modellare di sistemi fisici caratterizzabili mediante:
DettagliProgramma Gestione Presenze Manuale autorizzatore. Versione 1.0 25/08/2010. Area Sistemi Informatici - Università di Pisa
- Università di Pisa Programma Gestione Presenze Manuale autorizzatore Versione 1.0 25/08/2010 Email: service@adm.unipi.it 1 1 Sommario - Università di Pisa 1 SOMMARIO... 2 2 ACCESSO AL PROGRAMMA... 3
DettagliIl software di base comprende l insieme dei programmi predisposti per un uso efficace ed efficiente del computer.
I Sistemi Operativi Il Software di Base Il software di base comprende l insieme dei programmi predisposti per un uso efficace ed efficiente del computer. Il sistema operativo è il gestore di tutte le risorse
Dettagli