ht://miner - allegati.po-net.prato.itallegati.po-net.prato.it/dl/20070321132631280/slpaal07.pdf ·...

14
1 ht://Miner - PAAL 2007, Pula (CA) - Gabriele Bartolini - 15/03/2007 ht://Miner Un sistema open-source di data mining e data warehousing per lo studio dei comportamenti degli utenti su Internet Gabriele Bartolini Comune di Prato – Sistema Informativo Servizi di E-government e Open-Source [email protected] www.htminer.it PAAL: Pubblica Amministrazione Aperta e Libera Opportunità, Criticità ed Esperienze nell’Adozione di Standard Aperti e Software Libero nella Pubblica Amministrazione Sardegna Ricerche, Pula (Cagliari), 15 e 16 marzo 2007

Upload: ngocong

Post on 16-Feb-2019

220 views

Category:

Documents


0 download

TRANSCRIPT

1

ht://Miner - PAAL 2007, Pula (CA) - Gabriele Bartolini - 15/03/2007

ht://MinerUn sistema open-source di data mining e data warehousing per lo studio dei

comportamenti degli utenti su Internet

Gabriele BartoliniComune di Prato – Sistema Informativo Servizi di E-government e Open-Source

[email protected]

PAAL: Pubblica Amministrazione Aperta e LiberaOpportunità, Criticità ed Esperienze nell’Adozione di Standard Aperti

e Software Libero nella Pubblica AmministrazioneSardegna Ricerche, Pula (Cagliari), 15 e 16 marzo 2007

2

-

Sommario

• Prato e la sua rete civica: Po-Net• Comune di Prato e software libero• Web Usage Mining• Strumenti di web log analysis tradizionale• Obiettivi principali di ht://Miner• Architettura di ht://Miner• Pre-Processing• Processing• Data Warehouse• Analisi• Il futuro di ht://Miner • Conclusioni

3

ht://Miner - PAAL 2007, Pula (CA) - Gabriele Bartolini - 15/03/2007

Prato e la sua rete civica: Po-Net

• Popolazione residente nella provincia di Prato al 31/12/2005: 242.497• Progetto Po-Net nasce nel 1995 e vede coinvolti:

– Comuni della Provincia– Provincia– Prefettura– Camera di Commercio– ASL– Aziende a partecipazione pubblica– Biblioteche– Musei– Istituzioni culturali– Scuole– Associazioni

• Fa parte di RTRT (Rete Telematica Regionale Toscana)• E' composto da 140 gruppi di lavoro e redazioni• Il coordinatore è l'ufficio Rete Civica del Comune di Prato• Circa 37 milioni di richieste ai siti web di Po-Net nel corso 2006

4

ht://Miner - PAAL 2007, Pula (CA) - Gabriele Bartolini - 15/03/2007

Comune di Prato e software libero (soggetto attivo)

• Progetti:– ht://Dig Search Engine (1999 – 2003)– ht://Check Link Checker (dal 1999)– ht://Miner Web Usage Mining System (dal 2003)– OpenCabling (dal 2001)

• Vantaggi:– Crescita professionale del personale interno– Maggiore stabilità e robustezza del software (testing diffuso)– Suggerimenti e contribuzioni volontarie (utilizzo diffuso)

• Costi:– Metabolizzare il cambio di portata del progetto– Gestione di servizi rivolti alla comunità di utilizzatori (attività di supporto)– Adeguamento a standard per il processo collaborativo di sviluppo software, in

un'ottica globale (e.g. Internazionalizzazione dei sorgenti, siti web, mailing list, ecc.)

5

ht://Miner - PAAL 2007, Pula (CA) - Gabriele Bartolini - 15/03/2007

Web Usage Mining

• E' parte integrante delle seguenti discipline di IT:– Knowledge Discovery from Data (KDD)– Data mining, in particolare Web mining (data mining applicato al web)

• Dall'inglese:– Web usage: utilizzo del web (riferito agli utenti navigatori di Internet)– Mining: attività di estrazione di conoscenza nascosta da dati

• Processo di scoperta e analisi di modelli (pattern) che concentra l'attenzione sui dati relativi agli accessi effettuati dagli utenti (Web usage data)

• Rientrano in questa categoria i processi di analisi degli accessi collezionati a livello di:– HTTP server (server web)– HTTP proxy server– ISP– HTTP client

• L'argomento di questa presentazione verterà su accessi a server HTTP

6

ht://Miner - PAAL 2007, Pula (CA) - Gabriele Bartolini - 15/03/2007

Strumenti di web log analysis tradizionale open-source

• Alcuni esempi: AWStats, Webalizer, Analog• PRO:

– Altamente configurabili– Produzione di report statistici descrittivi molto chiari– Supporto efficiente– Stabilità

• CONTRO:– Elaborazione di file di testo (log)– Staticità dei report prodotti (istantanea)– Ogni modifica al report richiede una rielaborazione totale– Mancanza di integrazione con fonti di dati ausiliarie– Assenza di un database relazionale pluriennale modellato sulle esigenze di

business

7

ht://Miner - PAAL 2007, Pula (CA) - Gabriele Bartolini - 15/03/2007

