Fondamenti di Informatica I CDL in Ingegneria Elettronica - A.A. 2006-2007 CDL in Ingegneria Elettronica - A.A. 2006-2007 14. Archivi e basi di dati Ing.

Slides:



Advertisements
Presentazioni simili
Tecnologia delle basi di dati: Strutture fisiche di accesso
Advertisements

1 Introduzione ai calcolatori Parte II Software di base.
Introduzione ai DBMS I Sistemi di Gestione di Basi di Dati sono strumenti software evoluti per la gestione di grandi masse di dati residenti su memoria.
DBMS (DataBase Management System)
© 2007 SEI-Società Editrice Internazionale, Apogeo Unità B1 Introduzione alle basi di dati.
Unità D2 Archivi e file.
© 2007 SEI-Società Editrice Internazionale, Apogeo Unità C1 Il linguaggio SQL.
Una Introduzione alle Basi di Dati
Hard disk.
File System Cos’è un File System File e Directory
Informatica Generale Marzia Buscemi
Basi di Dati prof. A. Longheu
Archivi   L’uso degli archivi deriva dalla necessità di conservare dati e informazioni in modo permanente affinché possano essere riutilizzate anche.
ESEMPI DI ARCHIVI DI DATI
Interfaccia del file system
Laboratorio Informatico
La Modifica dei Dati in una Base Dati La modifica dei dati contenuti allinterno di una base dati è unoperazione delicata Infatti, ogni potenziale problema.
Luglio 2004Memorie Tradizionali1 MEMORIE TRADIZIONALI Luglio 2004.
I file l I File sono l unità base di informazione nellinterazione tra utente e sistema operativo l Un file e costituito da un insieme di byte attinenti.
L’uso dei database in azienda
Tipo Documento: unità didattica 1 Modulo 14 Compilatore: Antonella Bolzoni Supervisore: Data emissione: Release: Indice: A.Scheda informativa B.Introduzione.
File.
Università degli Studi di Bergamo Facoltà di Lingue e Letterature Straniere Facoltà di Lettere e Filosofia A.A Informatica generale 1 Appunti.
Disco magnetico (2) Ciascuna traccia è divisa in settori
Basi di dati. Vantaggi degli archivi digitali Risparmio di spazio: sono facilmente trasferibili e duplicabili Risparmio di tempo: si può accedere ai dati.
Struttura dei sistemi operativi (panoramica)
Basi di dati Università Degli Studi Parthenope di Napoli
La gestione dell'I/O Architettura degli elaboratori 1 - A. Memo La gestione dellI/O 4Prestazioni e generalità 4.1Modelli di funzionamento 4.2Dischi.
Archivi e basi di dati Vito Perrone
Archivi e basi di dati Vito Perrone
Modello Relazionale Definisce tipi attraverso il costruttore relazione, che organizza i dati secondo record a struttura fissa, rappresentabili attraverso.
MEMORIA CENTRALE Spazio di lavoro del calcolatore: contiene i dati da elaborare e i risultati delle elaborazioni durante il funzionamento del calcolatore.
Daniel Stoilov Tesi di Laurea
DBMS ( Database Management System)
Le memorie del calcolatore
File ad accesso casuale o random
INFORMATICA Corso Base Modulo G: I DataBase  Access.
Modulo 1 - Concetti di base della Tecnologia dell'Informazione
STRUTTURA GENERALE DI UN ELABORATORE
DAGLI ARCHIVI AI DATABASE
ACCESS Introduzione Una delle necessità più importanti in informatica è la gestione di grandi quantità di dati. I dati possono essere memorizzati.
MODELLO LOGICO DEI DATI
Dottorato di ricerca Nuove Tecnologie e Informazione Territorio – Ambiente Nozioni fondamentali di Basi di Dati Seminario interno.
Introduzione a Oracle 9i
Basi di Dati e Sistemi Informativi
Il Sistema Operativo: il File System
LE BASI DI DATI E IL LINGUAGGIO SQL.
Dati e DBMS DBMS relazionali SQL Progettazione di una base di dati Programma del Corso.
Architettura Centralizzata di un DBMS Relazionale
ITCG “V. De Franchis” - PON FSE Modulo G/1 l’informatica”
I DATABASE.
I DBMS BASI DI DATI (DATABASE) Insieme organizzato di dati utilizzati
Memorie di massa.
Dati e DBMS DBMS relazionali SQL Progettazione di un DBMS Normalizzazione Programma del Corso di Basi di Dati.
Introduzione alle basi di dati
Microsoft Access Chiavi, struttura delle tabelle.
1 Alcuni esempi di dispositivi Disco rigido, RAID, video.
1 Memorie di massa L’informazione è rappresentata dallo stato di magnetizzazione che può essere positivo o negativo ed è associato ad una cifra binaria.
© 2015 Giorgio Porcu - Aggiornamennto 28/03/2015 UdA 1A Database Progettazione Fisica G IORGIO P ORCU
Memoria Cache l Memoria molto veloce intermedia tra RAM e CPU l i dati di uso piu’ frequente sono mantenuti nella memoria Cache per minimizzare i trasferimenti.
Informatica Introduzione alle basi di dati Lezione 1 Scienze e tecniche psicologiche dello sviluppo e dell'educazione, laurea magistrale Anno accademico:
Corso integrato di Matematica, Informatica e Statistica Informatica di base Linea 1 Daniela Besozzi Dipartimento di Informatica e Comunicazione Università.
ICT e Sistemi informativi Aziendali Materiale di supporto alla didattica.
11. Archivi e basi di dati Informatica - CDL in Ingegneria Industriale- A.A Ing. Simona Colucci.
Access Breve introduzione. Componenti E’ possibile utilizzare Access per gestire tutte le informazioni in un unico file. In un file di database di Access.
Linguaggio SQL. Linguaggi per database La diffusione del modello relazionale ha favorito l’uso prevalente di linguaggi non procedurali: in questo modo.
SQLite. Introduzione a SQLite Oltre alla possibilità di memorizzare informazioni persistenti attraverso Preferences e files, Android mette a disposizione.
DDBMS Distributed database system. DDB Una base di dati distribuita è una collezione di dati che appartengono logicamente allo stesso sistema informativo.
Introduzione alle basi di dati e ai sistemi di gestione di basi di dati.
Vengono detti memorie di massa tutti i supporti (dischi e nastri) su cui vengono registrati dati, documenti e programmi che si vogliono conservare, sono.
Transcript della presentazione:

