Please enable JavaScript.
Coggle requires JavaScript to display documents.
PROGETTAZIONE di un DATABASE, MODELLAZIONE dei dati FASI 1 - 2 - 3,…
PROGETTAZIONE
di un DATABASE
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
BOTTON - 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 macchia 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 2:
CONCETTUALE
COMPLETEZZA
Tutti gli aspetti rilevanti della realtà devono essere modellati.
CHIAREZZA
Il modello deve essere leggibile e rappresentare le informazioni in maniera comprensibile.
CORRETTEZZA
Uso corretto degli strumenti.
INDIPENDENZA
Indipendenza dallo strumento informatico che verrà utilizzato.
FASE 3:
LOGICA
creazione di uno schema
secondo uno dei seguenti modelli:
AD OGGETTI
estensione alle basi di dati
del paradigma "Object-Oriented" (anni '80)
OODBMS: Object Oriented DBMS
Jasmine
ORDBMS:
Object-Relational Database Managment System
PostgreSQL
Linguaggio simile all'HTML, con il quale condivide il marcato
XML
anni '90
E' un linguaggio simile all'HTML con il quale condivide i markup (detti tag) ma che nel XML sono "liberi" e descrivono un archivio di utenti e ne inseriamo i singoli record.
Se per l'HTML si ha un insieme ben definito e ristretto di tag nell'XML è invece possibile definirne di propri a seconda delle esigenze.
NoSql
caratteristiche
Schema fisso delle tabelle
Presenza di una relazione tra due o più campi di tabelle
Utilizza tabelle e campi per memorizzare i dati.
ACID: Atomicità (ridotta in minimi termini), Consistenza, Isolamento e Durabilità
Esempi di maggior successo:
Mongo DB
Redis, Memcached, HBase
Neo4j
Cassandra, Big Table, Simple DB
Firebase
RELAZIONALE
sviluppato da Edgar Frank Codd
all'inizio degli anni '70
Si basa sul concetto matematico di relazione tra insiemi,
in modo da limitare la ridondanza
RETICOLARE
anni '60
rappresentazione tramite un grafo
Per poter realizzare le connessioni trai diversi record vengono utilizzati particolari record che prendono il nome di record connetori.
Può essere visto come un'estensione del modello gerarchico dove non esiste una radice ma ogni nodo può essere il punto di partenza per raggiungere un determinato campo.
Svantaggi
Se i dati non sono tra loro direttamente connessi la loro ricerca è difficoltosa.
Per realizzare due reticoli indipendenti è necessario duplicare i dati introducendo un'inutile ridondanza.
I link sono realizzati con i puntatori, quindi esiste uno spreco di spazio per le memorie esterne.
E' estremamente rigido in caso di modifiche successive alla sua creazione.
Ogni elemento è costituito da un record che può connettersi con altri N record: relazione N con N (N:N)
GERARCHICO
anni '60
I dati sono organizzati
secondo strutture ad albero
Ogni elemento prende il nome di segmento e il modello gerarchico permette di rappresentare i dati sfruttando la relazione tra segmenti padre e segmenti figli, realizzando la relazione "1 a N" o relazione uno-a-molti (1:N), dove ogni padre può avere molti figli, ma ogni figlio può avere un solo padre.
E' semplice recuperare le informazioni quando i dati sono proprio di natura gerarchica mentre risulta complesso estrarre i dati secondo altri criteri.
La radice è il record principale del database da cui partono uno o più sottoalberi a esso simili.
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.
FASE 4:
FISICA - IMPLEMENTAZIONE
Completamento dello schema logico in funzione dell'organizzazione fisica
FASE 5:
REALIZZAZIONE
Progetto e realizzazione delle procedure atte a soddisfare le richieste specificate nel progetto utilizzando gli strumenti informatici di alto livello
MODELLAZIONE dei dati
FASI 1 - 2 - 3
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 (data modeling).
Serve per tradurre i dati dal punto di vista dell'utente al punto di vista dell'applicazione.
Gazmen Krosi
MODELLAZIONE FUNZIONALE
FASI 4 - 5