Aspetti applicativi e tecnologia



Похожие документы
Organizzazione degli archivi

LA GESTIONE DELLE VISITE CLIENTI VIA WEB

Manuale d uso Software di parcellazione per commercialisti Ver [05/01/2015]

Esercizio data base "Biblioteca"

Programmazione Server Side e Database in rete

1. BASI DI DATI: GENERALITÀ

I database relazionali (Access)

PROGRAMMAZIONE MODULARE. Periodo mensile. Ore previste

Le Basi di Dati. Le Basi di Dati

Introduzione alla teoria dei database relazionali. Come progettare un database

Basi di dati. Corso di Laurea in Ingegneria Informatica Canale di Ingegneria delle Reti e dei Sistemi Informatici - Polo di Rieti

Il database management system Access

Organizzazione delle informazioni: Database

Progettazione di Basi di Dati

CRM Configurazione e gestione accessi

Introduzione alle basi di dati. Gestione delle informazioni. Gestione delle informazioni. Sistema informatico

Progettazione Web Applicazioni client-server

Introduzione Ai Data Bases. Prof. Francesco Accarino IIS Altiero Spinelli Via Leopardi 132 Sesto San giovanni

MANUALE PARCELLA FACILE PLUS INDICE

Scenario di Progettazione

Dispensa di database Access

Database 1 biblioteca universitaria. Testo del quesito

Corso di Access. Prerequisiti. Modulo L2A (Access) 1.1 Concetti di base. Utilizzo elementare del computer Concetti fondamentali di basi di dati

MODELLO CLIENT/SERVER. Gianluca Daino Dipartimento di Ingegneria dell Informazione Università degli Studi di Siena

Telerilevamento e GIS Prof. Ing. Giuseppe Mussumeci

Database. Francesco Tapparo Informatica e Bioinformatica /16

Lezione 1. Introduzione e Modellazione Concettuale

Capitolo 13. Interrogare una base di dati

Visual basic base Lezione 01. L'ambiente di sviluppo

Database e reti. Piero Gallo Pasquale Sirsi

BASE DI DATI: introduzione. Informatica 5BSA Febbraio 2015

database: modello entityrelationship

Corso sul linguaggio SQL

Che cos'è un modulo? pulsanti di opzione caselle di controllo caselle di riepilogo

19. LA PROGRAMMAZIONE LATO SERVER

Corso di Sistemi di Elaborazione delle informazioni

Modulo 4 Il pannello amministrativo dell'hosting e il database per Wordpress

Base Dati Introduzione

Guida Operativa. ArchiviaOL

Il sistema C.R.M. / E.R.M.

Access. P a r t e p r i m a

developed by Emanuele De Carlo

UTILIZZO DEL SOFTWARE MONITOR

DATABASE.

I Sistemi Informativi

Introduzione al data base

Database. Si ringrazia Marco Bertini per le slides

FASE 1: Definizione del tema, degli obiettivi e del target con il cliente... (da cui dipendono le scelte successive!)

Facoltà di Farmacia - Corso di Informatica

I DATABASE Database relazionale

Progetto di Applicazioni Software

Definizione Parte del software che gestisce I programmi applicativi L interfaccia tra il calcolatore e i programmi applicativi Le funzionalità di base

Mac Application Manager 1.3 (SOLO PER TIGER)

I MODULI Q.A.T. PANORAMICA. La soluzione modulare di gestione del Sistema Qualità Aziendale

Corso di Informatica RDBMS RDBMS. Corso di Laurea in Conservazione e Restauro dei Beni Culturali

Lezione V. Aula Multimediale - sabato 29/03/2008

Con accesso remoto s'intende la possibilità di accedere ad uno o più Personal Computer con un modem ed una linea telefonica.

YOUTUBE: UN CANALE PER LA PARTECIPAZIONE

Architetture Informatiche. Dal Mainframe al Personal Computer

Architetture Informatiche. Dal Mainframe al Personal Computer

Trasformazione DB Access In SQL Server. Michele De Nittis

Programma del Corso. Dati e DBMS SQL. Progettazione di una. Normalizzazione

Approfondimenti. Contenuti

UN PROGRAMMA APPLICATIVO: ACCESS Access è un programma del pacchetto Office che permette di realizzare database

Software per Helpdesk

Lezione 9. Applicazioni tradizionali

Progetto di Applicazioni Software

Data Base. Master "Bio Info" Reti e Basi di Dati Lezione 6

INSTALLAZIONE NUOVO CLIENT TUTTOTEL (04 Novembre 2014)

Istruzioni di accesso alla propria casella di posta elettronica tramite Zimbra Web Mail

Progettaz. e sviluppo Data Base

Informatica Documentale

MagiCum S.r.l. Progetto Inno-School

Sistemi informativi secondo prospettive combinate

ATOLLO BACKUP GUIDA INSTALLAZIONE E CONFIGURAZIONE

