Homepage

DataSet: Sensori - Dati Statici


Sorgente

  • Identificativo del campo chiave del database
  1. sensori_dati_statici
  • link per vedere tabella del db
  • posizione e nome del file scaricato, URL
  1. Macchina virtuale linux (192.168.0.72) - /home/ubuntu/Desktop/File_sorgenti/Sensori_info_statiche/Sensori_dati_static_new.csv
 

Prima Fase

  • descrizione del processo di ingestion, prima fase
    • descrizione eventuali elaborazioni a mano e criticità
    1. il file Sensori_dati_static_new.csv è stato ottenuto modificando il file csv originale; in particolare nel campo codice sito sono stati specificati gli identificativi dei singoli sensori (su un sito sono presenti più sensori), moltiplicando così il numero delle righe del file.
    • posizione URL e nomi di file di elaborazione a mano o java, o perl o che altro
    1. HBase (ver. 0.90.5): il software si trova in /home/ubuntu/programs/hbase
    2. h-rider (ver. 1.0.3.0): il software si trova in /home/ubuntu/programs/h-rider
    • fasi del processo: parti a mano, parti con altri tool----> ETL
    1. HBase: Viene usato il database HBase distribuito per la memorizzazione dei dati elaborati. Per avviare l'esecuzione sull'intero cluster da terminale, dalla macchina master (192.168.0.72) andare su "home/ubuntu/programs/hbase/bin" e digitare "./start-hbase.sh".
    2. h-rider: Per la visualizzazione dei database HBase viene utilizzato un software che permette di controllarne il contenuto in modo grafico, per semplificare le cose. Questo tool permette anche di effettuare le principali operazioni attuabili. Per avviare il programma con il terminal andare su /home/ubuntu/programs/h-rider (digitando “/home/ubuntu/programs/h-rider”). Da qui eseguire il comando java -jar h-rider-1.0.3.0.jar .  Si aprirà una nuova finestra che chiede il “ZooKeeper Quorum” digitare l'ip della macchina master (192.168.0.72) e la porta 2181.
    • dove sta l'ETL URL, come si chiama
    1. Directory+file: /home/ubuntu/Desktop/Processi_ETL/TrasformazioneSensori_statici/Job_sensori_statici.kjb
    2. Le trasformazioni chiamate dal job principale sono nella stessa cartella.
    • descrizione sommaria dell'ETL
    1. JOB Job_sensori_statici: nella TRASF getConfig vengono setteti i parametri per le connessioni, poi viene richiamata la TRASF Sensori_dati_statici che è quella che si occuperà dell'elaborazione del file sorgente e della memorizzazione sul HBase.
    2. TRASF Sensori_dati_statici: questa trasformazione si occupa di elaborare il file sorgente Sensori_dati_static_new.csv. In particolare effettua uno split del campo contenente le coordinate suddividendo il contenuto nei campi latitudine e longitudine; viene poi definita la chiave per HBase cifrata in md5 concatenando i campi CODSITO e CODICETOPONIMO. I dati poi vengono memorizzati sulla tabella sensori_dati_statici di HBase e contemporaneamente viene aggiornato il campo last_update della tabella process_manager2 (MySQL) con la data di sistema al momento della memorizzazione dei dati su db.
    • descrizione e posizione dei file di output
    1. Tabella HBase - sensori_dati_statici
    • contributor name: Di Claudio
 

