Database

what-is-databaseIn informatica il termine databasebanca dati o base di dati, indica un archivio dati, o un insieme di archivi, in cui le informazioni in esso contenute sono strutturate e collegate tra loro secondo un particolare modello logico (relazionalegerarchico,reticolare o a oggetti) e in modo tale da consentire la gestione/organizzazione efficiente dei dati stessi grazie a particolari applicazioni software dedicate (DBMS), basate su un’architettura di tipo client-server, e ai cosiddetti querylanguage per l’interfacciamento con le richieste dell’utente (query di ricerca o interrogazione, inserimento, cancellazione ed aggiornamento).

MODELLI DEI DATI

Quando si vuole una realizzazione di un sistema informativo aziendale, chi progetta il database deve scontrarsi con aspetti della realtà relativi ad entità presenti all’interno dell’azienda. Il compito dello staff di progettazione è quello di modellizzare la realtà che c’e intorno, individuare gli oggetti utili ai fini del sistema e, a partire da questi, realizzare un’organizzazione dati precisa ed efficiente. Quello che in effetti si fa è modellizzare  la realtà  d’interesse. La realtà di interesse va analizzata meticolosamente al fine di ottenere una corretta progettazione del sistema finale.

Schemi e modelli

Tre sono i passi fondamentali che portano dalla realtà d’interesse allo schema finale del database:

realtà d’interesse —–> schema concettuale

schema concettuale —–> schema logico

schema logico —–> schema fisico

Il passaggio tra uno stadio e l’altro viene realizzato tramite modelli. Per schema si intende una rappresentazione della realtà. Uno schema può essere visto come un insieme di simboli posti in corrispondenza ad elementi della realtà. Un modello invece e un insieme di regole e di convenzioni che  portano alla realizzazione di uno schema. Il modello che consente la rappresentazione della realtà d’interesse come schema concettuale è chiamato modello concettuale, quello che realizza lo schema logico è detto modello logico e quello che porta alla creazione dello schema fisico viene detto modello fisico.

Modelli concettuali

La progettazione dello schema concettuale di un database è  forse l’operazione più delicata tra quelle che portano ad un Sistema informativo. Una cattiva progettazione influenzerà l’efficienza e la funzionalità dell’intero sistema. Il problema sta nel fatto che la realtà d’interesse è  una porzione di mondo cosi come è percepita da chi deve costruire la rappresentazione, ma non sempre quest’ultimo  la percepisce in tutti i suoi aspetti. I modelli usati nella  progettazione concettuale vengono definiti anche modelli semantici.

Da notare che la realizzazione di uno schema concettuale e totalmente indipendente da qualsiasi piattaforma hardware o software e da qualsiasi DBMS. Gli schemi concettuali potrebbero esistere anche senza gli elaboratori. Il modello semantico più usato e quello sperimentato da Peter Chen nel 1976 chiamato Entity-Relationship Model (Modello Entita-Relazione). Dalla realtà vengono estrapolati degli oggetti chiamati entità, ogni entità ha caratteristiche proprie rappresentate mediante attributi. Il legame tra un’entità e i suoi attributi non è  assoluto ma varia in funzione del problema che si sta affrontando.

Negli esempi rappresentati, l’entità“CLIENTE” relativa ad un “Sistema di gestione di

noleggio auto” (a) presenta attributi differenti dall’entità “CLIENTE” di un “Sistema di gestione noleggio video” (b). Ad esempio nel primo e essenziale l’attributo “Numero

patente” che nel secondo non e un elemento utile. Per un cliente di una videoteca invece può essere utile la data di “Scadenza abbonamento”, per un eventuale rinnovo, mentre nel caso di un autonoleggio questa informazione non e significativa.

Modelli logici

