GESTIONE DELLE INFORMAZIONI E BASI DI DATI AVVISO Nei seguenti giorni, causa aula occupata, le lezioni non avranno luogo: 4 Aprile 17 Aprile 8 Maggio 23 Maggio Vacanze di Pasqua: dal 28 Marzo al 2 Aprile compreso. SISTEMA ORGANIZZATIVO MUSEO è un esempio di sistema organizzativo dotato di risorse concrete: sede, proprie collezioni, propri laboratori, ecc.; il personale è la risorsa umana, la documentazione cartacea e grafica, amministrativa e normativa la risorsa di informazione che ne è il tessuto connettivo. SISTEMA ORGANIZZATIVO Ogni istituzione, ente, ufficio o organizzazione che esplica un’attività che ha una finalità ed uno scopo è definibile come un sistema organizzativo, il cui funzionamento è reso possibile grazie all’uso delle proprie risorse. Con tale termine si intendono sia le risorse concrete e materiali sia quelle umane, oltre tutte le relative informazioni. SISTEMA INFORMATIVO Complesso delle risorse e delle procedure finalizzate alla raccolta, registrazione, elaborazione e comunicazione delle informazioni necessarie alla conduzione di una istituzione. Sistema: insieme organizzato di elementi che interagiscono in modo coordinato. Informativo: gestione delle informazioni e del loro flusso. SISTEMA INFORMATIVO Un insieme di entità in grado di elaborare, gestire, conservare e comunicare delle informazioni. Informare presuppone un emittente, un ricevente, un mezzo trasmissivo, un linguaggio comune e soprattutto dei DATI. SISTEMA INFORMATIVO Una biblioteca gestisce la informazioni sul materiale che conserva in particolare: 1. raccolta dei documenti; 2. ordinamento e consultazione dei documenti; 3. gestione amministrativa della biblioteca. SISTEMA INFORMATICO Particolare forma di un sistema informativo che si serve di una struttura fisica (hardware) e di codifiche ed organizzazioni dei dati (strutture dati, archivi/data base , software) nonché della necessaria organizzazione che li supporti. SISTEMA INFORMATICO Esempio: Biblioteca digitale Creazione di risorse digitali = definizione dei metodi e degli strumenti finalizzati al perseguimento dell’obiettivo della ricerca archivistica attraverso la rete. BASI DI DATI (PERCHÉ) Problema: memorizzare grandi quantità di informazioni, in modo che siano facilitate le operazioni di modifica e di reperimento. L'archiviazione dei dati è una procedura indispensabile per ordinare, conservare, aggiornare e utilizzare le nostre informazioni, soprattutto per una grande mole di informazioni. BASI DI DATI (COS’È) Base di dati: è una collezione di dati omogenei e strutturati, ad esempio i dati relativi ai testi posseduti da una biblioteca. Struttura: i dati di ogni testo sono rappresentati in campi: titolo, autore, casa editrice, ecc. Omogeneità: per ogni testo sono mantenute le stesse informazioni. BASI DI DATI Vantaggi: i dati sono organizzati e strutturati in tabelle dove possono essere elaborati; è possibile mettere in relazione dati memorizzati in "tabelle”diverse; è possibile effettuare interrogazioni complesse -> linguaggi di interrogazione. BASI DI DATI Svantaggi: complessità di progettazione della base di dati (esistono diverse filosofie per costruirne, quale scegliere?); acquisire padronanza delle metodologie e tecniche di progettazione e sviluppo di una base di dati; occorre padronanza dei linguaggi di interrogazione delle basi di dati. BASI DI DATI Una Base di Dati o Database (DB) è un insieme di dati strutturati memorizzati in maniera organizzata in modo da facilitarne: l’inserimento, l’aggiornamento e la ricerca. E’ fisicamente costituita da un insieme di file e a seconda del modello di dati usato: gerarchiche, a rete, relazionali. BASI DI DATI GERARCHICHE Sono organizzate a gerarchie (strutture analoghe a quelle utilizzate per l’organizzazione in cartelle del file system di quasi tutti gli attuali sistemi operativi). In una struttura gerarchica i dati sono rappresentati con una struttura ad albero: un solo padre. BASI DI DATI A RETE Sono nate come alternativa più flessibile alle gerarchiche. In una struttura a rete sono presenti più padri e più figli. Il modello a rete è stato superato da quello relazionale. BASI DI DATI RELAZIONALE Dati eterogenei sono memorizzati in tabelle tra cui è possibile definire delle relazioni. Tale modello ha sostituito gli altri in quanto ritenuto il più semplice ed efficace perché più vicino al modo di pensare i dati. Si adatta bene alla strutturazione e classificazione dei dati. BASI DI DATI DISTRIBUITE Una base di dati distribuita è contenuta in più computer situati in luoghi diversi e connessi tramite una rete, come Internet. L'interazione avviene secondo un modello client/server Esempio: biblioteche digitali DBMS Per la realizzazione di basi di dati: DBMS (Data Base Management Systems): programmi applicativi (software) per la gestione di grandi collezioni condivise di dati, che permettono di strutturare i dati e di accedere in modo intelligente e efficace alle informazioni. DBMS Il DBMS garantisce affidabilità e privatezza. Es. dei dati di una biblioteca: il lettore ha diritto di lettura dei dati e di ricerca dei dati ma non di modifica e/o inserimento. Il bibliotecario -> deve aggiungere/togliere libri, segnalare prestiti: ha diritto di modificare i dati. DBMS Un DBMS è sostanzialmente uno strato di software che si frappone fra l’utente ed i dati veri e propri. Un DBMS possiede un elevato grado di indipendenza fra le applicazioni e la memorizzazione fisica dei dati. PROGETTAZIONE DI UNA BASE DI DATI Problema affrontato: voglio organizzare le informazioni relative una certa realtà in un DB… voglio mantenere informazioni su quali studenti hanno sostenuto quali esami e con quale risultato …quindi mettere in relazione le informazioni relative agli studenti e quelle relative ai corsi. PROGETTAZIONE DI UNA BASE DI DATI Data una realtà da modellare (es. studenti e corsi) occorre capire quali informazioni sono utili (es. “matricola” è utile per rappresentare gli studenti) capire come le informazioni utili sono correlate (es. chi ha sostenuto quale esame) sapere chi può accedere a quali informazioni per eseguire quali azioni. PROGETTAZIONE DI UNA BASE DI DATI Avere strumenti per operare interrogazioni sui dati: esempio “quanti esami ha sostenuto Rossi nel 2002? e con quale media? PROGETTAZIONE DI UNA BASE DI DATI La progettazione, partendo dai requisiti della base di dati, richiede l’esecuzione dei seguenti passi: 1. Progettazione concettuale 2. Progettazione logica 3. Progettazione fisica ANALISI DEI REQUISITI Analisi dei requisiti: Raccolta e studio delle funzionalità che il sistema dovrà avere. Comporta l’interazione con gli utenti del sistema e si conclude in una descrizione informale dei suoi requisiti ANALISI dei REQUISITI produce una descrizione informale del problema. PROGETTAZIONE CONCETTUALE Progettazione concettuale: ha lo scopo di rappresentare la realtà di interesse in termini di una descrizione precisa e completa ma indipendente dai criteri di rappresentazione usati dal sistema informatico scelto per gestire la base di dati. La progettazione concettuale produce uno schema concettuale (E/R) che rappresenta i dati e le relazioni fraessi. PROGETTAZIONE LOGICA Ha lo scopo di rappresentare la realtà di interesse in termini di una descrizione ancora indipendente dai dettagli fisici ma concreta, in quanto presente nei sistemi di gestioni delle basi di dati. Lo schema concettuale definito nella fase precedente viene tradotto in uno schema logico. La progettazione logica produce uno schema logico (descrizione di tabelle). PROGETTAZIONE FISICA Lo schema logico viene completato con le specifica dei parametri fisici di memorizzazione dei dati (organizzazione dei file e degli indici). Si definisce lo schema fisico dei dati che dipende dal sistema di gestione di basi di dati scelto. La progettazione fisica produce lo schema fisico (effettiva memorizzazione dei dati). SOFTWARE DBMS DBMS commerciali Oracle Informix IBM DB2 SQL Server Microsoft Access (pacchetto Office) DBMS freeware (open source) MySQL (Linux, Windows) PostgressSQL (Linux) SOFTWARE DBMS DBMS commerciali Oracle Informix IBM DB2 SQL Server Microsoft Access (pacchetto Office) DBMS freeware (open source) MySQL (Linux, Windows) PostgressSQL (Linux) DBMS Permettono di definire in modo semplice la struttura della base di dati e forniscono dei comandi per l’accesso alle informazioni. Si usano per: definire la struttura logica dei dati; inserire i dati; rimuovere i dati; aggiornare i dati, effettuare operazioni di ricerca/interrogazione. DBMS Il DBMS nasconde il formato fisico dei dati, offre una visione astratta dei dati e permette di operare su di essi senza conoscere la loro effettiva memorizzazione. DBMS SCHEMA LOGICO Primo passo: definizione della struttura generale dei dati, o schema logico Secondo passo: Immissione dei dati (istanze). SCHEMA LOGICO Tipicamente i dati vengono strutturati in tabelle. Ogni elemento della tabella occupa un record. Ogni record è suddiviso in campi, ognuno dei quali contiene un'informazione elementare. Ogni campo ha un dominio dei valori associato. STRUTTURA DEI DATI DATABASE VS FOGLI ELETTRONICI Un programma di foglio elettronico come Excel ha diverse funzioni uguali a quelle di un DBMS -> permette di organizzare dati in tabelle MA gli obiettivi sono diversi e di conseguenza emergono delle differenze. Quali? DBMS VS FOGLI ELETTRONICI Un DBMS è pensato per trattare in modo facile GRANDI quantità di dati, organizzati in rigide strutture, il focus è sulle operazioni di archiviazione e consultazione. Un foglio elettronico è pensato per trattare quantità di dati più piccole, con struttura più flessibile e il focus è sulle operazioni di elaborazione e analisi dei dati. DBMS VS FOGLI ELETTRONICI Nel caso dei fogli elettronici ho maggior flessibilità nell’organizzazione dei dati, per es. possiamo organizzare gli elementi per righe ma anche per colonne, destinare liberamente le celle a contenere un certo risultato etc.. Nel caso dei database nei record di una tabella i campi si succedono tutti con la stessa struttura STRUTTURA DEI DATI ...i dati vengono strutturati in tabelle, in particolare un db RELAZIONALE può essere pensato come un insieme di tabelle. Ogni tabella mantiene informazioni di tipo omogeneo. Diverse tabelle sono collegate (in relazione) fra loro grazie alla presenza di un campo comune, che permette di mettere in relazione i dati delle due tabelle. STRUTTURA DEI DATI ...i dati vengono strutturati in tabelle, in particolare un db RELAZIONALE può essere pensato come un insieme di tabelle. Ogni tabella mantiene informazioni di tipo omogeneo. Diverse tabelle sono collegate (in relazione) fra loro grazie alla presenza di un campo comune, che permette di mettere in relazione i dati delle due tabelle. STRUTTURA DEI DATI STRUTTURA DEI DATI Esempio: campo comune fra tabella Prodotti e tabella Fornitori: Fornitori. Grazie alla relazione posso determinare chi fornisce i prodotti in magazzino pur memorizzando l’informazione di prodotti e fornitori in due tabelle separate. AGGIORNAMENTO DEI DATI I dati vengono inseriti in tabelle seguendo una certa struttura logica. Come modificare la struttura?: Inserire nuovi record, inserire nuovi campi in un record. Come aggiornare i contenuti?: Modificare i valori di una cella etc… AGGIORNAMENTO DEI DATI Di solito esistono dei vincoli che devono essere rispettati: un aggiornamento sia di struttura che di contenuto deve rispettare questi vincoli. Quando i vincoli sono rispettati si dice che la base di dati è consistente. AGGIORNAMENTO DEI DATI Quali vincoli? Sul dominio di valori che può assumere una certa informazione (campo) es.: banca dati dell'Università -> i voti devono essere compresi tra 0 e 30. Sull'unicità dei valori: ogni studente deve avere un numero di matricola diverso dall'altro. AGGIORNAMENTO DEI DATI Vincoli fra informazioni correlate es. anagrafe: i dati relativi al coniuge sono presenti solo se la persona è sposata. I DBMS offrono strumenti per il mantenimento automatico della consistenza dei dati. QUERY LANGUAGE Esempio di query in linguaggio naturale: “Quali prodotti fornisce alla nostra azienda il fornitore New Orleans Cajun Delights?” Interrogazione sulle tabelle Fornitori e Prodotti fra loro in relazione. Esistono linguaggi specifici di interrogazione in un db (QL), in particolare per i db relazionali e in Access: SQL. SQL SQL = Structured Query Language In molti programmi applicativi come Access esiste un’interfaccia grafica per costruire le queries senza conoscere la sintassi e la semantica di SQL. Nei db accessibili via Web le queries vengono proposte per parole chiave come in un motore di ricerca. DB RELAZIONALI I database relazionali (tabellari) strutturano i dati in tante tabelle. Una tabella è come una scheda in uno schedario. Ogni informazione inserita viene memorizzata in un record, ovvero una linea della tabella; per ogni record esiste un certo numero di informazioni che vengono detti campi. DB RELAZIONALI Per ogni campo si dà informazione sul tipo di dati (testo, numero, data, ecc). Ogni record deve avere una chiave: un attributo che serve ad identificare in maniera univoca una determinata entità (è chiaro che la necessità di diversificare le varie entità dipende dal tipo e dalla quantità di informazioni che si intende memorizzare nel database). DB RELAZIONALI Il DIAGRAMMA ENTITA'RELAZIONE è la RAPPRESENTAZIONE GRAFICA dei dati e serve a dare una visione immediata di come è fatto un database. Gli elementi principali di questi diagrammi sono: Entità: quello che si vuole memorizzare (raffigurate con rettangoli); DB RELAZIONALI Relazioni: il legame tra due o più entità (raffigurate con rombi); Attributi: i campi della tabella del database (raffigurati con pallini bianchi se semplici attributi; con pallini neri se CHIAVI). DB RELAZIONALI Relazioni: il legame tra due o più entità (raffigurate con rombi); Attributi: i campi della tabella del database (raffigurati con pallini bianchi se semplici attributi; con pallini neri se CHIAVI). RDBMS RDMS (Relational Database Management System). E’ il sistema più diffuso di organizzazione logica di dati. I dati sono contenuti in tabelle che costituiscono le istanze delle relative relazioni. I sistemi RDBMS risolvono brillantemente il problema della gestione di enormi volumi di dati, ma gestiscono in modo mediocre i dati multimediali. DBMS E WEB Molti DBMS sono accessibili mediante browser, l’interfaccia è come quella del Web, la ricerca dei dati è per parole chiave come nel caso dei motori di ricerca per la ricerca dei documenti sul Web. L’organizzazione interna dei dati è quella del DBMS. DBMS E WEB Commercio elettronico (e-commerce): acquisto e vendita di prodotti e servizi tramite Internet. Data mining (DM) – attività di ricerca e analisi di dati in settori quali: Marketing,Sanità,Scienze,…. Business-to-business (B2B): commercio fra aziende società. DBMS E WEB Commercio elettronico (e-commerce): acquisto e vendita di prodotti e servizi tramite Internet. Data mining (DM) – attività di ricerca e analisi di dati in settori quali: Marketing,Sanità,Scienze,…. Business-to-business (B2B): commercio fra aziende società. DBMS E WEB http://www.cgsi.it/easyne2/Archivi/CGS I/Files/SICAPWeb_Presentazione_MO D-ST019-1.pdf http://www.icar.beniculturali.it/biblio/p df/idtech/cons_new/A/Analisi_Consiglio _Archivi.html