Seconda Fase

  • descrizione del processo di generazione delle triple RDF, seconda fase
    • descrizione eventuali elaborazioni a mano e criticità
    1. Non previste
    • posizione URL e nomi di file di elaborazione a mano o java, o perl o che altro
    1. Karma data integration: Il software si trova in /home/ubuntu/programs/Web-Karma-master
    2. Modello R2RML: /home/ubuntu/Desktop/Triple_RT/Models/Sensori_dati_statici.ttl
    • fasi del processo: parti a mano, parti con altri tool----> ETL
    1. Karma data integration: La seconda fase lancia il software Karma (comando batch) per la generazione delle triple. Karma utilizza un modello R2RML precedentemente creato a mano. Per avviare il tool grafico per la generazione dei modelli R2RML tramite terminal andare su programs/Web Karma master (digitando “cd programs/Web-Karma-master”). A questo punto lanciare il comando: “mvn jetty:run” . Il programma risulterà completamente avviato quando sul terminal comparirà la scritta [INFO] Started Jetty Server . A questo punto per poterlo utilizzare è sufficiente andare sul browser e digitare “http://localhost:8080/web-karma.html”. Per poter avviare Karma su una porta a piacere (diversa dalla 8080 che potrebbe essere dedicata ad altri processi) si può eseguire il comando “mvn -Djetty.port=9999 jetty:run” (ovviamente al posto di 9999 va specificata la porta desiderata).
    2. Nella seconda fase viene lanciato lo script fornito da Owlim, example.sh, che carica le triple generate sul repository RDF (km4city sulla macchina windows - 192.168.0.205).
    • dove sta l'ETL URL, come si chiama
    1. Directory+file: /home/ubuntu/Desktop/Processi_ETL/TrasformazioneSensori_statici/Face_C_Triple/SensoriStaticToRDF.kjb
    2. Le trasformazioni chiamate dal job principale sono nella stessa cartella.
    • descrizione sommaria dell'ETL
    1. JOB SensoriStaticToRDF: si imposta la directory di lavoro e nella TRASF getConfig vengono setteti i parametri per le connessioni. Si effettuano un DROP e una CREATE TABLE in SQL, si richiamano le TRASF getTime e createTmpTable. Si controlla quante righe ha la tabella e se non si ottiene errore, si chiama la TRASF createActualDate, e si va a creare una cartella con il path Triple_RDF/Sensori/processName/Anno_Mese/Giorno/Ora/Min_Sec. Si va a richiamare uno script da shell che permette di creare le triple e  si richiama poi la TRASF updateLastTriples per aggiornare la data di generazione delle triple RDF.
    2. TRASF Get_Tima.ktr: si recupera dalla tabella MySQL process_manager2 il valore del campo last_triples relativo allo specifico processo, che corrisponde all'ultima data di generazione delle triple. Da questa data tramite lo step get data inser viene generato un analogo timestamp.
    3. TRASF createTmpTable (SensoriStaticHbaseToMySQL): si fa una query su HBase che preleva tutte le righe relative ai dati statici dei sensori aventi un timestamp di inserimento nel db maggiore del timestamp generato nello step precedente, quello corrispondente all'ultima generazione delle triple. Questi dati vengono poi memorizzati nella tabella temporanea del processo creata in precedenza.
    4. TRASF createActualDate: preleva da sistema la data attuale e crea le variabili anno_mese, giorno, ora, minutisecondi che verrano utilizzate per definire il path in cui memorizzare le triple. Viene inoltre creata la variabile date_LT che verrà utilizzata per aggiornare la data di generazione delle triple sul db MySQL.
    5. TRASF updateLastTriples: prende il processName, e va ad aggiornare il realtivo campo last_triples nella tabella process_manager2 con il valore della variabile date_LT definita in precedenza.
    • descrizione e posizione dei file di output (triple)
    1. /home/ubuntu/Desktop/Triple_RDF/Sensori/sensori_dati_statici/%DATA%/sensori_dati_statici.n3
    • contributor name: Di Claudio
 

Semantic Model

  • Descrizione del mapping delle triple rispetto al KB
  • contributor name
 

Open Problem

  • problemi residui:
    • eventuali inconsistenze, elementi da riconciliare
    1. Il download del file sorgente è un'operazione che viene fatta manualmente. Va quindi ripetuta qualora i dati forniti dovessero subire delle modifiche. Manuale è anche la modifica del file sorgente per l'aggiunta delle informazioni relative al codice del sensore oltre a quelle del codice_sito.
    • suggerimenti per non portarsi questi errori avanti nelle prossime ingestion
 

Contributors

  • name of contributors and date of the last change: Di Claudio - 23/01/2015
0
Il tuo voto: Nessuno


Warning: Table '.\drupal\sessions' is marked as crashed and should be repaired query: UPDATE sessions SET uid = 0, cache = 0, hostname = '192.168.0.44', session = 'hidePDA|s:1:\"0\";', timestamp = 1714814214 WHERE sid = '411dcfd5613504a6ad1c513a4bcc293d' in C:\Programmi\Apache Software Foundation\Apache2.2\htdocs\drupal\includes\database.mysqli.inc on line 128