1. LE RELAZIONI SOCIALI IN FACEBOOK.
SVILUPPO DI UN'APPLICAZIONE PER
LA RACCOLTA ED ANALISI DEI DATI
Tesi di Laurea in Complementi di Basi di Dati
Relatore: Danilo Montesi
Studente: Massimiliano Ghedini
Corso di Laurea Magistrale in Informatica
20 Marzo 2013
Massimiliano Ghedini Le Relazioni Sociali In Facebook 1/22
2. Introduzione - il Progetto di Ricerca
1. Università degli Studi di URBINO "Carlo BO" MIUR
2. Università degli Studi di BOLOGNA
3. Università Cattolica del Sacro Cuore (MI) PRIN 2009
4. Università degli Studi di BERGAMO
5. Università della CALABRIA (CS)
Relazioni sociali ed identità in Rete:
vissuti e narrazioni degli italiani nei siti di social network
Alcuni degli obiettivi specifici del Progetto sono:
• l'analisi delle interazioni e delle relazioni sociali all'interno dei siti di
social network;
• l'analisi delle pratiche di narrazione dell'identità;
• l'analisi percezione di ambiti pubblici e privati nel nuovo contesto.
Massimiliano Ghedini Le Relazioni Sociali In Facebook 2/22
3. Introduzione – i social networks
Si è deciso di concentrare le osservazioni sui social networks
maggiormente diffusi: Twitter e Facebook.
Twitter non presenta restrizioni particolari, ma la maggior parte dei
contenuti (tweets):
• è di lunghezza limitata (come gli SMS),
• è indicizzato su parole chiave (#hashtags),
• resta solo per breve tempo sui server di Twitter.
Facebook salva info e contenuti degli utenti su un DB,
permettendone l’estrazione anche a distanza di anni.
• richiede l’autorizzazione utente per l’accesso a messaggi, dati
personali, ecc.
Ricostruiremo i dialoghi di FB tramite un’applicazione ad-hoc.
Massimiliano Ghedini Le Relazioni Sociali In Facebook 3/22
4. Introduzione - un’applicazione ad-hoc per Facebook
L’accesso ai dati dei social networks è vincolato.
Raccolta dati: richiede lo sviluppo di un’applicazione da eseguire
all’interno di Facebook, ma installata su server esterno.
Obiettivo:
• informazioni sull’utente (metadati), necessari per
contestualizzare
• messaggi, commenti, domande e risposte ai messaggi dei propri
amici
Elaborazione dati:
• statistiche
• indicizzazione contenuti non strutturati
• ricostruzione dialoghi
Massimiliano Ghedini Le Relazioni Sociali In Facebook 4/22
5. Sviluppo - il server
Lo storage dei dati estratti da Facebook e delle risposte al
questionario avviene su di un server dedicato.
Linux
Apache
Architettura scelta: LAMP
MySQL
PHP
Le transazioni con i server di Facebook sono protette da algoritmi a
crittografia asimmetrica SSL/TLS, per cui è stato acquistato ed
installato un certificato della CA THAWTE (Unibo lo usa per
autenticazione ad AlmaWifi).
Massimiliano Ghedini Le Relazioni Sociali In Facebook 5/22
6. Sviluppo - il database
Il database dell’Applicazione è composto da 8 tabelle, per la gestione di
differenti classi di informazioni:
• snsapp8, per la raccolta di tutti i messaggi di testo,
• snsfriends, per i riferimenti degli amici di ogni utente,
• snsfriendslist, per le classificazioni delle amicizie di ogni utente,
• snsfriendslistmmb, per i membri di queste liste,
• snsgroups, per i dettagli dei gruppi a cui ogni utente è affiliato,
• snsgroupslistmmb, per i membri di ciascun gruppo,
• snsquest, per le risposte al questionario on line,
• snsuser (*), per la collezione dei dati dell'utente.
(*) Nota: utilizzare lo userID di Facebook come chiave univoca in questa tabella, ha
permesso operazioni di aggiornamento molto più rapide.
Massimiliano Ghedini Le Relazioni Sociali In Facebook 6/22
7. Sviluppo – l’applicazione
L’applicazione risiede sul server web ma viene incorporata e lanciata all’interno
di Facebook.
• Riconoscimento utente
• Richiesta permesso di accesso ai dati
• Esecuzione
È stata scritta in linguaggio PHP 5, e modellata in UML 2.0, utilizzando i
diagrammi dei:
• Casi d’uso
• Componenti (black box) massima modularità
• Classi
• Sequenza
• Deploy
Massimiliano Ghedini Le Relazioni Sociali In Facebook 7/22
8. Sviluppo - il questionario
Il questionario aggiunto all’applicazione permetterà ai ricercatori di valutare i
dati estratti in base al profilo utente ricavato.
Massimiliano Ghedini Le Relazioni Sociali In Facebook 8/22
9. Fase di test dell’applicazione
I test di funzionamento dell’applicazione si sono svolti in due fasi:
1. Account individuale - obiettivo: testare queries R/W, operazioni di
autenticazione, sicurezza;
2. Test su gruppo di utenti FB – obiettivo: verificare uso interfaccia e
comprensione del pannello di autorizzazione iniziale.
Risultati rilevanti:
1. Inserimento di descrizione progetto ed
informazioni essenziali anche sulla home page;
2. Eccessiva lentezza delle queries di lettura su FB
(4-5 minuti) riscrittura codice per multiquery.
(unica interrogazione che restituisce i dati in forma più
complessa, da analizzare e scomporre)
Massimiliano Ghedini Le Relazioni Sociali In Facebook 9/22
10. Analisi dei dati
Le informazioni raccolte nel database verranno sottoposte a due tipi di analisi:
1. Quantitative - sui dati strutturati (questionari, info utente, ecc.)
2. Text Mining ed Information Retrieval - sui dati semi o non strutturati, come
le frasi ed i commenti.
Il punto di partenza è l’analogia con i motori di ricerca di Internet, che
scansionano i contenuti sul web e ne memorizzano le parole.
Queste, dopo la pulizia di sinonimi e congiunzioni, vengono memorizzate
per essere recuperate durante le ricerche, in ordine di rilevanza rispetto alla
chiave di ricerca.
Per questo elaborato sono state implementate alcune procedure:
• una di ricostruzione dei dialoghi, tramite i dati raccolti
• una di conteggio delle parole memorizzate.
Massimiliano Ghedini Le Relazioni Sociali In Facebook 10/22
11. Analisi dei dati - agenda
Giorno Fase
10 dicembre 2012 l’applicazione è entrata in fase di produzione
nel database erano presenti i dati di 51 utenti,
7 marzo 2013 sono stati registrati 3.278 messaggi,
e l’indicizzazione ha elaborato 171.469 parole.
31 maggio 2013 termine sottomissione del questionario
termine analisi dei dati e data di chiusura del progetto
17 ottobre 2013
PRIN
Massimiliano Ghedini Le Relazioni Sociali In Facebook 11/22
12. Analisi dei dati - numero amici per utente
La tabella rappresenta il conteggio degli amici di ogni utente, aggregati in intervalli.
Gli intervalli vuoti non sono stati rappresentati per maggior chiarezza nella lettura.
Massimiliano Ghedini Le Relazioni Sociali In Facebook 12/22
13. Analisi dei dati – visibilità messaggi, età e sesso degli utenti
Massimiliano Ghedini Le Relazioni Sociali In Facebook 13/22
14. Analisi dei dati – visibilità messaggi, età e sesso degli utenti
Età n.d. > 50%
Massimiliano Ghedini Le Relazioni Sociali In Facebook 14/22
15. Analisi dei dati – visibilità messaggi, età e sesso degli utenti
Età n.d. > 50%
Femmine > 50%
Massimiliano Ghedini Le Relazioni Sociali In Facebook 15/22
16. Analisi dei dati - il questionario
Massimiliano Ghedini Le Relazioni Sociali In Facebook 16/22
17. Analisi dei dati – ricostruzione dialoghi
utente 1196**11: "Vorrei ringraziarvi uno per uno, ma siete tantissimi! Mi commuovete...Grazie a
tutti di cuore!"
amico 1: "Ma tu sei splendida e meriti tutto questo affetto!!!"
amico 2: "le voglio pure io quelle fotoooooooooooooo"
utente : "Hai ragione...ci siamo scordati di mandarvele!!"
utente 2967**63: "A Bologna le strade sono bianche e si gira veramente male. Pensateci prima di
uscire, perché c'è solo una cosa peggiore di rimanere bloccati in casa dalla neve:
rimanere bloccati al lavoro!"
amico 1: "perché a Ferrara non nevica?"
amico 2: "troppo saggio"
amico 3: "Troppo vero max io sto facendo la processione per andare a Reggio...nn mi
passa più help!"
amico 4: "mi sa che hai proprio ragione (e io sono al lavoro)"
utente: "@Marta: a Ferrara stava nevicando anche questa mattina, ma le vie principali e
la statale (= Porrettana) almeno le avevano pulite"
amico 4: "qui è tutta la mattina che gli studenti chiamano per chiedere: ma gli esami li fate
anche lo stesso?!" che scarsa fiducia nelle capacità dei dipendenti pubblici di
affrontare le intemperie!
utente: ":-) "
Massimiliano Ghedini Le Relazioni Sociali In Facebook 17/22
18. Analisi dei dati – indicizzazione termini
Massimiliano Ghedini Le Relazioni Sociali In Facebook 18/22
19. Conclusioni 1/3 – lavorare su Facebook
Sviluppare un progetto per FB è:
• interessante, perché è una realtà di livello mondiale, con
regole e strutture dati proprie;
• impegnativo, perché il sistema è soggetto ad aggiornamenti
anche importanti (ultimo caso: la Breaking Change Policy di
Febbraio 2013);
• soddisfacente, perché resta la sensazione di non essere più
solo un utilizzatore.
Massimiliano Ghedini Le Relazioni Sociali In Facebook 19/22
20. Conclusioni 2/3 – lo stato attuale
Al momento, l’applicazione è in produzione, e sta raccogliendo
dati.
Il Database è cresciuto rapidamente, per cui è stato creato un
repository protetto (.htaccess) da cui i ricercatori possono scaricare
i dati in ogni momento.
Per circoscrivere eventuali errori di estrazione da Facebook, sono
stati progettati:
• una procedura di filtraggio dei testi (per prevenire hack di tipo
SQL injection),
• un piano di mantenimento ( + backup periodici del DB),
• un sistema di log delle operazioni.
Massimiliano Ghedini Le Relazioni Sociali In Facebook 20/22
21. Conclusioni 3/3 – sviluppi futuri
Dal punto di vista strutturale,
si potrà migliorare l’affidabilità del sistema:
• ridondandone le componenti hardware,
• effettuando backup e log su una macchina separata.
Dal punto di vista applicativo,
bisognerà risolvere la criticità dell’attrattiva nulla verso l’utente.
• Ora l’applicazione raccoglie dati dell’utente senza dare alcuna
gratificazione in cambio.
• Una maggiore diffusione (Facebook App Center) sarà possibile
solo integrando contenuti come un web game, un quiz di
profiling, oppure un oroscopo.
Massimiliano Ghedini Le Relazioni Sociali In Facebook 21/22
22. LE RELAZIONI SOCIALI IN FACEBOOK.
SVILUPPO DI UN'APPLICAZIONE PER
LA RACCOLTA ED ANALISI DEI DATI
Grazie per l’attenzione.
Massimiliano Ghedini Le Relazioni Sociali In Facebook 22/22