architettura dei sistemi informatici Roma 15 dicembre 1008 Componenti basi di un computer Mibac - Tematica legisaltiva Roma, 15 dicembre 2008 2 Mibac - Tematica legisaltiva Roma, 15 dicembre 2008 3 Mibac - Tematica legisaltiva Roma, 15 dicembre 2008 4 Mibac - Tematica legisaltiva Roma, 15 dicembre 2008 5 Mibac - Tematica legisaltiva Roma, 15 dicembre 2008 6 Mibac - Tematica legisaltiva Roma, 15 dicembre 2008 7 Struttura di un sistema Mibac - Tematica legisaltiva Roma, 15 dicembre 2008 8 Sistemi per BD >> Introduzione >> Sistema Informativo Architettura dei Sistemi Informatici I sistemi informatici sono presto stati considerati fondamentali nelle grandi organizzazioni Esistono da prima che esistessero i DBMS Erano basati su un’architettura diversa rispetto a quella attuale Mibac - Tematica legisaltiva Roma, 15 dicembre 2008 9 Sistemi per BD >> Introduzione >> Sistema Informativo Architettura Tradizionale dei S. I. Applicazioni e file Applicazione n.1 Es: dati nascite Disco Applicazione n.2 File A Es: certif. elettorali File B File C Applicazione n.3 Es: erogazione contr. Mibac - Tematica legisaltiva Roma, 15 dicembre 2008 10 Sistemi per BD >> Introduzione >> Sistema Informativo Problemi ed Esigenze Dimensioni dei dati Efficienza Condivisione dell’accesso ridondanza Affidabilità Sicurezza Mibac - Tematica legisaltiva Roma, 15 dicembre 2008 11 Database Management System (DBMS) Sistemi per BD >> Concetto di DBMS Sistema per gestire grandi collezioni di dati persistenti in modo efficiente garantendo servizi di: condivisione affidabilità sicurezza Mibac - Tematica legisaltiva Roma, 15 dicembre 2008 12 Sistemi per BD >> Concetto di DBMS Architettura Moderna dei S.I. Architettura basata su DBMS Appl. n.1 Appl. n.2 Mibac - Tematica legisaltiva DBMS (servizi) Roma, 15 dicembre 2008 Base di Dati (dati) 13 Sistemi per BD >> Concetto di DBMS Servizi di un DBMS Condivisione riduzione di ridondanze (inconsistenze) gestione della concorrenza Esempio: un’unica collezione di dati (“cittadini”) a cui accedono tutte le applicazioni Mibac - Tematica legisaltiva Roma, 15 dicembre 2008 14 Sistemi per BD >> Concetto di DBMS Servizi di un DBMS Affidabilità recupero dei dati in caso di guasti Esempio: in caso di malfunzionamento (alimentazione, rottura del disco) i dati possono essere recuperati Mibac - Tematica legisaltiva Roma, 15 dicembre 2008 15 Sistemi per BD >> Concetto di DBMS Servizi di un DBMS Sicurezza meccanismi di protezione dell’accesso meccanismi di autorizzazione Esempio: l’accesso ai dati dei cittadini è protetto agli utenti non autorizzati gli utenti autorizzati (impiegati) hanno diversi livelli di autorizzazione Mibac - Tematica legisaltiva Roma, 15 dicembre 2008 16 Sistemi per BD >> Concetto di DBMS Caratteristiche di un DBMS Efficienza utilizzo di risorse di calcolo relativa alla complessità dei servizi Efficacia centralizzazione dei servizi miglioramento della produttività semplicità della scrittura di applicazioni Mibac - Tematica legisaltiva Roma, 15 dicembre 2008 17 Sistemi per BD >> Concetto di DBMS Figure Coinvolte utenti finali utenti casuali applicazioni programmatori applicativi DBMS amministratori Base di Dati Mibac - Tematica legisaltiva Roma, 15 dicembre 2008 18 Sistemi per BD >> Concetto di DBMS Alcuni Esempi di DBMS Commerciali, Fascia alta IBM DB2, Oracle, Microsoft SQL Server, Sybase Commerciali, Fascia bassa Microsoft Access, FileMaker Open Source MySQL (www.mysql.com) PostgreSQL (www.postgresql.org) Mibac - Tematica legisaltiva Roma, 15 dicembre 2008 19 Storia ed evoluzione delle architetture dei sistemi informatici Dai sistemi centralizzati ... nati negli anni ‘50 e sviluppati negli anni‘60 e ’70 legati all’affermarsi delle tecnologie deimainframe, dei sistemi operativitimesharing, dei file system e deiDBMS (Data Base Management System)centralizzati Mibac - Tematica legisaltiva Roma, 15 dicembre 2008 20 ai sistemi distribuiti! negli anni ‘70 e ‘80 nascono nuove tecnologie, più economiche, versatili e facili da usare: mini e micro elaboratori, LAN, DBMS relazionali, architetture client/server, interfacce grafiche (GUI,Graphical User Interface) crisi del modello centralizzato: informatica “diffusa” Mibac - Tematica legisaltiva Roma, 15 dicembre 2008 21 Decentralizzazione Dovuta a crollo dei prezzi dell’hardware e delle relative licenze software maggiore scalabilità, continuità e qualità del servizio da parte dei sistemi distribuiti rispetto a quelli centralizzati possibilità di scegliere e combinare componenti provenienti da diversi fornitori: flessibilità ed autonomia Mibac - Tematica legisaltiva Roma, 15 dicembre 2008 22 Mibac - Tematica legisaltiva Roma, 15 dicembre 2008 23 Mibac - Tematica legisaltiva Roma, 15 dicembre 2008 24 Sistema centralizzato Detto anche “architettura mainframe” Tutta l’intelligenza è nell’elaboratore centrale (host) Gli utenti interagiscono tramite un terminale che cattura i comandi e li trasmette all’host Limiti: interfacce grafiche difficili da supportare, accesso problematico a database geograficamente distribuiti Mibac - Tematica legisaltiva Roma, 15 dicembre 2008 25 Sistema distribuito Un sistema è distribuito quando si verifica almeno una delle due condizioni le applicazioni, fra loro cooperanti, risiedono su più nodi elaborativi: elaborazione distribuita il patrimonio informativo (dati), unitario, è ospitato su più nodi elaborativi: base di dati distribuita Mibac - Tematica legisaltiva Roma, 15 dicembre 2008 26 Mibac - Tematica legisaltiva Roma, 15 dicembre 2008 27 Mibac - Tematica legisaltiva Roma, 15 dicembre 2008 28 Sistema distribuito È un insieme di nodi elaborativi connessi in qualche modo (LAN - Local Area Network, WAN - Wide Area Network, ...) Ciascun nodo è in grado di comunicare con alcuni degli altri nodi I programmi in esecuzione su ciascun nodo sono in grado di condividere le proprie informazioni e di richiedere l’esecuzione di altri programmi da parte di altri nodi Mibac - Tematica legisaltiva Roma, 15 dicembre 2008 29 Sistema distribuito È costituito da un insieme di applicazioni logicamente indipendenti che collaborano per il perseguimento di obiettivi comuni attraverso una infrastruttura di comunicazione hardware e software Mibac - Tematica legisaltiva Roma, 15 dicembre 2008 30 Sistema distribuito Le applicazioni sono caratterizzate dal ruolo che svolgono nel sistema Cliente (Client): quando l’applicazione utilizza dei servizi messi a disposizione da altre applicazioni Servente (Server): quando l’applicazione fornisce servizi usati da altre applicazioni Attore (Actor): quando l’applicazione in contesti diversi assume sia il ruolo di cliente sia il ruolo di servente Mibac - Tematica legisaltiva Roma, 15 dicembre 2008 31 Il paradigma client-server Client: utente del servizio Server: fornitore del servizio Client e server non hanno senso senza un protocollo di comunicazione che definisca le possibili interazioni fra client e server specifichi i dettagli di ogni interazione definisca le condizioni di errore e le azioni da svolgere in conseguenza Mibac - Tematica legisaltiva Roma, 15 dicembre 2008 32 Mibac - Tematica legisaltiva Roma, 15 dicembre 2008 33 Mibac - Tematica legisaltiva Roma, 15 dicembre 2008 34 Mibac - Tematica legisaltiva Roma, 15 dicembre 2008 35 Mibac - Tematica legisaltiva Roma, 15 dicembre 2008 36 Mibac - Tematica legisaltiva Roma, 15 dicembre 2008 37 Mibac - Tematica legisaltiva Roma, 15 dicembre 2008 38 Numero accessi Accessi Carico Tempo Mibac - Tematica legisaltiva Roma, 15 dicembre 2008 39 Mibac - Tematica legisaltiva Roma, 15 dicembre 2008 40 Mibac - Tematica legisaltiva Roma, 15 dicembre 2008 41 Mibac - Tematica legisaltiva Roma, 15 dicembre 2008 42 Mibac - Tematica legisaltiva Roma, 15 dicembre 2008 43 Mibac - Tematica legisaltiva Roma, 15 dicembre 2008 44 Mibac - Tematica legisaltiva Roma, 15 dicembre 2008 45 Sistemi client-server Caso particolare di sistema distribuito un client invia una richiesta ad un server per l’esecuzione di un compito (task) Un task può consistere semplicemente nel richiedere delle informazioni, o nell’eseguire elaborazioni complesse Il server può essere a sua volta il cliente di un altro servizio Mibac - Tematica legisaltiva Roma, 15 dicembre 2008 46 Proprietà dei sistemi client-server Client and server sono processi separati che possono essere eseguiti sullo stesso elaboratore su elaboratori diversi I processi possono nascondere alcune informazioni interne Client e server comunicano attraverso un protocollo Mibac - Tematica legisaltiva Roma, 15 dicembre 2008 47 Interoperabilità consente ai sistemi di scambiarsi le informazioni chiave richiede la definizione di formati standard per le informazioni da Scambiare richiede la definizione di formati standard per i messaggi Mibac - Tematica legisaltiva Roma, 15 dicembre 2008 48 Termini chiave Portabilità un sistema appartenente ad un ambiente può essere installato altrove ... ... all’interno della stesso ambiente Hardware ... all’interno dello stesso ambiente software (sistema operativo) ... all’interno dello stesso ambiente di rete ... all’interno dello stesso ambiente di gestione delle basi dati Mibac - Tematica legisaltiva Roma, 15 dicembre 2008 49 Termini chiave Integrazione condivisione e scambio delle informazioni senza intervento esterno consistenza nel comportamento e nella presentazione Mibac - Tematica legisaltiva Roma, 15 dicembre 2008 50 Termini chiave Trasparenza l’utente può leggere dei dati da un sito senza sapere dove si trova l’utente può aggiornare i dati senza sapere se i dati sono duplicati o meno l’utente può far eseguire un task senza sapere se sono coinvolti più siti, e dove si trovano Mibac - Tematica legisaltiva Roma, 15 dicembre 2008 51 Termini chiave Sicurezza gli utenti sono protetti dalle azioni degli altri utenti gli utenti sono protetti dagli agenti Esterni durante le comunicazioni i dati sono protetti: non possono essere letti, modificati o cambiare “autore” l’accesso ai dati e ai sistemi è adeguato Mibac - Tematica legisaltiva Roma, 15 dicembre 2008 52 Esempio: World Wide Web Il Web è una ragnatela di documenti Il server mantiene localmente un insieme di documenti e su richiesta invia al client (browser Web) un documento testo, immagine, suono, filmato, ... Alcuni tipi di script chiedono al server di eseguire un programma (es. script CGI) Mibac - Tematica legisaltiva Roma, 15 dicembre 2008 53 Mibac - Tematica legisaltiva Roma, 15 dicembre 2008 54 Le tre componenti dell’architettura Interfaccia utente (User System Interface) obiettivo: presentare le informazioni all’utente Gestore dei processi o logica (Processing Management) obiettivo: controllare l’esecuzione dei processi (elaborazioni) Gestore della base dati (DataBase Management) obiettivo: consentire l’accesso ai dati Mibac - Tematica legisaltiva Roma, 15 dicembre 2008 55 Mibac - Tematica legisaltiva Roma, 15 dicembre 2008 56 Mibac - Tematica legisaltiva Roma, 15 dicembre 2008 57 Mibac - Tematica legisaltiva Roma, 15 dicembre 2008 58 Mibac - Tematica legisaltiva Roma, 15 dicembre 2008 59 Mibac - Tematica legisaltiva Roma, 15 dicembre 2008 60 Mibac - Tematica legisaltiva Roma, 15 dicembre 2008 61 Mibac - Tematica legisaltiva Roma, 15 dicembre 2008 62