Sintesi Database

6
LE BASI DI DATI Definizione: Una base di dati è una raccolta di fati logicamente correlati e progettati per essere fruiti in maniera ottimizzata da differenti applicazioni e/o utenti. In generale possiamo definire il Database come una collezione di archivi di dati ben organizzati e ben strutturati, in modo che possono costituire una BASE di lavoro per utenti diversi con programmi diversi. Attraverso i database è possibile memorizzare e gestire in modo flessibile ed efficiente le informazioni che sono “il vero patrimonio di ogni organizzazione”. Una base di dati per essere definita tale deve essere: - sicura, cioè impedire che il database venga danneggiato da interventi accidentali o non autorizzati; - integra , ossia garantire che le operazioni effettuate sul database da utenti autorizzati non provochino una perdita di consistenza dei dati; - consistente , cioè i dati in essi contenuti devono essere significativi ed essere effettivamente utilizzabili nelle applicazioni dell’ azienda; - condivisibili, più utenti e/o applicazioni diverse devono poter accedere ai dati; - persistente, tempo di vita delle informazioni non limitato a quello di esecuzione delle applicazioni; - efficace, nel senso che le informazioni devono essere rappresentative della realtà che si vuole analizzare; I prodotti software per la gestione dei database vengono indicati con il termine DBMS ( DataBase Management System). Si definisce DBMS (Database Management System) il sistema di gestione del database visto nel suo complesso. Il DBMS si preoccupa di gestire interamente i dati, compresa la loro definizione e il modo in cui vengono fisicamente archiviati. Limiti nell’organizzazione tradizionale degli archivi e loro superamento

description

Database

Transcript of Sintesi Database

Page 1: Sintesi Database

LE BASI DI DATI

Definizione: Una base di dati è una raccolta di fati logicamente correlati e progettati per essere fruiti in maniera ottimizzata da differenti applicazioni e/o utenti. In generale possiamo definire il Database come una collezione di archivi di dati ben organizzati e ben strutturati, in modo che possono costituire una BASE di lavoro per utenti diversi con programmi diversi. Attraverso i database è possibile memorizzare e gestire in modo flessibile ed efficiente le informazioni che sono “il vero patrimonio di ogni organizzazione”.

Una base di dati per essere definita tale deve essere:

- sicura, cioè impedire che il database venga danneggiato da interventi accidentali o non autorizzati;

- integra , ossia garantire che le operazioni effettuate sul database da utenti autorizzati non provochino una perdita di consistenza dei dati;

- consistente , cioè i dati in essi contenuti devono essere significativi ed essere effettivamente utilizzabili nelle applicazioni dell’ azienda;

- condivisibili, più utenti e/o applicazioni diverse devono poter accedere ai dati;- persistente, tempo di vita delle informazioni non limitato a quello di esecuzione delle

applicazioni;- efficace, nel senso che le informazioni devono essere rappresentative della realtà che si

vuole analizzare;

I prodotti software per la gestione dei database vengono indicati con il termine DBMS ( DataBase Management System). Si definisce DBMS (Database Management System) il sistema di gestione del database visto nel suo complesso. Il DBMS si preoccupa di gestire interamente i dati, compresa la loro definizione e il modo in cui vengono fisicamente archiviati.

Limiti nell’organizzazione tradizionale degli archivi e loro superamento

Le tecniche di gestione delle basi di dati nascono per superare i problemi e i limiti che nascono nelle tradizionali organizzazioni degli archivi in modo non integrato.

Il problema principale di un archivio è la ridondanza.

La ridondanza dei dati si ha quando questi sono “copiati” più volte all’interno dell’archivio (o di più archivi).

Questa può provocare diversi problemi:

- L’incongruenza, cioè il mancato aggiornamento di tutti i dati (copie di dati), contenuti negli archivi;

- L’inefficienza dei dati, cioè i dati aziendali non sono più affidabili.

Fra i limiti individuati nell’organizzazione tradizionale ricordiamo:

Page 2: Sintesi Database

- I programmi sono legati agli archivi che essi gestiscono, al variare della struttura di un archivio devono variare i programmi che lo utilizzano;

- Alcuni dati presenti più volte in archivi diversi come campi di record diversi: si ha ridondanza;

- L’accesso ai dati è determinato dal tipo di organizzazione assegnata agli archivi, dalle chiavi e dall’ordine con cui i campi compaiono all’interno del record.

- Ogni programma che modifica i dati di un file si deve occupare di controllare la validità dei dati immessi

Per eliminare questo problema si utilizzano delle tecniche, che servono appunto a creare delle relazioni tra i vari record in modo da non dover “duplicare” l’informazione (utilizzo di chiavi primarie …).

La progettazione del database

I contenuti dei database rappresentano i dati della realtà da modellare. Modellare i dati significa costruire una rappresentazione semplificata della realtà osservata, individuandone gli elementi caratterizzati e i legami intercorrenti tra loro.

La progettazione di un database avviene su 3 livelli:

1) Livello concettuale, rappresenta la realtà dei dati attraverso un modello chiamato

