- Quali sono le possibili modalità di distribuzione dei dati in un database relazionale e quali sono le condizioni che possono far scegliere una delle soluzioni mostrate
- Si descriva la differenza fra replica sincrona e asincrona dei database relazionali
- Si ipotizzi la realizzazione di un gioco online multiplayer massivo, qual è la caratteristica indicata nel CAP theorem che può essere sacrificata e perchè? Di conseguenza qual è il modello dati più adatto per gestire gli utenti?
- Si descriva la metrica dell’accuratezza sintattica
- Cosa succede durante il two-phase commit se il transaction manager muore prima della global decision?
- Qual è la differenza fra un database CA e uno AP tenuto conto del CAP theorem?
- Quali sono le differenze fra le architetture shared disk e quelle shared nothing?
- Si descriva il protocollo del two-phase commit
- Si ipotizzi la realizzazione di un sistema di messaggistica on line inserito in una piattaforma di social media. Qual è la caratteristica indicata nel CAP theorem che può essere sacrificata e perchè? Di conseguenza qual è il modello dati più adatto per gestire questi dati
- Qual è la differenza fra frammentazione orizzontale e verticale dei dati?
- Si illustri la differenza fra il modello dati colonnare e quello documentale
- Si descrivano i principali passi metodologici del record linkage
- Si discutano le differenze fra le architetture di replica dei dati implementate in sistemi come Mongodb e le strategie di replica di sistemi come Cassandra
- Si descriva il problema della qualità dei dati rispetto all’accuratezza
Esercizi pratici
CREATE (:Person {name: "Sally", age: 32}),
(:Person {name: "Jogn", age: 27});
CREATE (:Person {title: "Venere Privata", author: "Giorgio Scerbanenco"});
MATCH (sally:Person {name: 'Sally'}),
(john:Person {name: 'John'})
CREATE (sally)-[:FRIEND_OF {since: date('2013-09-01')}]->(john)
CREATE (john)-[:FRIEND_OF {since: date('2013-09-01')}]->(sally)