Obiettivi principali di ht://Miner

• Memorizzazione automatica delle informazioni in un RDBMS• Creazione di un data warehouse per il supporto alle decisioni (DSS)• Predisposizione al data mining:

– Association rules (market basket analysis)– Path analysis– Clustering

• Individuazione automatica dei visitatori unici, delle sessioni, delle transazioni e del tempo speso

• Rilevazione supervisionata e automatica degli spider• Supporto per la localizzazione degli indirizzi IP tramite GeoIP• Classificazione delle URL in strutture gerarchiche organizzate a categorie• Creazione di un framework di astrazione in PHP (libreria middleware) per

l'interrogazione online• Rispetto e garanzia della privacy• ...

8

ht://Miner - PAAL 2007, Pula (CA) - Gabriele Bartolini - 15/03/2007

Architettura di ht://Miner

• Architettura a stack su 5 livelli:– Pre-processing– Processing– Data warehousing– Analisi:

• Data mining• Report• Interrogazione via Web

– Personalizzazione di massa

9

ht://Miner - PAAL 2007, Pula (CA) - Gabriele Bartolini - 15/03/2007

Pre-Processing

• Punto di partenza: Access Log (file di testo prodotti dal server)• Obiettivi: preparare i dati per la scoperta di conoscenza• Task:

– Leggere file di access log (formati diversi)– Creare un archivio temporaneo (flat table)– Filtrare le richieste (esclusioni)– Importare le richieste nell'archivio temporaneo– Risolvere gli indirizzi IP in nomi di host

10

ht://Miner - PAAL 2007, Pula (CA) - Gabriele Bartolini - 15/03/2007

Processing

• Punto di partenza: archivio temporaneo• Obiettivi:

– scoprire conoscenza– organizzare i dati in un DB normalizzato

• Task:– Organizzare i dati provenienti dal DB temporaneo in:

• Visitatori unici• Sessioni

– Ordinare le richieste per tempo di richiesta– Trasformare i dati:

• Identificando le transazioni• Rilevando gli spider• Classificando gli user agent• Localizzando le richieste sulla base dell'indirizzo IP

– Memorizzare i dati nell'archivio delle transazioni (OLTP)

11

ht://Miner - PAAL 2007, Pula (CA) - Gabriele Bartolini - 15/03/2007

Data Warehouse

• Punto di partenza: database transazioni• Obiettivi: creare il data warehouse• Task:

– Organizzare il data warehouse di primo livello:• Secondo lo schema a stella (star schema):

– Fatti– Dimensioni

• Recupera i dati dal DB delle transazioni• Memorizza i subject:

– Richieste di pagine– Richieste di errori

– Modellare il DB sulla base delle esigenze:• Data warehouse di secondo livello• Sistema per la classificazione delle URL• Richieste anonime (esclusi motori di ricerca)

12

ht://Miner - PAAL 2007, Pula (CA) - Gabriele Bartolini - 15/03/2007

Analisi

• Punto di partenza: database transazioni e data warehouse• Obiettivi: scoprire informazioni e/o presentarle al personale di business come

supporto alle decisioni• Task:

– Integrare ht://Miner con applicazioni esterne e/o librerie di data mining– Presentare informazioni tramite interfaccia web (tramite middleware PHP)– Produrre report riepilogativi statici (PDF, HTML, RTF, ...) opportunamente

commentati (dossier di business)– Interfacciare ht://Miner con sistemi OLAP

13

ht://Miner - PAAL 2007, Pula (CA) - Gabriele Bartolini - 15/03/2007

Il futuro di ht://Miner

• ht://Miner attualmente sfrutta una minima parte delle sue potenzialità• I prossimi punti di intervento su ht://Miner riguardano:

– Portabilità e stabilità (e.g.: utilizzo del framework C++ ACE)– Modulo di data mining– Ampliamento dei subject memorizzati nel data warehouse (visite, punti di

ingresso, ecc.)– Analisi (creazione di report statici in modo supervisionato)

• Il Comune di Prato cerca partner (imprese, universita') per continuare lo sviluppo:– Open-source– Collaborativo (community)

• Il Comune di Prato offre la sua assistenza per il riuso del software da parte di altri enti pubblici all'interno delle reti civiche

• Il Comune di Prato propone la fornitura del servizio di analisi in ASP per gli enti pubblici che non sono in grado di gestirlo in proprio

• In senso lato, il Comune di Prato offre la sua esperienza pluriennale nello sviluppo cooperativo di software open-source sul territorio nazionale

14

ht://Miner - PAAL 2007, Pula (CA) - Gabriele Bartolini - 15/03/2007

Conclusioni

Riferimenti Utili:• Sito principale di presentazione del progetto

– http://www.htminer.it

• Sito di sviluppo su Sourceforge.net– http://www.sourceforge.net/projects/htminer

Prossime iniziative:• Prima edizione italiana del PostgreSQL Day (PGDay):

– Monash University, Prato, 6-7 luglio 2007– Interverranno i principali esponenti della comunità mondiale– Partecipazione gratuita– Patrocinio: Comune e Provincia di Prato, Regione Toscana– http://www.pgday.it

Domande?

GRAZIE