ECDL - Database. European Computer Driving Licence - Modulo 5 - Database LEZIONE 2

Sistemi Informativi e Basi di Dati

L amministratore di dominio

ITI M. FARADAY Programmazione modulare a.s

MODULO 5 ACCESS Basi di dati. Lezione 4

Data Base. Prof. Filippo TROTTA

Pagina 1 di 10

HORIZON SQL MENU' FILE

INFORMATICA. Applicazioni WEB a tre livelli con approfondimento della loro manutenzione e memorizzazione dati e del DATABASE.

Sviluppata da: Lo Russo - Porcelli Pag. 1 di 6 6FRSR utilizzare il DBMS Postgresql per imparare il linguaggio SQL.

Basi di Dati e Microsoft Access

VADEMECUM PIATTAFORMA DOCEBO Operazioni del Docente Corsista

Presentazione Data Base

Manuale per la configurazione di AziendaSoft in rete

SITI-Reports. Progetto SITI. Manuale Utente. SITI-Reports. ABACO S.r.l.

Base di dati e sistemi informativi

Esercizio sui data base "Gestione conti correnti"

Raggruppamenti Conti Movimenti

Sistemi di Elaborazione delle Informazioni (C.I. 15) Access

Транскрипт:

Aspetti applicativi e tecnologia Premessa Architetture usate per i database Le prime applicazioni erano definite monolitiche, cioè un unico computer (mainframe) gestiva sia le applicazioni che i dati, ai quali era possibile accedere tramite dei terminali. Non ci si poneva, quindi, il problema della condivisione delle risorse. Con l evoluzione dell informatica e della telematica, e in particolare con la nascita delle architetture client/server, l esigenza della condivisione delle risorse è diventata primaria e questo ha portato a suddividere le applicazioni in due grandi categorie: quelle che richiedono informazioni e/o servizi e quelle che li forniscono. Client Server Descrizione logica: Nelle architetture client/server quello che accade è che ci sono delle applicazioni che richiedono dei servizi a qualcuno che li eroga, ci può essere o meno un canale di comunicazione e possono stare sulla stessa macchina o meno. Questo ha portato ad es. alla creazione di server dedicati a svolgere un determinato servizio. Es. I print server per la stampa dei file, i fax server ecc. Quelli di nostro interesse sono i DBMS, un tipo di applicazione che si comporta da server adibito alla gestione dei dati, particolarmente utili se sono presenti grandi quantità di dati o se ci sono da gestire più database contemporaneamente. Client Server DBMS Database

Il più delle volte si ha sulla stessa macchina il client e il DBMS, con la possibilità di fare delle query al database usando l interfaccia del DBMS oppure altre applicazioni. In questo caso il client parla con il DBMS tramite ODBC (open database connattivity), si tratta di API (application programming interface), ovvero di interfacce che mettono in comunicazione l'utente con l'applicazione. Il client si accredita nell interfaccia con ID e password e può effettuare sul server tutte le operazioni concesse dai suoi privilegi. Esistono anche delle interfacce chiamate JDBC(Java Database Connettivity) che connettono i database con le applicazioni in Java. Architettura logica a tre livelli Per la realizzazione di qualsiasi applicazione si ha sempre a che fare, in maniera più o meno ordinata, con i seguenti tre livelli di problematiche: 1. Rappresentazione: creazione dell interfaccia più o meno evoluta di un applicazione. 2. Logica applicativa: riguarda la parte funzionale del programma. 3. Gestione dati: ha a che fare con la memorizzazione dei dati. In origine vi erano i main frame che si occupavano di tutta la parte gestionale e lasciavano ai terminali solo la parte rappresentativa, in seguito vi è stata una specializzazione delle funzionalità e dal modo in cui le tre precedenti funzionalità sono distribuite tra client e server abbiamo diversi scenari: 1. PRESENTAZIONE DISTRIBUITA Client: gestisce una parte del livello di presentazione; Server: gestisce l'altra parte della presentazione, la logica applicativa e gestione dati; es. Mainframe e terminali stupidi; 2. PRESENTAZIONE REMOTA; Client: gestisce il presentation layer; Server: gestisce la logica applicativa e gestione dati; es. Applicazioni web; 3. APPLICAZIONE DISTRIBUITA Client: presentation layer e logica applicativa in parte; Server: logica applicativa in parte e gestione dati; es. Google o myyahoo; 4. APPLICAZIONE REMOTA (o gestione dati remota) Client: presentation layer e logica applicativa; Server: gestione dati;