Fondamenti di Informatica I CDL in Ingegneria Elettronica - A.A CDL in Ingegneria Elettronica - A.A Archivi e basi di dati Ing. Simona Colucci

Sistemi Informativi DEE - Politecnico di Bari Fondamenti di Informatica I CDL in Ingegneria Elettronica - A.A Memoria di tipo persistente –Un dato è persistente se è mantenuto integralmente quando il calcolatore viene spento oppure si verifica un errore Obiettivi nelluso della memoria di massa: –Memorizzare in modo compatto grandi quantità di dati –Accesso efficiente e selettivo ai dati Possiamo classificare i dispositivi di memoria di massa in: –Dispositivi ad accesso sequenziale (nastri) –Dispositivi ad accesso diretto (dischi) Basati su tecnologia magnetica: linformazione è memorizzata come stato di magnetizzazione(positivo o negativo) delle particelle ferrose presenti sulla pellicola magnetica, indotto da un campo elettrico La tecnologia ottica è sempre più diffusa (per i dischi): lo spazio necessario per lo stato magnetico viene ulteriormente ridotto grazie al laser, che porta maggiore precisione e quindi maggiore capacità Memorie di massa

Sistemi Informativi DEE - Politecnico di Bari Fondamenti di Informatica I CDL in Ingegneria Elettronica - A.A Nastri (1) Accesso sequenziale Sul nastro magnetico sono incise delle piste orizzontali, parallele fra loro I dati vengono registrati serialmente su ogni traccia Il nastro scorre al di sopra della testina di lettura/scrittura che genera campi magnetici per scrivere e ne rimuove per leggere Ai dati sono aggiunti alcuni bit di controllo per consentire il rilevamento di errori (es. bit di parità) Bit Bit di parità

Sistemi Informativi DEE - Politecnico di Bari Fondamenti di Informatica I CDL in Ingegneria Elettronica - A.A Nastri (2) I dati sono organizzati sul nastro in zone contigue, dette record Sono previste zone prive di dati tra i record (inter-record gap) e allinizio(che consente laccelerazione necessaria per portare i dati sulla testina ad una certa velocità) Parametri principali: –Densità di memorizzazione: è misurata in bit per inch (bpi) –Capacità di memorizzazione = densità lunghezza (in pollici) –Velocità di movimento del nastro Alcuni nastri hanno le tracce poste diagonalmente e sono letti da testine rotanti (scansione elicoidale) I nastri sono attualmente impiegati solo per il backup ( e leventuale restore)

