Scaricare la presentazione
La presentazione è in caricamento. Aspetta per favore
1
Basi di Dati: Introduzione
Tutte le organizzazioni trattano informazioni che vanno individuate, raccolte e memorizzate per RECUPERARLE AGGIUNGERLE MODIFICARLE CANCELLARLE Necessità nata molto prima dell’informatica
2
Teoria delle Basi Di Dati
Studia come organizzare al meglio GRANDI quantità di dati o informazioni per GESTIRE tali dati o informazioni in modo SEMPLICE (<> utenti e applicazioni) EFFICIENTE (Spazio e Tempo) EFFICACE (Rappresentano realtà organizzazione) SICURO (utenti identificabili e autorizzati)
3
Definizione di Database (o Base di Dati)
É una collezione o raccolta di dati logicamente correlati per modellare una realtà. I dati sono memorizzati in una MM ed organizzati in modo tale da poter essere usufruiti da diverse applicazioni e differenti utenti COLLEZIONE → dati di diverse entità ma che interessano l’organizzazione Es. Agenzia Bancaria Dimensioni: da pochi MB a diversi TB
4
Caratteristiche di un DB
SICURO CONSISTENTE INTEGRO CONDIVISIBILE PERSISTENTE SCALABILE
5
SISTEMI INFORMATIVI e INFORMATICI
Organizzazione azienda Mission Obiettivi generali e specifici Unità organizzative con legami funzionali o gerarchici RISORSE Tutto ciò con cui l’azienda opera (materiale o immateriale) per raggiungere i suoi obiettivi PROCESSO Insieme di attività che l’azienda deve svolgere su una o più risorse (omogenee) Le informazioni sono una risorsa che...riguarda tutte le altre risorse
6
Sistema informativo e Informatico
Insieme organizzato di strumenti automatici, procedure manuali, norme organizzative, risorse umane e materiali orientate alla gestione delle informazioni rilevanti per un’azienda Gestione = raccolta, archiviazione, elaborazione, scambio SISTEMA INFORMATICO: è la parte automatizzata del S.I.. E’ l’insieme degli strumenti informatici utilizzati per il trattamento automatico delle informazioni al fine di agevolare il Sistema Informativo Es. artigiano, compagnia aerea
7
Ruolo S.I in Azienda
8
Dato e Informazione DATO: in informatica è la descrizione elementare di un fatto o un avvenimento. Codifica un fatto INFORMAZIONE: è l’incremento di conoscenza che può essere acquisita dai dati Es. 47 ????
9
nuova conoscenza cioè informazione
Dato e Informazione Nome e Cognome Età Alberto 47 Solo se attribuiamo ai dati una CHIAVE di INTERPRETAZIONE i dati portano nuova conoscenza cioè informazione
10
Dato e Informazione Articoli in Magazzino Codice Articolo Quantità
23 Art02 14 Art03 45 Art01 Art02 Art03
11
SCHEMI E ISTANZE SCHEMA (o intensione)
È la chiave di interpretazione dei dati ossia la semantica (il significato) del dato stesso ISTANZA DI UNO SCHEMA (o estensione) Insieme dei valori assunti da uno schema in un dato istante di tempo ...se parliamo di schema o significato intensionale...ci riferiamo al contenuto informativo dei dai ...se parliamo di istanza o significato estensionale… ci riferiamo ai valori di uno schema in un dato istante
12
CATEGORIE ED OCCORRENZE
CATEGORIA: Gruppo di dati avente lo stesso schema, la stessa chiave di interpretazione Es. La categoria “Articoli in magazzino” OCCORRENZA di una base di dati: È l’insieme delle istanze delle categorie di una Base di Dati in un dato istante
13
terminologia
14
Classificazione Basi di Dati
Le basi di dati si classificano in base al “modello dei dati” supportato MODELLO DEI DATI: È un insieme di concetti e di costrutti utilizzati per organizzare i dati di interesse di una organizzazione e descriverne la struttura e la dinamica (per esempio le associazioni ed i vincoli che devono rispettare)
15
Modelli Concettuali Sono i modelli di più “alto livello” cioè i più astratti Rappresentano i concetti importanti di una organizzazione (i dati) in modo indipendente da ogni sistema cercando di descrivere i concetti del mondo reale A questo livello non interessa come sono rappresentati i dati in MM Noi vedremo il modello E-R (Entity Relationship, Entità Associazioni)
16
Modelli Logici Sono ad un livello “più basso” rispetto ai concettuali (derivano da essi) Consentono una specifica rappresentazione dei dati per esempio tabelle, alberi, grafi, oggetti Descrivono i dati ad un livello intermedio tra ciò che l’utente vede e la loro implementazione finale
17
Analisi e Progettazione Database
...abbiamo parlato tanto di database...ma come si progetta un sistema basato su DB? Si parte dalle cosiddette specifiche della realtà di interesse espresse in Linguaggio Naturale, di solito risultato di interviste al cliente ...tanto tempo fa...si passava da tali specifiche al Software!
18
Analisi e Progettazione Database
...questo metodo...crea tanti problemi… No documentazione del programma Difficoltà modifica Difficoltà manutenzione SOLUZIONE? Si procede in PIÙ FASI
19
Analisi e Progettazione Database
Significa ASTRATTE, cioè si descrivono dati e funzioni che operano sui dati in modo indipendente dal linguaggio di programmazione Si specifica il COME FARE ciò che è stabilito nelle Specifiche Formali
20
Analisi e Progettazione Database
...tempo fa...si dava più importanza alle FUNZIONI che ai DATI In seguito si è capito che la risorsa principale dono i DATI Attualmente si usa un approccio di progettazione SIMMETRICO o a PARI DIGNITÀ
21
Analisi e Progettazione Database
Verifica di completezza reciproca
22
Analisi e Progettazione Database
23
DBMS e Livelli di Astrazione
Un po di storia… Prima dei database l’organizzazione di un archivio (file) dipendeva fortemente dai programmi applicativi...( ricordate...il centro erano le funzioni non i dati…) Questo approccio presentava molti inconvenienti a causa della RIDONDANZA: i dati dovevano essere memorizzati più volte in diversi file per essere disponibili per i vari programmi
24
RIDONDANZA questo...causava molti problemi
Più copie degli stessi dati (più costi di memorizzazione) Ad ogni variazione devo aggiornare tutti i file ove il dato è presente (operazione complessa e costosa: devo pagare i dipendenti per fare lo stesso lavoro più volte) Impossibile avere tutti gli archivi allo stesso livello di aggiornamento
25
Ridondanza → Incongruenza e Inconsistenza
Il punto 3 è il più grave perché Da una interrogazione (richiesta di dati) degli archivi potrei ottenere informazioni non aggiornate → problema dell’incongruenza dei dati Se alcuni dati sono aggiornati ed altri no potrei non capire più quali sono quelli “veri” o “corretti” Inconsistenza dei dati
26
Ridondanza → concorrenza
Si parla di concorrenza quando due o più programmi accedono allo stesso file contemporaneamente In questo caso senza un controllo di mutua esclusione se i file modificano lo stesso dato viene salvata solo l’ultima modifica perdendo un’operazione (Esempio: prelievo o versamento di denaro)
27
Archivi → Database Il problema è stato superato con l’introduzione dei Database che sono collezioni di dati logicamente correlati tra loro gestiti in modo che possano essere fruiti da diversi utenti e programmi contemporaneamente
28
DBMS Data Base Management System (Sistema di gestione dei database)
Sono dei software nati per la gestione di tutto ciò che riguarda i database, dalla creazione dello stesso alla sua interrogazione, aggiornamento (inserimento, cancellazione, modifica), gestione della concorrenza etc. Nel caso dei DB Relazionali, che tratteremo nella prossime unità, si parla Di RDBMS, ossia Relational DBMS
29
Architettura DBMS e Relazioni con l’esterno
Possiamo immaginare tre livelli di interazione con i database gestiti dal DBMS Livello Esterno Livello Logico Livello Fisico Il livello esterno è quello più vicino all’utente del DB, quello interno è quello più vicino alla macchina
30
DBMS e Interazione
31
Livello esterno e Viste
È il livello con cui interagiscono gli utenti attraverso applicazioni specifiche per visualizzare/ricercare dati e modificarli Ogni utente può essere interessato o abilitato a trattare solo a una parte dei dati Il DBA (Data Base Administrator) può creare delle “viste” specifiche per ciascun utente Una vista contiene tutto e solo ciò che l’utente è abilitato ad usare
32
Vista Una vista è una astrazione del Database che coinvolge i dati di una istanza del Database limitatamente alla porzione interessata o consentita
33
DML Data Manipulation Language
Al livello esterno è disponibile un linguaggio che serve per interrogare un database Inserire dati Modificare dati esistenti Cancellare dati Es. Interrogazione di un database: Elenco degli alunni delle classi terze dell’istituto Atzeni
34
Livello Logico A questo livello si trova il DB logico che da una rappresentazione logica dello schema concettuale del DB È indipendente dalla realizzazione fisica del DB A questo livello il DBMS mette a disposizione 2 linguaggi DDL (Data Definition Lanuage) DCL (Data Control Language)
35
DDL e DCL DDL È il linguaggio utilizzato per definire lo schema dei dati cioè l’insieme delle categorie dei dati e le loro relazioni DCL È il linguaggio utilizzato per limitare e controllare l’accesso al DB da parte degli utenti (Possiamo chi può accedere al DB e quali operazioni può eseguire sul DB)
36
Livello Interno o Fisico
È il livello utilizzato per la effettiva memorizzazione su Memoria di Massa dei dati relativi al DB Si occupa dei tipi di dati, dei formati, dei metodi di accesso, delle strutture di memorizzazione Di questo livello l’utente del DB e del DBMS non sa nulla È un problema gestito interamente dai progettisti software del DBMS Dalla sua implementazione dipende gran parte dell’efficienza del DB DMCL (Device Media Control Language): è il linguaggio che si utilizza per l’implementazione dei dati e la loro organizzazione nella Memoria di Massa
37
Indipendenza Logica e Fisica
I. Logica si intende la possibilità di modificare lo schema logico del DB senza dover modificare i programmi applicativi non interessati alla modifica I. Fisica Si intende la possibilità di modificare l’implementazione fisica dei dati senza dover modificare lo schema logico e le applicazioni che agiscono sul DB
38
Indipendenza logica e Fisica
Con l’organizzazione a tre livelli vista precedentemente si possono realizzare l’indipendenza Fisica e Logica
Presentazioni simili
© 2024 SlidePlayer.it Inc.
All rights reserved.