Please enable JavaScript.
Coggle requires JavaScript to display documents.
PROGETTAZIONE DI UN DATA BASE, MODELLAZIONE DEI DATI: FASE 1 2 3,…
PROGETTAZIONE DI UN DATA BASE
DEFINIZIONE
Progettare un database significa in dettaglio progettare le strutture, prima logiche e quindi fisiche, di un database in modo che possano accogliere nel modo migliore possibile i dati di cui un utente ha bisogno.
FASE 1: ANALISI
tecnica/strategie di progettazione
BOTTOM UP
Si suddividono le specifiche in modo da sviluppare semplici schemi parziali ma dettagliati, che poi vengono integrati tra loro
INSIDE OUT
Lo schema si sviluppa "a macchina d'olio", partendo dai concetti più importanti, aggiungendo quelli a essi correlati, e così via
TOP DOWN
Si parte da uno schema iniziale molto astratto ma completo, che viene successivamente raffinato fino ad arrivare allo schema finale
FASE 3: LOGICA
creazione di uno schema secondo uno dei seguenti modelli
RELAZIONALE
sviluppato da Edgar Frank Codd all'inizio degli anni '70
pubblica l'articolo "modello per l'archiviazione di grandi banche di dati" dove struttura attraverso TABELLE e RELAZIONI
AD OGGETTI
anni '80
Estensione alle basi di dati del paradigma "Object Oriented", tipico della programmazione a oggetti
OODBMS --> acronimo di "object oriented DBMS"
Esempio: Jasmine
ORDBMS --> acronimo di "Object-Relational Database Management System
Esempio: PostgreSQL
Hanno l possibilità di definire nuovi tipi di dati e comportamenti che vengono inglobati nell'oggetto stesso (classe).
RETICOLARE
fine anni '60
Rappresentabile tramite un grafo
Utilizzo dei puntatori e dico dove sto andando perchè da un punto possono uscire o entrare più righe e serve per acccedere ai dati
Estensione del modello gerarchico: ogni nodo può essere sia punto di partenza che punto di arrivo
Ogni padre può avere molti figli e ogni figlio può avere molti padre . Rappresentazione--> N a N (N:N) e si legge "relazione molti-a-molti"
SVATAGGI
Per realizzare due reticoli indipendenti è necessario duplicare i dati introducendo un'inutile ridondanza
Se i dati non sono tra loro direttamente connessi la loro ricerca è difficoltosa
I link sono realizzati con i puntatori, quindi esiste uno spreco di spazio per le memorie esterne
È estremamente rigido in caso di modifiche successive alla sua creazione
XML
anni '90
Molto utilizzato come strumento per l'esportazione di dati tra le diverse applicazioni
Linguaggio simile ad HTML, con il quale condivide i markup (tag) .
é possibile definire propri tag a seconda delle esigenze, rispetto all'HTML che ha dei tag fissi
GERARCHICO
inizi anni '60
Rappresentabile tramite albero
Ogni elemento si chiama segmento
Ogni padre può avere molti figli ma ogni figlio può avere un solo padre . Rappresentazione--> 1 a N (1:N) e si legge "relazione uno-a-molti"
La radice è il record principale da cui si parte
SVANTAGGI
Tra lo schema logico e la realizzazione fisica esiste una dipendenza stretta e vincolante
Le operazioni di ricerca non sono efficienti in quanto sono visite ad alberi generici e solo nel caso siano di tipo gerarchico sarebbero di semplice realizzazione
NoSql
CARATTERISTICHE
Utilizzo di tabelle e campi per memorizzare i dati
Schema fisso delle tabelle: nome, elenco di campi, ognuno con i rispettivi tipi (stringhe di caratteri, numeri, date e dati binari), con una chiave primaria che identifica univocamente, una riga della tabella
Accesso ai dati (transazione) garantito con le proproietà ACID-> Atomicità, Consistenza, Isolamento e Durabilità
Presenza di una relazione tra due o più campi di tabelle, ossia di una condizione che lega tra loro le rispettive righe a cui i campi appartengono mediante chiavi esterne; la validità del legame è garantita dai vincoli di integrità referenziale
ESEMPI DI MAGGIOR SUCCESSO
Neo4j
Cassandra, Big Table, Simple DB
Redis, Memcached, HBase
Firebase
Mongo DB
FASE 2: CONCETTUALE
CHIAREZZA
Il modello deve essere leggibile e rappresentare le informazioni in maniera comprensibile
COMPLETEZZA
Tutti gli aspetti rilevanti della realtà devono essere modellati
INDIPENDENZA
Dallo strumento informatico che verrà utilizzato
CORRETTEZZA
Uso corretto degli strumenti
FASE 5: REALIZZAZIONE
Progetto e realizzazione delle procedure atte a soddisfare le richieste specificate nel progetto utilizzando gli strumenti informatici di alto livello (linguaggi di programmazione e di interrogazione).
FASE 4: FISICA- IMPLEMENTAZIONE
Completamento, o modifica, dello schema logico in funzione dell'organizzazione fisica dei dati e dei meccanismi per operare su di essi (partizioni, puntatori, blocchi fisici, cluster, indici).
MODELLAZIONE DEI DATI: FASE 1 2 3
DEFINIZIONE
Consiste in una rappresentazione astratta delle strutture dei dati di un database. L'atto di creazione di un modello prende il nome di modellazione dei dati. serve per tradurre i dati dal punto di vista dell'utente al punto di vista dell'applicazione/database, cioè per trasportarli dal mondo reale al mondo informatico.
MODELLAZIONE FUNZIONALE FASI 4 - 5
Elena Zona