Il modello logico consente la transazione di uno schema concettuale in schema logico. Lo schema logico, come quello concettuale, è indipendente dalla piattaforma hardware e dal sistema operativo, ma dipende fortemente dal DBMS. Infatti questi ultimi sono studiati e progettati per funzionare con un determinato modello logico. Tra i modelli logici, il più diffuso è il “Modello relazionale”. Altri, più datati, e ormai meno diffusi sono il “Modello gerarchico” ed il “Modello reticolare”. Di relativamente nuova concezione è  il “Modello Object Oriented” ma ancora presenta problemi di realizzazione fisica.

Modelli fisici

Il modello fisico dipende fortemente dall’hardware, dal sistema operativo (in particolare da File System) e dal DBMS. Le regole sono dettate dalle caratteristiche del sistema ospite, quindi, il livello di astrazione in questa fase è molto ridotto.

Il Modello  Entità-Relazione (E-R)

Il modello “E-R” è ormai usato da svariati anni ed il suo successo è dovuto ad una

relativa semplicità di utilizzo ed al fatto che il passaggio allo schema logico risulta

pressoché immediato.

Entità

L’entità è uno dei concetti basilari del modello “E-R” (l’altro e la relazione). Un’entità

rappresenta un insieme di oggetti delle realtà di cui si individuano proprietà  comuni. La prima attività relativa alla progettazione concettuale è proprio l’individuazione dell’ entità.

coinvolte. Le proprietà di cui godono le entità  vengono rappresentate mediante attributi.  I dati relativi ad un’entità vengono chiamati “elementi” o “occorrenze” dell’entità.

Relazione

Le entità non sono indipendenti ma alcune di esse sono legate da “relazioni”. Nel caso

dell’entità “fattura” questa e sicuramente in relazione con l’entità “cliente” in quanto una fattura viene emessa a fronte di un acquisto da parte di un cliente. E’ rilevante anche il fatto che ad ogni fattura e associato un singolo cliente, mentre un cliente può avere associate zero o più fatture. Se consideriamo la relazione tra “fattura” ed “articolo” le cose cambiano: ad una fattura possono essere associati uno o più articoli, un articolo può comparire in zero o più fatture. Quindi la relazione che intercorre tra “fattura” e “cliente” e diversa da quella che lega “fattura” ed “articolo”. Quello che cambia e la “cardinalità” della relazione.

SCHEMI (SCHELETRO):

➢ Gli schemi scheletro descrivono una prima struttura di massima dello schema senza indicazioni sul tipo di entità e delle relazioni

➢ Descrivono in generale i collegamenti tra le entità di interesse e le

relazioni che intercorrono tra le stesse entità.

Server di database

Un Server di database è la parte del DBMS (e, per estensione, il server su cui il programma opera) che si occupa di fornire i servizi di utilizzo del database ad altri programmi e ad altri computer secondo la modalità client/server. Il server memorizza i dati, riceve le richieste dei client ed elabora le risposte appropriate.

Tra i più diffusi DBMS open source troviamo:

MySQL

Firebird SQL

PostgreSQL

I più diffusi sistemi commerciali sono:

Oracle

IBM DB2

Microsoft SQL Server

Sybase

I database server sono complessi sistemi software concepiti in un linguaggio binario, oltre che per memorizzare i dati, anche per fornire un accesso rapido ed efficace a una pluralità di utenti contemporaneamente e garantire protezione sia dai guasti che dagli accessi indebiti (sicurezza o protezione del database).

Commenta

Inserisci i tuoi dati qui sotto o clicca su un'icona per effettuare l'accesso:

Logo WordPress.com

Stai commentando usando il tuo account WordPress.com. Chiudi sessione / Modifica )

Foto Twitter

Stai commentando usando il tuo account Twitter. Chiudi sessione / Modifica )

Foto di Facebook

Stai commentando usando il tuo account Facebook. Chiudi sessione / Modifica )

Google+ photo

Stai commentando usando il tuo account Google+. Chiudi sessione / Modifica )

Connessione a %s...