Basi di Dati Architetture Client/Server

Documenti analoghi
Architetture Client/Server. Un architettura è centralizzata quando i dati e le applicazioni (programmi) risiedono in un unico nodo elaborativo

Architetture Client/Server. Un architettura è centralizzata quando i dati e le applicazioni (programmi) risiedono in un unico nodo elaborativo

Architetture Client/Server e World Wide Web

@2011 Politecnico di Torino. Pag. 1. Architettura distribuita. Architetture Client/Server. Architettura centralizzata. Architettura distribuita

D B M G Il linguaggio HTML

Programmazione Web D B M G. Il linguaggio HTML

@2011 Politecnico di Torino 1

Basi di Dati. Prof. Alfredo Cuzzocrea Università degli Studi di Trieste. Basi di Dati e Web. Credits to: Prof. M. Di Felice UniBO

Programmazione Web D B M G. Il linguaggio HTML

D B M G. Basi di dati. Programmazione Web: HTML. Programmazione Web. Il linguaggio Politecnico di Torino 1

D B M G. Basi di dati. Programmazione Web: HTML. Programmazione Web. Il linguaggio Politecnico di Torino 1

@2011 Politecnico di Torino 1

@2011 Politecnico di Torino 1

Tecnologie di Sviluppo per il Web

Internet come funziona?

Uso di Internet: Esempio. Prof. Franco Callegati

Introduzione a Internet e World Wide Web

Introduzione alle Architetture di Rete

Introduzione alla rete Internet

Ricevimento: dopo la lezione (in aula) o su appuntamento (Sede Scientifica Pal. 1 Primo Piano)

Ricevimento: dopo la lezione (in aula) o su appuntamento (Sede Scientifica Pal. 1 Primo Piano)

Informatizzazione APVE LEZIONE 2: INTERNET

Internet: la rete delle reti

Architetture dei sistemi distribuiti. Mariagrazia Fugini Impianti Como 08-09

Informatica. Alfredo Cuzzocrea. Reti di Calcolatori

TCP/IP: INDIRIZZI IP SIMBOLICI

Introduzione alla rete Internet

Le reti e Internet. Struttura e protocolli

Capitolo 16 I servizi Internet

Introduzione alla rete Internet

Informatica: arte e mestiere 3/ed

Introduzione alle Reti e Linguaggio HTML

Aspetti SW delle reti di calcolatori. L architettura del sistema. La struttura di Internet 22/04/2011

Informatica. Dipartimento di Economia. Ing. Cristiano Gregnanin. 8 novembre Corso di laurea in Economia

Internet. Internet. Internet Schema di indirizzamento. Internet. Storia: Definizioni: Schema di indirizzamento. 60: ARPAnet (Dip.

Tecnologia dei Sistemi Informativi. architettura s.i. 1

Il World Wide Web. Marco Porta - CIM: Web Design & Technologies

Tecnologia dell Informazione

Mariarosaria Napolitano. Architettura TCP/IP. Corso di: Laboratorio di tecnologie informatiche e telematiche

Applicazioni web. Sommario. Parte 4 http. http Metodi, intestazioni e codici di stato get post Parametri e cookie. Applicazioni web.

IL LIVELLO APPLICAZIONI WEB e HTTP

Concetti base. Impianti Informatici. Web application

MODELLI ISO/OSI e TCP/IP

TECN.PROG.SIST.INF. I Socket Roberta Gerboni

1) Quale delle seguenti unità di memoria non consente la modifica dei dati in essa contenuti? A RAM. B Hard disk. C Penna USB. D ROM.

Reti di Calcolatori Servizi di Rete Laboratorio di Didattica in Rete

Architetture di rete. 4. Le applicazioni di rete

Progettazione Siti Web: Web

Programmazione in Rete

Metodologie Informatiche Applicate al Turismo

Introduzione all inguaggio HTML e CSS3 INTRODUZIONE. Prof.ssa Cristina Gena

Reti di Calcolatori. IL LIVELLO APPLICAZIONI WEB e HTTP