Il modello concettuale:

E’ definito attraverso uno schema dei dati; questa rappresentazione grafica è indipendente da:

o I valori che saranno assegnati ai dati;

o Le applicazioni degli utenti del database;

o (Le visioni parziali dei dati da parte di particolari utenti.)

Questo metodo consente al database di evolvere nel tempo insieme alla realtà per la quale è stato progettato e creato.

Il modello concettuale rappresenta un patrimonio importante per le aziende, poiché descrive i tutti dati esistenti in azienda.

2) Livello logico, descrive la composizione ed il formato dei dati nel loro aspetto di struttura logica di dati attraverso il

Page 3: Sintesi Database

Il modello logico:

Nel passaggio dal modello concettuale al modello logico l’insieme dei dati è dotato di una struttura che deve facilitarne:

o La manipolazione dei dati;

o L’interrogazione, la possibilità di ritrovare i dati.

in pratica programmatori e/o utenti finali utilizzano (creano, vedono, modificano) i dati secondo il modello logico.

Esistono 3 tipi di modelli logici:

Gerarchico

Reticolare

Relazionale

3) Livello fisico, è l’effettiva installazione degli archivi elettronici, cioè è l’implementazione del livello logico.

Le strutture del modello logico sono implementate selle memorie di massa realizzando in pratica il modello fisico della base di dati (di cui il programmatore e l’utente finale possono totalmente disinteressarsi).

L’attività di progettazione consente prima di tutto di costruire una rappresentazione della realtà in modo indipendente dalla struttura dei dati.

Riassumendo:

1) Prima di tutto sono individuati i dati che sono significativi, ed è definito lo schema concettuale rappresentativo della realtà (Modello E/R).

2) Vengono poi definite le strutture logiche di dati che saranno utilizzare da utenti e programmi (tabelle e associazioni)

3) infine tali strutture sono implementate (automaticamente dal DBMS) memorizzandole su un supporto fisico di registrazione e si ottiene, quindi, il database.

LIVELLO CONCETTUALE: Il modello entità/associazioni

Il modello entità/associazioni (entity/relationship) è uno strumento per analizzare le caratteristiche di una realtà in modo indipendente dagli eventi che in essa accadono, per costruire un modello concettuale dei dati.

Page 4: Sintesi Database

Risultato di questo lavoro di analisi è la rappresentazione grafica detta schema E/R, che mette in evidenza gli aspetti fondamentali del modello concettuale con i dati caratterizzanti e le associazioni tra essi.

Gli elementi di un modello E/R sono:

- Entità

- Attributi

- Associazioni

L’ entità è un oggetto che ha un significato anche quando è considerato in modo isolato ed è di interesse per la realtà che si vuole modellare;

Le entità si classificano definendone il tipo di entità attraverso un nome.

Le istanze sono i singoli elementi che appartengono ad un'unica entità.

Per esempio: gli studenti di una scuola sono racchiusi tutti nell’entità Studenti.

La rappresentazione grafica dell’entità è identificata da un rettangolo.

L’ associazione è un legame che stabilisce un’interazione tra le entità.

Ogni associazione ha 2 versi con specifici significati diversi.

La rappresentazione grafica dell’associazione è identificata da una linea.

Gli attributi rappresentano le proprietà delle entità e talvolta delle associazioni.

Le caratteristiche di ogni attributi sono:

- Il formato, il tipo di valore che assume;

- l’opzionalità, la possibilità di non essere inserito.

Il valore nullo rappresenta un’informazione mancante.

L’insieme dei possibili valori assunti da un attributo si chiama dominio dell’attributo.

Prende il nome di chiave primaria l’insieme di uno o più attributi, che consentono di distinguere un’istanza dall’altra per la stessa entità (identificano in maniera univoca l’istanza) .

La rappresentazione grafica delle chiavi primarie è costituita dal post-fisso “PK” per tutti gli attributi o dalla sottolineatura dell’ (degli) attributo (i).

Page 5: Sintesi Database

Le associazioni tra entità

Un’associazione può essere obbligatoria (deve essere sempre presente), oppure opzionale (può non essere presente).

La rappresentazione grafica dell’associazione obbligatoria è una linea continua, invece, per quella opzionale la linea è tratteggiata.

Il grado di un verso dell’associazione è la caratteristica che indica quante istanze dell’entità di arrivo si associano all’istanza dell’entità di partenza.

Il grado può essere possono essere di 3 tipi:

1) Associazione 1:N (uno a molti) o semplice

ad un elemento di E1 corrispondono più elementi di E2, mentre, ad ogni elemento di E2 corrisponde un e un solo elemento dell’insieme E1.

2) Associazione 1:1 (uno a uno) o biunivoca;

ad ogni elemento dell’insieme E1 corrisponde uno e un solo elemento dell’insieme E2

3) Associazione N:N (molti a molti) o complessa;

ad ogni elemento dell’insieme E1 possono corrispondere più elementi dell’insieme E2 e viceversa.

Le associazioni molti a molti sono poco pratiche, perciò sono scomposte in più associazioni uno a molti.