Sistemi Informativi DEE - Politecnico di Bari Fondamenti di Informatica I CDL in Ingegneria Elettronica - A.A Dischi (1) Accesso diretto Disk-pack: un certo numero di piatti coperti da uno strato magnetico Ciascun piatto ha una serie di cerchi concentrici (tracce) su entrambi i lati Le tracce sono suddivise in spicchi di ugual grandezza (settori) Le testine di lettura/scrittura si spostano (tutte insieme) radialmente tra le varie tracce

Sistemi Informativi DEE - Politecnico di Bari Fondamenti di Informatica I CDL in Ingegneria Elettronica - A.A Dischi (2) Linizio e la fine dei settori sono marcati con sequenze particolari di bit (formattazione) Blocco di ingresso/uscita: gruppo di dati che vengono letti o scritti con ununica operazione di ingresso/uscita Ciascun blocco è individuato dalla terna: (num. superficie, num. traccia, num. settore) Una zona di memoria (il buffer) contiene i dati prima che vengano scritti su disco o dopo essere stati letti da disco

Sistemi Informativi DEE - Politecnico di Bari Fondamenti di Informatica I CDL in Ingegneria Elettronica - A.A Dischi (3) Accesso ai dati: –Spostamento della testina verso la traccia richiesta (tempo di seek) –Attesa del passaggio del settore richiesto (tempo di latenza) Mediamente, pari a metà del tempo di rotazione –Trasferimento dei dati da/verso il buffer (tempo di trasferimento) Quindi: t i/u = t seek + t lat + t trasf Cilindro: linsieme delle tracce, appartenenti a tutte le superfici, poste alla stessa distanza dal centro: i dati di uno stesso file vengono messi sullo stesso cilindro per evitare il seek

Sistemi Informativi DEE - Politecnico di Bari Fondamenti di Informatica I CDL in Ingegneria Elettronica - A.A Altre memoria di massa Floppy disk: magnetico Dischi ottici –CD-ROM –CD-R/RW –DVD Chiavi USB: memorie a stato solido Flash EPROM

Sistemi Informativi DEE - Politecnico di Bari Fondamenti di Informatica I CDL in Ingegneria Elettronica - A.A Organizzazione degli archivi Le informazioni vengono organizzate in memoria in record logici Blocchi di ingresso/uscita e record logici: –In un medesimo blocco di ingresso/uscita può trovare posto un certo numero di record logici –Esistono record logici così grandi da occupare più blocchi di ingresso/uscita Laccesso ad un record logico comporta il trasferimento di uno o più blocchi di ingresso/uscita Coefficiente di riempimento di un file: numero di byte allocati a record logici nel file numero di byte dei blocchi fisici allocati al file

Sistemi Informativi DEE - Politecnico di Bari Fondamenti di Informatica I CDL in Ingegneria Elettronica - A.A Basi di dati Base di dati (o database): insieme i dati, raccolti in base a precise regole, e organizzati in strutture piuttosto rigide DBMS: sistema software che organizza e gestisce basi di dati –Opera al di sopra del sistema operativo –Offre linguaggi specifici per lorganizzazione e la gestione dei dati –Offre meccanismi efficienti per laccesso ai dati

Sistemi Informativi DEE - Politecnico di Bari Fondamenti di Informatica I CDL in Ingegneria Elettronica - A.A Basi di dati e archivi separati (1) Dati gestiti basandosi sui file Più applicazioni accedono ai file Problemi: –Inconsistenza e ridondanza dei dati –Riservatezza dei dati –Integrità dei dati –Concorrenza Progr. 1Progr. 2Progr. 3 File File modificati

Sistemi Informativi DEE - Politecnico di Bari Fondamenti di Informatica I CDL in Ingegneria Elettronica - A.A Basi di dati e archivi separati (2) Dati gestiti da un DBMS Vantaggi: –I dati hanno una sola rappresentazione –Laccesso alla base di dati viene disciplinato dal DBMS –Alcuni vincoli di integrità possono essere definiti e verificati in modo automatico Progr. 1Progr. 2Progr. 3 DBMS Base di dati

Sistemi Informativi DEE - Politecnico di Bari Fondamenti di Informatica I CDL in Ingegneria Elettronica - A.A Modelli per la gestione dei dati Modello dei dati:collezione di costruttori di tipo utilizzabili da un DBMS –Gerarchico: basato su strutture ad albero –Reticolare: basato su strutture a grafo –Relazionale: basato sul concetto di insieme e sulla strutturazione dei dati tramite tabelle –Ad oggetti: estende alle basi di dati alcune caratteristiche dei linguaggi di programmazione orientati agli oggetti Schema di una base di dati: descrizione dei dati di uno specifico contesto applicativo –Definita tramite un attività detta database design –Istanza (od occorrenza) di una base di dati: valore assunto dalla base di dati in un particolare istante di tempo