es. Applicazioni in Visual Basic 5. APPLICAZIONI E DATI DISTRIBUITA Client: presentation layer, parte di logica applicativa e parte della gestione dati; Server: parte della logica applicativa e parte della gestione dati; 6. GESTIONE DATI REMOTA Client: presentation layer e logica applicativa; Server1: parte della gestione dei dati; Server2: parte della gestione dei dati; es. Database federati; Con la diffusione del web si è andata affermando una nuova distribuzione dei livelli, col client che gestisce il presentation layer, un server dedicato alla logica applicativa (server applicativo) e un altro per la gestione dati. Spesso ci sono dei firewall a proteggere l'accesso ai 2 server. Perché usiamo i DBMS? Con i diagrammi entità relazioni facciamo una rappresentazione concettuale dei dati e delle relazioni tra questi. Nelle nostre applicazioni dobbiamo implementare questo modello concettuale in un database. Esistono diversi approcci per implementare un database: A oggetti; A relazioni; Gerarchico; Per il grande successo della programmazione ad oggetti, sono stati creati dei framework (ORM) che permettono la persistenza degli oggetti nei database. Noi però useremo dei database di tipo relazionale, in quanto le tabelle che li costituiscono hanno alla base una logica relazionale. Il DBMS deve gestire i dati, cioè deve poter creare, distruggere e modificare i componenti interni di un database e per fare ciò si usa un linguaggio chiamato SQL che si suddivide in due tipologie DDL (Data Definition Language) e DML (Data Manipulation Language). Esistono anche altre funzioni del DBMS: Gestire la concorrenza; Gestire le transazioni (in modo da avere il database consistente);

Backup del database (a caldo, cioè quando il database è funzionante, o a freddo); Restore del database (duale backup); Gestire le prestazioni nell accesso del database (si usano degli indici identificativi di ogni tupla); Un DBMS è strutturato nella maniera seguente Ciò che si può notare è che il DBMS può accedere sia ai dati che ai meta dati (informazioni caratterizzanti ogni database specifico), i quali sono memorizzati in maniera indipendente gli uni dagli altri. Di seguito riportiamo, invece, uno schema di tutte le operazioni svolte da un DBMS

Come già detto in precedenza, i DBMS che utilizzeremo in questo corso sono di tipo relazionale (RDBMS) e in particolare saranno MS Access, MySQL e MS SQL Server 2005. ACCESS Utilissimo per fare prototipazione rapida, poiché si riesce molto rapidamente a creare database, maschere per l'accesso al database, sia usando quello interno ad Access sia usandone uno esterno (usando Access come client e usando un ODBC). Per creare un database in Access (supponiamo di crearne uno nuovo) dobbiamo dargli un nome e indicare la posizione in cui salvarlo; dopodiché si aprirà la maschera per la creazione delle tabelle, che può essere creata in vari modi. Se scegliamo la modalità Struttura, dobbiamo andare a inserire i vari campi e la loro dimensione (importante ai fini del dimensionamento del database), i tipi di dati (ogni DBMS ha i suoi tipi di dato) e scegliere una chiave primaria. L'accesso ai dati è possibile attraverso query testuali (in linguaggio SQL) o con query grafiche (attraverso maschere, record e pagine).con Access è possibile esportare i dati di una tabella, cliccando sulla tabella corrispondente col tasto destro e scegliendo 'Esporta'. MySQL E' OpenSource e lo utilizzeremo all'interno del pacchetto EasyPHP(scaricabile al sito www.easyphp.org), che contiene un editor PHP, Apache e, appunto, MySQL Server. Dopo l'installazione, facciamo partire il server Apache e il MySQL Server e accediamo all'interfaccia di amministrazione dell'sql Server tramite localhost. Per un corretto

funzionamento, è necessario disabilitare i servizi dell'internet Information Server, in quanto condivide le stesse porte di EasyPHP. L'interfaccia è di facile utilizzo, permettendo la creazione di tabelle attraverso il riempimento dei form, e permette la visualizzazione del codice SQL corrispondente ad ogni operazione che viene effettuata. Inoltre, quando si inseriscono i vari campi delle tabelle, l'interfaccia mostra nella sua parte alta il DDL con cui l'applicazione si crea la tabella. EasyPhp permette anche l'importazione di dati da altri database (sotto forma di file testuale). E' importante che la tabella in EasyPHP abbia la stessa struttura di quella da cui abbiamo importato i dati. MS SQL Server 2005 Le modalità per la creazione dello schema del database con questo DBMS è praticamente identica a quelle degli altri due visti precedentemente. Si tratta comunque di un DBMS un po' più complesso dei precedenti, anche considerando gli usi per cui viene utilizzato (richiede anche l'autenticazione all'apertura). Dopo l'accesso, esso mostra tutta la struttura che il DBMS mette a disposizione. Ad esempio, mostra nella cartella database, tutti i database creati, oppure permette di impostare dei Trigger, cioè degli eventi che si scatenano nel momento in cui accadono certe condizioni. SQL Server permette anche l'uso di viste, delle tabelle dinamiche che contengono le informazioni richieste da una specifica query. Sono utili quando ripeto molto spesso una stessa query. Bruno Luisa Vittoria Coppola Giovanni recapito: luvibruno@libero.it giovanni.coppola86@gmail.com