APPELLO 12/02/2014 STUDENTE: LUCA GRAZIOLI MATRICOLA: 736245 Progetto di Architetture del software e dei dati.

Slides:



Advertisements
Presentazioni simili
Modulo 5 DataBase ACCESS.
Advertisements

Il sistema italiano della qualità della tensione sulle
Gestione della memoria centrale
© 2007 SEI-Società Editrice Internazionale, Apogeo Unità B1 Introduzione alle basi di dati.
Le nuove funzioni della piattaforma Puntoedu lingue.
Structured Query Language (SQL) Presentazione 13.1 Informatica Generale (Prof. Luca A. Ludovico)
Google-Apps: il cloud computing a scuola
Esercizio zSi vuole realizzare un data warehouse per una azienda che vende mobili allingrosso. zIl data warehouse deve permettere di analizzare i ricavi.
Biglietti: schema E/R.
1 Biglietti: schema E/R. 2 Biglietti: albero degli attributi.
4 – Progettazione – Introduzione e Modello E-R
19/01/2014 Viste. 19/01/2014 Viste Le Viste Logiche o Viste o View possono essere definite come delle tabelle virtuali, i cui dati sono riaggregazioni.
Archivio Cé necessità di immagazzinare in modo permanente grandi quantità di dati. Esempio: anagrafe dei cittadini di un comune.
L’uso dei database in azienda
ANNO ACCADEMICO CORSO LAUREA MAGISTRALE IN SCIENZE DELLA PRODUZIONE ANIMALE Riconoscimento elettronico, management informatizzato e tracciabilità.
IL PATRIMONIO DI DATI - LE BASI DI DATI. Il patrimonio dei dati Il valore del patrimonio di dati: –Capacità di rispondere alle esigenze informative di.
Introduzione DSP. Trestino Cosmo Università degli studi di Padova Capitolo 1, Slide 2 Obiettivi della lezione Perché elaborare i segnali in digitale ?
IDUL 2010 RETI E PROTOCOLLI. INTERNET.. IDEE PRINCIPALI IN QUESTA LEZIONE Reti: Aspetto logico della rete e tipologie: peer-to-peer, a hub, a bus Trasmissione.
IDUL 2012 RETI E PROTOCOLLI. INTERNET.. IDEE PRINCIPALI IN QUESTA LEZIONE Reti: Aspetto logico della rete e tipologie: peer-to-peer, a hub, a bus Trasmissione.
MODALITÀ DI ACQUISIZIONE DEL SOFTWARE APPLICATIVO Paolo Atzeni Dipartimento di Informatica e Automazione Università Roma Tre 03/12/2008 (materiale da:
Basi di dati Università Degli Studi Parthenope di Napoli
World Wide Web (www) Unita logica tra servizi fisicamente distinti Semplicita di accesso alle informazioni (navigazione ipertestuale) Tanti soggetti concorrono.
Linguaggi di programmazione
Basi di dati 2002 EER Vogliamo aumentare lespressività degli Entity Model EER: Entity Model Esteso.
Modello Relazionale Definisce tipi attraverso il costruttore relazione, che organizza i dati secondo record a struttura fissa, rappresentabili attraverso.
Normalizzazione Le forme normali certificano che la base di dati soddisfa criteri di qualità che mirano ad evitare le ridondanze e i conseguenti effetti.
IL CLOUD COMPUTING: portabilità o privacy?
Daniel Stoilov Tesi di Laurea
M.A.E.A.I. Mobile Agent and Enterprise Architecture Integration Il gestore delle politiche Valerio Siri Reti di Calcolatori LS Docente: Antonio Corradi.
Reti di Calcolatori L-S Un Sistema Decentrato di Allocazione del Carico per Applicazioni di Calcolo Distribuito Mauro Bampo.
La progettazione di un sistema informatico
Sistema di controllo e supervisione impianti FV small sizes Ing. T. Monti – 04/07/11 – Rev. 02.
Sistemi a sensori distribuiti riflessioni tecniche
Introduzione a Oracle 9i
Architettura di storage ad alta affidabilita e bilanciamento di carico per volumi centrali e di esperimento A.Brunengo, M.Corosu INFN Sezione di Genova.
Lazienda SCInformatica si occupa della progettazione e della realizzazione di sistemi informatici dedicati alle farmacie. Fornisce inoltre un servizio.
Università degli studi di Roma la Sapienza --- Laboratorio di Basi di Dati II - a.a. 2003/04 Presentato da: CAU Simone Matricola:
Lazienda SC Informatica si occupa della progettazione e della realizzazione di sistemi informatici dedicati alle farmacie. Fornisce inoltre un servizio.
DB- Sistemi Informativi
RECON Acquisizione Parametri Monitoraggio Live da remoto
FESR Trinacria Grid Virtual Laboratory ADAT (Archivi Digitali Antico Testo) Salvatore Scifo TRIGRID Second TriGrid Checkpoint Meeting Catania,
ITCG “V. De Franchis” - PON FSE Modulo G/1 l’informatica”
QMAN Queue Manager Documentazione Commerciale Presentazione prodotti.
Modulo 5 DataBase ACCESS. Informazioni e Dati INFORMAZIONI vengono scambiate con linguaggio scritto o parlato DATI rappresentazione di informazioni in.
I DATABASE.
FESR Consorzio COMETA Giuseppe Andronico Industry Day Catania, 30 Giugno 2011 IaaS, PaaS e SaaS: cosa significano per le aziende.
Progettazione Logica Il prodotto della progettazione logica è uno schema logico che rappresenta le informazioni contenute nello schema E-R in modo corretto.
IDUL 2013 RETI E PROTOCOLLI. INTERNET.. IDEE PRINCIPALI IN QUESTA LEZIONE Reti: Aspetto ‘logico’ della rete e tipologie: peer-to-peer, a hub, a bus Trasmissione.
Basi Dati e Laboratorio (6 + 6) crediti – curriculum Sistemi e Reti Basi dati 1 e Basi dati 2 prec.ordin. docenti: Barbara Demo Giuseppe Berio mail :
Progettazione di dati e applicazioni per il Web S. Ceri, P. Fraternali, A. Bongio, M. Brambilla, S. Comai, M. Matera Copyright © The McGraw-Hill.
Basi di dati distribuite Prof. M.T. PAZIENZA a.a
Infrastruttura per la gestione distribuita di un sistema di prenotazione Progetto di: Fabio Fabbri Matricola
Riunione conclusiva della prima fase del progetto Dipartimento di Scienze dell’Ingegneria dell’Università di Modena e Reggio Emilia.
Capitolo 1 Il middleware
Progettazione Logica Il prodotto della progettazione logica è uno schema logico che rappresenta le informazioni contenute nello schema E-R in modo corretto.
Servizio di newsgroup con replicazione dei server Studente: Letizia Cheng Cheng Sun Matricola: Reti di Calcolatori LS – Prof. A. Corradi A.A. 2003/2004.
UNIVERSITÀ DI BERGAMO FACOLTÀ DI INGEGNERIA UNIVERSITÀ DI BERGAMO FACOLTÀ DI INGEGNERIA UNIVERSITÀ DI BERGAMO FACOLTÀ DI INGEGNERIA Dispositivi per il.
Progettazione di basi di dati: metodologie e modelli
INSIEME RISORSE HARDWARE E SOFTWARE,DISTRIBUITE NELLA RETE, AL SERVIZIO DEL CLIENTE PER ARCHIVIARE ED ELABORARE INFORMAZIONI E APPLICATIVI ​
Aditech Life Acquisizione Parametri Monitoraggio Live da remoto
Le basi di dati.
Progettiamo Soluzioni Realizziamo Software Risolviamo Problemi.
Un'infrastruttura per il Paese: il progetto SUNFISH Francesco Paolo Schiavo Luca Nicoletti Sede Sogei Roma, 5 Aprile 2016 C.
Laurea Magistrale in Informatica Architetture basi di dati A.A Docente: Prof. Carlo Batini Proprieta’ e caratteristiche strutturali dei sistemi.
Architetture del software e dei dati Appello del 24/2/2016 Università degli Studi di Milano-Bicocca Dipartimento di Informatica Sistemistica e Comunicazione.
Architetture software e dei dati Appello 24/02/2016 Osservazione del Comportamento degli Automobilisti (OCA) MONTEROSSO FEDERICO MONTEVECCHI.
Attività Gruppo Virtualizzazione Andrea Chierici CNAF CCR
DDBMS Distributed database system. DDB Una base di dati distribuita è una collezione di dati che appartengono logicamente allo stesso sistema informativo.
Architetture del Software e dei Dati A.A. 2015/16 Sistema di Osservazione del Comportamento degli Automobilisti Lorenzo Fenili Silvio Messi
Architettura del Software e dei Dati Sistema di Osservazione del Comportamento degli Automobilisti (OCA) Gruppo BPS Michele Bellini Daniele Prevedello.
Transcript della presentazione:

APPELLO 12/02/2014 STUDENTE: LUCA GRAZIOLI MATRICOLA: Progetto di Architetture del software e dei dati

Testo del problema - 1 Si deve realizzare un sistema per l’acquisizione dei dati fisiologici (ad esempio, la frequenza del battito cardiaco) di atleti che svolgono attività di allenamento. Gli utenti del sistema sono gli atleti e i loro allenatori. Il sistema deve supportare: 1. l’acquisizione “in tempo reale” dei dati fisiologici degli atleti; 2. l’indicazione, da parte degli atleti, dell’inizio e della fine di una attività di allenamento, specificandone il tipo (ad esempio, “corsa di 5000 metri); 3. l’archiviazione dei dati relativi ai singoli atleti in una Base relazionale DatiAllenamenti BDA; 4. la visualizzazione in remoto, da parte degli allenatori, dei dati relativi agli atleti di loro competenza che stanno svolgendo un allenamento;

Testo del problema la visualizzazione in remoto, da parte degli atleti, dei dati relativi all’allenamento che tanno svolgendo; 6. l’elaborazione di statistiche per ricavare informazioni aggregate (ad esempio, per atleta, per allenamento e per tipo di attività) e la loro visualizzazione da parte degli allenatori e degli atleti; 7. la comparazione, da parte degli allenatori, delle informazioni relative a un singolo atleta con informazioni analoghe relative ai diversi tipi di attività, che sono archiviate in una Base Dati relazionale dei Parametri Fisiologici BDF esterna preesistente. Si richiede di definire, utilizzando i formalismi opportuni: 1. l’architettura del problema in termini di informazioni e flussi informativi; 2. l’architettura logica in termini di componenti di elaborazione;

Testo del problema l’architettura concreta in termini di modalità di interazione fra componenti; 4. l’architettura di deployment; 5. le scelte tecnologiche (componenti hw, reti di comunicazione, piattaforme sw); 6. gli schemi concettuali delle basi di dati BDA e BDF, avendo cura di prevedere in tali schemi concettuali almeno una eterogeneita’ e almeno una proprieta’ interschema. 7. le modalità e i problemi di integrazione concettuale fra BDA e BDF. 8. lo schema concettuale globale risutato della integrazione delle Basi Dati BDA e BDF; 9. assumendo di utilizzare una architettura di integrazione dati (virtual data integration), e assumendo di scegliere i mapping secondo la modalita’ Global as View, i mapping tra schema logico globale relazionale e schemi locali relazionali di BDA e BDF; 10. una interrogazione sullo schema globale, con il suo unfolding sugli schemi locali;

Testo del problema Il sistema deve anche essere in grado di pubblicare parte dei dati contenuti nella architettura di integrazione (a scelta dello studente e tenuto conto di eventuali problemi di privacy) in formato aperto (indicando un insieme di metadati, tra cui il tipo di licenza con cui vengono rilasciati), indicando almeno una applicazione che potrebbe avvantaggiarsi dall’utilizzo di questi dati. Le scelte architetturali dovranno essere discusse presentandone le motivazioni ed evidenziando, ove opportuno, possibili scelte alternative con i relativi vantaggi e svantaggi (ad esempio, per la architettura dati, una scelta di tipo base dati distribuita, con le relative problematiche di replicazione e distribuzione dei frammenti).

Assunzioni Attività e allenamento sono la stessa cosa; Quali attività un atleta dovrà svolgere, vengono decise privatamente tra atleta e allenatore, tale decisione non è memorizzata nel sistema; Un atleta può svolgere una attività alla volta; Per un'attività in corso atleta e allenatore vedono dati con frequenza di aggiornamento differente; Il contesto è un centro sportivo di medie dimensioni (vedi dimensionamento); Gli allenamenti possono essere svolti anche lontani dal centro sportivo.

Dimensionamento - 1 Totale atleti iscritti: circa 3000; N° Atleti attivi in media all’ora: 100; Totale allenatori: 300; Atleti seguiti a settimana da un allenatore: 10; Numero attività svolte da un atleta giornalmente: 7; Totale attività svolte giornalmente: circa 10000; Richieste di visualizzazione allenamenti in corso: circa (metà atleta, metà allenatori); Richieste di visualizzazione storico allenamenti: (metà atleta, metà allenatori);

Dimensionamento - 2 Rilevazione battito cardiaco: da 1 a 3 volte al secondo massimo Variazione temperatura corporea: 0,06°C/s Richiesta comparazione dati fisiologici al giorno: circa 5000

Architettura del problema

Casi d’uso

Modello dei dati

Segnala inizio attività

Acquisisci frequenza cardiaca - 1

Acquisisci frequenza cardiaca - 2

Acquisisci temperatura - 1

Acquisisci temperatura - 2

Aggiungi dato fisiologico (generale)

Aggiorna attività

Concludi attività

Compara info atleta

Elabora statistiche allenamento

Elabora statistiche atleta/attività

Visualizza attività in corso allenatore

Visualizza attività in corso atleta

Visualizza attività svolte atleta

Visualizza statistiche aggregate

Architettura logica

Partizionamento Scelto partizionamento multidimensionale:  A livello sensori dei dati fisiologici scelto partizionamento orizzontale  Tutto il resto si può ricondurre a un partizionamento verticale Per quanto riguarda le molteplicità N intende il numero di atleti.

Rilevatore battiti/temperatura

Elaboratore frequenza cardiaca

Elaboratore temperatura

Segnala inizio attività (GestoreAtleta)

Concludi attività

Aggiorna attività

Comparatore parametri fisiologici

Gestore statistiche - 1

Gestore statistiche - 2

Visualizza attività in corso allenatore

Visualizza attività in corso atleta

Visualizza attività svolte atleta

Visualizzatore Statistiche Aggregate

Segnala inizio attività

Acquisisci temperatura

Acquisisci frequenza cardiaca

Aggiorna attività

Concludi attività

Elabora statistica

Visualizza attività in corso allenatore

Visualizza attività in corso atleta

Architettura concreta

Soluzione 1

Soluzione 1 valutazione Pro: Rispetta la suddivisione fornita dal problema Sensori estremamente semplici Device allenatore limitato alla sola interfaccia con il server Contro: Nodo centrale che necessità di un elevata potenza di calcolo Dispositivo atleta complesso Elevata frequenza di connessioni tra sensori e dispositivo atleta Sensore più difficile da reperire commercialmente

Soluzione 2

Soluzione 2 valutazione Pro: Rispetta la suddivisione fornita dal problema Device allenatore limitato alla sola interfaccia con il server Drastica diminuzione del numero di connessioni richieste tra device atleta e sensori Device atleta più semplice e modulabile Sensore più facilmente reperibile commercialmente Contro: Nodo centrale che necessita di un elevata potenza di calcolo

Soluzione 3

Soluzione 3 valutazioni Pro: Minor potenza di calcolo richiesta nel server centrale Device atleti più semplici Device allenatori limitati alla sola interfaccia server Contro: Solo per centri sportivi con sedi distaccate Aumento costi Necessità di continui collegamenti tra sedi distaccate e sedi centrali

Soluzione scelta: 2 Stima dei costi Costo infrastruttura hardware: Costo nodo centrale: 4000€ Costo elaboratore statistiche: 2000€ Costo storage: 10000€ Infrastruttura comunicazione: 35€/mese Sensori: 50€/sensore (a carico atleta)

Stima dei costi -2 Costo infrastruttura software: Sviluppo software:  Nodo centrale: 1 team di sviluppo 3 settimane di lavoro, costo 20000€  Nodo statistica: 1 team di sviluppo 2 settimane di lavoro, costo 15000€ Applicazione Android/iOS: 10000€ Costo licenze: 4000€ Manutenzione: 2 team di sviluppo 1 settimana al mese 1500€/mese Totale costi: 65000€ €/mese

Soluzione 2 & cloud computing Stima dei costi (es su Windows Azure)  Nodo centrale opzione A6, costo 394€/mese (0,53€/ora, per circa 700 ore di utilizzo)  Nodo statistiche opzione A7, costo 782€/mese (1,06€/ora)  Archiviazione 6TB/mese, costo 305€/mese  Costo mensile totale: 1481€/mese Costo sviluppo:  Nodo centrale: 10000€  Nodo statistica: 8000€  Applicazione Android/iOS: 10000€  Manutenzione: 700€/mese

Riassumendo Costo totale messa in cloud: 28000€ €/mese Differenza costo fase iniziale: ( )€ = 37000€ Differenza costo mensile: ( )€ = 646€/mese Per i primi 57 mesi conviene il servizio cloud Windows Azure, dopodiché a seconda dell’espansione del servizio dovrà seguire una valutazione ulteriore.

Architettura dati

Tavola delle frequenze OperazioneFrequenza T1 = inserimento nuova attività al giorno Q1= visualizza allenamento in corso atleti al giorno Q2 = visualizza allenamenti in corso allenatori al giorno Q3 = visualizza storico allenamenti da atleti al giorno Q4 = visualizza storico allenamenti da allenatori al giorno Q5 = visualizza attività svolte per elab. statistiche Circa 26 al giorno

BDA schema concettuale Atleta Allenatore Attività Allena Frequenza_cardiaca userID nome dataNascita userID (0,1) (0,N) Svolte (0,N) (1,1) cognome categoria nome dataNascita cognome tipologia inizio fine nome id sport settore (1,1) Temperatura timestamp temp tipoSensore unitàDiMisura Sensore nome precisione id grandezzaMisurata Utilizzo (0,N) heart_rate (0,N) (1,1) timestamp tipoSensore unitàDiMisura sesso

BDA Schema logico Atleta (UserID,Nome,Cognome,Categoria,DataDiNascita,Sesso) Allenatore (UserID,Nome,Cognome,Tipologia,DataDiNascita) Allena (Atleta,Allenatore) Attività (Id, Nome,Inizio,Fine,Atleta,Sport) Sensore (Id,nome,precisione,grandezzaMisurata) SensoreAtt (Attività,Sensore) Freq_cardiaca (heart_rate,Attività,timestamp,tipoSensore,unitàDiMisura) Temperatura (temp,Attività,timestamp,tipoSensore,unitàDiMisura)

BDF schema concettuale

BDF Schema logico DatoFisiologico (Nome,unitàDiMisura) Individuo (Id,sesso,età,categoria) Stato (Nome,,tipoSforzo) Sport (Nome,aSquadre/individuale) Misura (DatoFisiologico,Persona,Stato,Stagione,ValoreMax,ValoreMin,ValoreMedio) StatoSport (Stato,Sport) Strumento (nome,commerciale/professionale) DatoRaccolto (DatoFis,Strumento)

Soluzione centralizzata Pro: Compatibile con scelta di deployment Elaborazione statistiche semplice Costi minori Manutenzione più facile Contro: Rischio collo di bottiglia con crescita del servizio No ridondanza dati (servizio cloud può aggirare il problema) Basso parallelismo

Soluzione distribuita Supponendo che il centro sportivo abbia 3 sedi (rispettivamente una sede centrale a Milano, e due sedi distaccate a Bergamo e a Verona) e che in fasi di registrazione all’atleta venga aggiunto l’attributo sedeRegistrazione, si potrebbe avere la seguente allocazione di frammenti. Bergamo: AtletaBG, AttivitàBG, AllenatoreBG, Sensore, Frequenza_CardiacaBG, TemperaturaBG; Verona: AtletaVR, AttivitàVR, AllenatoreVR, Sesnsore, Frequenza_CardiacaVR, TemperaturaVR; Milano: Atleta, Attività, Allenatore, Sensore, Frequenza_Cardiaca, Temperatura;

Esempi di frammenti espressi secondo SLG BDA CREATE VIEW AtletaBG AS ( SELECT Atleta.userID, Atleta.Nome, Atleta.Cognome, Atleta.Categoria, Atleta.DataNascita, Atleta.Sesso FROM Atleta WHERE Atleta.SedeRegistrazione = «Bergamo» ) CREATE VIEW AttivitàBG AS ( SELECT * FROM Attività JOIN Atleta ON Attività.Atleta = Atleta.userID WHERE Atleta.SedeRegistrazione = «Bergamo» )

Soluzione distribuita valutazione Pro: Principio di località rispettato Prestazioni Resilienza Contro: Costi Manutenzione Complessità

Soluzione scelta: centralizzata Non richiede modifiche alla soluzione di deployment scelta; L’eventuale utilizzo di un servizio cloud aggira alcuni problemi del sistema centralizzato (esempio resistenza ai guasti); L’elaborazione delle statistiche viene eseguita in modo efficiente senza richiedere un’eccessiva replicazione dei dati.

Virtual Data Integration: individuazione etereogeneità e proprietà interschema Concetto 1 (da BDA)Concetto 2 (da BDF)Proprietà Attributo Attività.SportEntità SportEterogeneità (ET1) Attributo Atleta.DataNascita Attributo Individuo.EtaEterogeneità, legame funzionale. (ET2) Persona.Età = AnnoAttuale- Atleta.DataNascita Entità Frequenza_Cardiaca Entità DatoFisiologicoProprietà interschema, IS-A (IS1) Entità TemperaturaEntità DatoFisiologicoProprietà interschema, IS-A (IS2)

Risoluzione eterogeneità ProprietàConcetto 1Concetto 2Concetto SI ET1Attributo Attività.Sport Entità Sport ET2Attributo Atleta.DataNascita Attributo Individuo.DataNascita

Schema concettuale globale

Schema logico globale DatoFisiologico (Nome,unitàDiMisura,tipoSensore) Freq_cardiaca (Nome,unitàDiMisura,tipoSensore,heart_rate,Attività,timestamp) Temperatura (Nome,unitàDiMisura,tipoSensore,temp,Attività,timestamp) Attività (id,nome,inizio,fine,settore,Atleta,Sport) Strumento (nome,commerciale/professionale) DatoRaccolto (DatoFis,Strumento) Sensore (Id,nome,precisione,grandezzaMisurata) SensoreAtt (Attività,Sensore) Individuo (Id,sesso,DataNascita,categoria) Atleta (UserID,Nome,Cognome,Categoria,Individuo) Allenatore (UserID,Nome,Cognome,Tipologia,Individuo) Allena (Atleta,Allenatore) Stato (nome,tipoSforzo) Sport (Nome,aSquadre/individuale) Misura (DatoFisiologico,Persona,Stato,Stagione,ValoreMax,ValoreMin,ValoreMedio) StatoSport (Stato,Sport)

Mapping GAV CREATE VIEW DatoFisiologico AS ( SELECT DatoFisiologico.Nome, DatoFisiologico.unitàDiMisura, «» FROM BDF.DatoFisiologico UNION SELECT «frequenza_cardiaca», Frequenza_Cardiaca.unitàDiMisura, Frequenza_Cardiaca.tipoSensore FROM BDA.Frequenza_Cardiaca UNION SELECT «temperatura», Temperatura.unitàDiMisura, Temperatura-tipoSensore FROM BDA.Temperatura ) CREATE VIEW Frequenza_cardiaca AS ( SELECT «frequenza_cardiaca>>, frequenza_cardiaca.unitàDiMisura, frequenza_cardiaca.tipoSensore, frequenza_cardiaca.heart_rate, frequenza_cardiaca.attività, frequenza_cardiaca.timestamp FROM BDA.Frequenza_Cardiaca ) CREATE VIEW Temperatura AS ( SELECT «temperatura>>, temperatura.unitàDiMisura, temperatura.tipoSensore, temperatura.heart_rate, temperatura.attività, temperatura.timestamp FROM BDA.Temperatura )

Mapping GAV CREATE VIEW Attività AS ( SELECT * FROM BDA.Attività ) CREATE VIEW Strumento AS ( SELECT * FROM BDF.Strumento ) CREATE VIEW DatoRaccolto AS( SELECT * FROM BDF.DatoRaccolto ) CREATE VIEW Sensore AS ( SELECT * FROM BDA.Sensore )

Mapping GAV CREATE VIEW SensoreAtt AS ( SELECT * FROM BDA.SensoreAtt ) CREATE VIEW Individuo AS ( SELECT Individuo.Id, Individuo.sesso, (AnnoAttuale- Individuo.Età), Individuo.categoria FROM BDF.Individuo ) CREATE VIEW Atleta AS( SELECT Atleta.userID, Atleta.Nome, Atleta.Cognome, Atleta.Categoria, Individuo.ID FROM BDA.Atleta,BDF.Individuo WHERE BDA.Atleta.sesso = BDF.Individuo.Sesso AND BDA.Atleta.DataNascita = (AnnoAttuale – BDF.Individuo.Età) )

Mapping GAV CREATE VIEW Allenatore AS ( SELECT Allenatore.userID, Allenatore.Nome, Allenatore.Cognome, Allentatore.Tipologia, «» FROM BDA.Allenatore ) CREATE VIEW Allena AS ( SELECT * FROM BDA.Allena ) CREATE VIEW Stato AS ( SELECT * FROM BDF.Stato ) CREATE VIEW Sport AS ( SELECT * FROM BDF.Sport UNION SELECT Attività.Sport, «» FROM BDA.Attività )

Mapping GAV CREATE VIEW Misura AS ( SELECT * FROM BDF.Misura ) CREATE VIEW StatoSport AS ( SELECT * FROM BDF.StatoSport )

Esempio unfolding di query Q = Trovare frequenza cardiaca massima e minima attesa per l’atleta con userID «FL23». Interrogazione su SLG SELECT Atleta.userID, Misura.ValoreMax, Misura.ValoreMin FROM ((Atleta JOIN Individuo) ON Atleta.userID = Individuo.ID) JOIN Misura ON Indivduo.ID = Misura.Persona WHEREAtleta.userID = «FL23» AND Misura.DatoFisiologico = «frequenza_cardiaca»

Unfolding query SELECT userID, ValoreMax, ValoreMin FROM ( SELECT Atleta.userID, Atleta.Nome, Atleta.Cognome, Atleta.Categoria, Individuo.ID FROM BDA.Atleta,BDF.Individuo WHERE BDA.Atleta.sesso = BDF.Individuo.Sesso AND BDA.Atleta.DataNascita = (AnnoAttuale - BDF.Individuo.Età) JOIN( SELECT Individuo.Id, Individuo.sesso, (AnnoAttuale- Individuo.Età), Individuo.categoria FROM BDF.Individuo ) ON Atleta.userID = Individuo.ID ) JOIN SELECT * FROM BDF.Misura ON Individuo.ID=Misura.Persona WHERE Atleta.userID = «FL23» AND Misura.DatoFisiologico = «Frequenza_cardiaca»

Pubblicazione dati È stato scelto di pubblicare i dati relativi alle relazioni: Sensore; Attività; Sport; Frequenza_Cardiaca; Temperatura; In particolare dalla relazione Attività viene rimosso l’identificatore per motivi di privacy.

Licenza e insieme metadati La licenza scelta per la pubblicazione è la CC BY in quanto permette un utilizzo commerciale dei dati consentendo anche la compatibilità interlicenza. Inoltre tale licenza obbliga l’utilizzatore dei dati a riconoscere la paternità dell’autore. Insieme metadati scelti: Sensore: nome, precisione, grandezzaMisurata; Attività: nomeSensore, inizio, fine, settore, sport, frequenza_cardiaca, temperatura; Sport: nome; Frequenza_cardiaca: heart_rate; Temperatura: temp;

Applicazioni possibili Applicazione commerciale: sfruttando i dati sul sensore è possibile condurre indagini sulle caratteristiche dei sensori più utilizzati per ogni sport Applicazione biomedicale: confrontare i dati fisiologici di atleti con altri.