Sistemi Informativi DEE - Politecnico di Bari Fondamenti di Informatica I CDL in Ingegneria Elettronica - A.A Categorie di linguaggi Linguaggi forniti da un DBMS –Data Definition Language (DDL): Utilizzato per definire lo schema della base di dati Lo schema viene salvato nel dizionario dei dati –Data Manipulation Language (DML): Per formulare interrogazioni (o query) sulla base di dati Per modificare il contenuto della base di dati Nel seguito vedremo il linguaggio SQL (che supporta entrambi questi aspetti)

Sistemi Informativi DEE - Politecnico di Bari Fondamenti di Informatica I CDL in Ingegneria Elettronica - A.A Livelli di astrazione Livelli di astrazione: –Fisico: descrive la base di dati come un insieme di record in memoria di massa –Logico: descrive la struttura di ciascun dato e i collegamenti tra dati diversi –Esterno: presenta i dati così come vengono visti da un particolare utente o da una classe di utenti Livelli di indipendenza: –Fisica: ridefinire il livello fisico senza modificare il livello logico –Logica: definire nuovi schemi esterni senza modificare la struttura logica Descrizione esterna 1 Descrizion e esterna 2 Descrizion e esterna n Descrizione logica Descrizione interna Utente 1Utente 2Utente 3Utente 4Utente n Archivi

Sistemi Informativi DEE - Politecnico di Bari Fondamenti di Informatica I CDL in Ingegneria Elettronica - A.A Transazioni Transazioni: robuste esecuzioni di programma che non lasciano mai la base di dati in uno stato inconsistente Proprietà acide delle transazioni: –Atomicità: vi sono solo due possibili terminazioni Successo: tutte le attività della transazione sono andate a buon fine, la base di dati è aggiornata (commit) Fallimento: qualche attività della transazione non va a buon fine, la transazione fallisce tutta, la base di dati non viene modificata (rollback) –Consistenza: i vincoli di integrità dei dati non sono mai violati –Isolamento: transazioni concorrenti sono isolate le une dalle altre –Durabilità: una volta completata con successo, leffetto della transazione sulla base di dati è permanente

Sistemi Informativi DEE - Politecnico di Bari Fondamenti di Informatica I CDL in Ingegneria Elettronica - A.A Utenti di una base di dati Data Base Administrator (DBA): –Definizione degli schemi esterni, logico e fisico –Definizione dei vincoli di integrità e dei requisiti di riservatezza –Per questi compiti, il DBA utilizza il DDL Terminalista: –Interagisce con unapplicazione che a sua volta si interfaccerà con la base di dati Programmatore: –Scrive le applicazioni e le rende disponibili agli utenti –Utilizza il DML per interfacciare applicazione e base di dati Utente occasionale: –Formula query non previste dalle applicazioni, usando il DML

Sistemi Informativi DEE - Politecnico di Bari Fondamenti di Informatica I CDL in Ingegneria Elettronica - A.A Base di dati relazionale Relazione, una tabella caratterizzata da: –Un numero fisso di colonne (dette attributi); ciascuna colonna assume valori estratti da uno stesso dominio –Un numero variabile di righe (dette tuple) –Grado di una relazione: il numero di colonne –Cardinalità di una relazione: il numero di righe –Schema di una relazione: il nome della relazione seguito dai nomi dei suoi attributi; a ciascun attributo è associato un dominio –Istanza di una relazione: insieme delle tuple presenti nella base di dati in un determinato istante (quindi, varia nel tempo) Base di dati relazionale, un insieme di relazioni: –Schema di una base di dati: lelenco delle relazioni –Istanza di una base di dati: insieme delle istanze delle relazioni

Sistemi Informativi DEE - Politecnico di Bari Fondamenti di Informatica I CDL in Ingegneria Elettronica - A.A Esempio: schema base di dati RelationCONTO-CORRENTE (NUMERO-CC:integer, NOME:char (20), INDIRIZZO:char (20), SALDO:decimal (14, 2)). RelationMOVIMENTO (NUMERO-CC: integer, DATA-MOV:date, NUMERO-MOV:integer, IMPORTO:decimal (14, 2), CAUSALE:char (1)).