IL LIVELLO APPLICAZIONI WEB e HTTP

Le Reti Informatiche

CLIENT WEB. Strumento di interfaccia tra l utente ed il sistema Web (browser).

Sistemi gestionali integrati (ERP): aspetti organizzativi e tecnologici

MODELLI ISO/OSI e TCP/IP

Livello applicazione. Fondamenti di Informatica

Introduzione. Java HTTP. G. Prencipe

Tratte da (18. TECNICHE DI ACCESSO AI DATABASE IN AMBIENTE INTERNET)

IL LIVELLO APPLICAZIONI WEB e HTTP

Le reti rete La telematica telematica tele matica Aspetti evolutivi delle reti Modello con mainframe terminali Definizione di rete di computer rete

Grid Data Management Services. Griglie e Sistemi di Elaborazione Ubiqui

La tecnologia per le applicazioni Web

INFORMATICA. Prof. MARCO CASTIGLIONE. Istituto Tecnico Statale Tito Acerbo - PESCARA

Università del Salento Facoltà di Scienze della Formazione, Scienze Politiche e Sociali CORSO DI INFORMATICA. UD5. Internet = Web?

Tecnologie Web Introduzione

Basi di Dati-IX. Basi di dati e web. Introduzione. Schema. Basi di dati e web. Corso di Laurea in Informatica Anno Accademico 2013/2014

Modulo 1 Software e Reti. Prof.ssa Francesca Rammairone

SQL per le applicazioni D B M G

SQL per le applicazioni D B M G

modulo: siti web centrati sui dati

2011 Politecnico di Torino 1

Laboratorio Progettazione Web Applicazioni Web

2011 Politecnico di Torino 1

Internet. Servizi forniti da Internet. Reti di accesso da casa. II parte. Posta elettronica Trasferimento di dati Collegamento remoto Word Wide Web

SISTEMI INFORMATIVI AZIENDALI

In rete. I computers si parlano in modalità: Peer to Peer (P2P) o... Client/server

Lo strato di applicazione in Internet

2011 Politecnico di Torino 1

Sistemi Web-Based - Terminologia. Progetto di Sistemi Web-Based Prof. Luigi Laura, Univ. Tor Vergata, a.a. 2010/2011

Terminologia e concetti fondamentali La struttura di Internet (hardware e software):

JDBC. Paolo Atzeni. 11 marzo Progettazione di applicazioni, una premessa

Luca Tesei. Laboratorio di Sviluppo Web: Le Basi. Modulo IFTS. Fermo 31/03, 03/04, 07/ Prof. Luca Tesei Università di Camerino 1

Fondamenti di Internet e Reti. Antonio Capone, Matteo Cesana, Ilario Filippini, Guido Maier

Che cos e l Informatica. Informatica generale. Caratteristiche fondamentali degli algoritmi. Esempi di algoritmi. Introduzione

Introduzione all elaborazione di database nel Web

Reti (introduzione) Internet in breve: insieme di reti locali (LAN) interconnesse da router. 2 tipi di LAN

Applicazioni e protocolli a livello applicazione

SS SISTEMI DI COMUNICAZIONE: C O PROTOCOLLI APPLICATIVI

Laboratorio di Progettazione Web Applicazioni Web

Tecnologie Web T Introduzione

Basi di dati Architetture e linee di evoluzione

ISO OSI. International Standard Organization Open System Interconnection

Siti web centrati sui dati (Data-centric web applications)

Applicazioni web centrati sui dati (Data-centric web applications)

Architetture di Elaboratori II - Sistemi Distribuiti Introduzione al corso

ECONOMIA AZIENDALE PER LA NET ECONOMY. Seminario di Laboratorio di E-Commerce. 16 Novembre Economia aziendale per la net economy

Transcript:

Basi di Dati Architetture Client/Server

Architettura centralizzata Un architettura è centralizzata quando i dati e le applicazioni (programmi) risiedono in un unico nodo elaborativo Tutta l intelligenza è nell elaboratore centrale (host o mainframe) terminali utente applicazioni nodo elaborativo DB centralizzati

Architettura distribuita Un architettura è distribuita 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 3

Architettura distribuita stazioni utente applicazioni nodo elaborativo applicazioni applicazioni nodo elaborativo nodo elaborativo DB locali 4

Architettura distribuita È 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 5

Architettura distribuita Diversi livelli di complessità Dipende dal livello di indipendenza dei nodi Vantaggi Miglioramento delle prestazioni Maggore disponibilità Migliore affidabilità 6

Proprietà importanti Portabilità Capacità di spostare un applicazione da un sistema ad un altro sistema Garantita dallo standard SQL Interoperabilità Capacità di DBMS diversi di cooperare nell esecuzione di un determinato compito Sono necessari dei protocolli di interazione ODBC X-Open-DTP 7

Architettura distribuita 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 client sia il ruolo di server 8

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 9

Esempi di protocollo Servizio Client Protocollo World Wide Web Trasferimento di file Posta elettronica Mozilla Firefox, Internet Explorer, Google Chrome, Opera, UNIX FTP, MS FTP, browser Web Eudora, Outlook, bowser Web Hypertext Transfer Protocol (HTTP) File Transfer Protocol (FTP) Simple Mail Transfer Protocol (SMTP) 10

Architettura client-server Caso particolare di sistema distribuito L architettura più semplice e più diffusa 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 client di un altro servizio 11

Architettura client-server Architettura a 2 livelli (2-Tier) Thick client contiene della logica applicativa DBMS server consente l accesso ai dati CLIENT 1 CLIENT n DBMS SERVER DB 12

Architettura client-server Architettura a 3 livelli (3-Tier) Thin client il browser Application server implementa la logica applicativa solitamente è anche un web server DBMS Server consente l accesso ai dati CLIENT 1 DBMS SERVER CLIENT n APPLICATION SERVER DB 13

Esecuzione SQL Compile & Go La query viene inviata al server La query viene compilata generazione del piano di esecuzione La query viene eseguita Il risultato viene restituito Efficace per l esecuzione di query non ripetitive Flessibile, adatta all esecuzione di SQL dinamico 14

Esecuzione SQL Compile & Store La query viene inviata al server La query viene compilata generazione del piano di esecuzione il piano di esecuzione viene memorizzato per un uso futuro La query viene eseguita Il risultato viene restituito Efficiente per query ripetute Esecuzioni parametriche della stessa query 15

Architettura C/S: il World Wide Web Il Web è una ragnatela (grafo) 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 PHP) 16

Il World Wide Web Internet ISP Client ISP Transaction server(s) Database Server(s) Web & authentication server(s) LAN 17

Basi di Dati Le applicazioni Web

Workflow delle applicazioni Web L'utente definisce una query tramite la query interface La query è inviata all'agente sul lato server L'agente risponde alla query utilizzando la sorgente dei dati Utente 1 2 3 6 Interfaccia lato client (browser) 5 Elaborazione lato server 4 Sorgente dei dati Il risultato della query è mostrato all'utente L'agente sul lato server restituisce il risultato della query La sorgente dei dati restituisce il risultato della query 19

Workflow delle applicazioni Web Tutte le applicazioni Web fanno all'incirca le stesse cose: Forniscono un interfaccia per la richiesta di informazioni (query interface); es: ricerca in un database, richiesta di un file, acquisto di un libro, prenotazione di un volo aereo, Trasmettono al Web server i dati dell'utente Eseguono l elaborazione dei dati sul lato server (server-side processing) eventualmente accedendo ad un database Trasmettono al client i risultati delle query 20

Transazione statica Internet Web server HTML files Client URL http request path display page http response send HTML browser TCP/IP server file system 21

Transazione dinamica Internet Web server Application Client URL http request & POST data command parameters display page http response send HTML logic browser TCP/IP server application 23

Transazione appoggiata su database Internet Web server Application Database Client URL http & POST command parameters query display page http send HTML data D M B browser TCP/IP server application G database 25