Sistemi Informativi DEE - Politecnico di Bari Fondamenti di Informatica I CDL in Ingegneria Elettronica - A.A Esempio: istanza base di dati NUMERO-CCNOMEINDIRIZZOSALDO 1Rossiv. Anemoni 53, Bianchiv. Bolla Brunelliv. Po 416, Grandiv. Romolo 33, NUMERO-CCDATA-MOVNUMERO-MOVIMPORTOCAUSALE V P ,700.00S ,850.40S A CONTO-CORRENTE MOVIMENTO

Sistemi Informativi DEE - Politecnico di Bari Fondamenti di Informatica I CDL in Ingegneria Elettronica - A.A Restrizione e chiave Restrizione: di una tupla t sugli attributi A di R, indicata con t[A], è data dalla lista dei valori assunti da t sugli attributi A di R Chiave di una relazione R: un sottoinsieme K degli attributi di R, tale che valgano: –Unicità: in una qualunque istanza di R, non possono esistere due tuple distinte di R la cui restrizione su K sia uguale –Minimalità: non è possibile sottrarre a K un attributo senza che la condizione di unicità cessi di valere Ogni relazione deve avere almeno una chiave –Se la relazione ha più chiavi, una di esse sarà la chiave primaria CONTO-CORRENTE (NUMERO-CC; NOME, INDIRIZZO, SALDO) MOVIMENTO (NUMERO-CC, DATA-MOV, NUMERO-MOV, IMPORTO, CAUSALE)

Sistemi Informativi DEE - Politecnico di Bari Fondamenti di Informatica I CDL in Ingegneria Elettronica - A.A Il linguaggio SQL E presente in tutti i DBMS relazionali Standard ANSI e ISO Mette a disposizione sia un DDL, sia un DML DDL: permette di creare lo schema della base di darti –CREATE TABLE : crea una relazione a livello logico –CREATE INDEX : crea indici per una certa relazione; gli indici permettono di accedere ai dati con maggiore efficienza –DROP TABLE : cancella una relazione –DROP INDEX : cancella un indice DML: permette di scrivere le query –Basato sullalgebra relazionale –Operatori: selezione, proiezione, join, unione e differenza

Sistemi Informativi DEE - Politecnico di Bari Fondamenti di Informatica I CDL in Ingegneria Elettronica - A.A Il linguaggio SQL: select Listruzione che permette di formulare le query Sintassi: SELECT nomi di attributi FROM nomi di relazioni WHERE condizioni di ricerca sui dati Le tre clausole individuano rispettivamente: –gli attributi da includere nel risultato; –le relazioni da cui estrarre i dati; –la condizione di ricerca. Questa condizione può essere assai complessa e coinvolgere nel suo interno altri blocchi SQL

Sistemi Informativi DEE - Politecnico di Bari Fondamenti di Informatica I CDL in Ingegneria Elettronica - A.A Le applicazioni SQL non è adatto agli utenti finali delle basi di dati Si realizzano applicazioni che permettono uninterazione semplice e schematica Linformazione scambiata con lutente durante lesecuzione di unapplicazione è mostrata in una maschera (o form) Esistono strumenti software per la gestione delle maschere che permettono al programmatore di: –Definire le maschere –Associare ogni maschera loperazione da eseguire sulla base di dati Lutente finale interagisce con le maschere e non vede né lSQL, né lo schema della base di dati

Sistemi Informativi DEE - Politecnico di Bari Fondamenti di Informatica I CDL in Ingegneria Elettronica - A.A Maschere: definizione

Sistemi Informativi DEE - Politecnico di Bari Fondamenti di Informatica I CDL in Ingegneria Elettronica - A.A Maschere: uso

Sistemi Informativi DEE - Politecnico di Bari Fondamenti di Informatica I CDL in Ingegneria Elettronica - A.A Rapporti (o report) Ulteriore modo per estrarre informazioni dalla base di dati Caratteristiche tipiche: –Destinati alla stampa o ad essere visualizzati in pagine Web –Contengono grandi quantità di dati –Generati periodicamente, senza interazioni con lutente Esistono strumenti software per la definizione dei rapporti (generatori di report)

Sistemi Informativi DEE - Politecnico di Bari Fondamenti di Informatica I CDL in Ingegneria Elettronica - A.A Altri linguaggi Linguaggi di quarta generazione Consentono di realizzare applicazioni specificandole a un alto livello Il progettista usa tali linguaggi interagendo con loro tramite interfacce a menu e maschere