Your SlideShare is downloading. ×
  • Like
  • Save
Design and development of an Online Social Network crawler
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Now you can save presentations on your phone or tablet

Available for both IPhone and Android

Text the download link to your phone

Standard text messaging rates apply

Design and development of an Online Social Network crawler

  • 1,358 views
Published

 

Published in Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads

Views

Total Views
1,358
On SlideShare
0
From Embeds
0
Number of Embeds
2

Actions

Shares
Downloads
0
Comments
0
Likes
2

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n

Transcript

  • 1. Facoltà di Corso di Laurea inIngegneria dell’Informazione Ingegneria Informatica Progettazione e Sviluppo di una Piattaforma Software per la Raccolta di Informazioni da Reti Sociali Online di Feroldi Federico Relatore: Prof. Piero FRATERNALI Anno Accademico 2009 - 2010
  • 2. INTRODUZIONE
  • 3. Cos’è una Rete Sociale?
  • 4. Cos’è una Rete Sociale? u
  • 5. Cos’è una Rete Sociale? u u u u
  • 6. Cos’è una Rete Sociale? u u u u u u
  • 7. Cos’è una Rete Sociale? u u u u uu u u
  • 8. Cos’è una Rete Sociale? u u u u u u u u u u u u u u u u u u u u uuu u u u uuu uu u u u u u u
  • 9. Cos’è una Rete Sociale? u u u u u u u u u u u u u u 150 u u u NUMERO MEDIO DI u u u u uRELAZIONI SOCIALI u u uuu (NUMERO DI DUNBAR) u u uu u u u u u u
  • 10. Reti Sociali Online
  • 11. Reti Sociali Online
  • 12. Reti Sociali Online
  • 13. Reti Sociali Online 400 NUMERO MEDIO DI RELAZIONI SOCIALI SU FACEBOOK
  • 14. Influenza
  • 15. Influenza
  • 16. Reputazione
  • 17. Reputazione
  • 18. Interessi
  • 19. Interessi
  • 20. Filtraggio Sociale: Cascaad
  • 21. Filtraggio Sociale: Cascaad
  • 22. Architettura di Cascaad
  • 23. Architettura di Cascaad
  • 24. Architettura di Cascaad RACCOLTA
  • 25. Architettura di Cascaad RACCOLTA relazioni ANALISI
  • 26. Architettura di Cascaad RACCOLTA relazioniflu ss o ANALISI ag gr eg at o caratteristiche FILTRO flusso filtrato u
  • 27. Architettura di Cascaad RACCOLTA RACCOLTA relazioniflu ss o ANALISI ag gr eg at o caratteristiche FILTRO flusso filtrato u
  • 28. Raccolta dati: il Web Crawler
  • 29. Raccolta dati: il Web Crawler“È un software che analizza icontenuti di una rete in modo metodico e automatizzato.” - Wikipedia
  • 30. ANALISI
  • 31. Prototipo Sperimentale
  • 32. Prototipo SperimentaleIntegrazione?
  • 33. Prototipo SperimentaleIntegrazione?Architettura?
  • 34. Prototipo SperimentaleIntegrazione?Architettura?Criticità?
  • 35. Twitter: Problematiche Emerse
  • 36. Twitter: Problematiche Emerse Request Rate Limitato
  • 37. Twitter: Problematiche Emerse Request Rate Limitato Singolo Crawler = Bottleneck
  • 38. Twitter: Problematiche Emerse Request Rate Limitato Singolo Crawler = Bottleneck Scalabilità su milioni di utenti
  • 39. IL PROGETTO
  • 40. Principi di Progettazione
  • 41. Principi di ProgettazioneScalabilità
  • 42. Principi di ProgettazioneScalabilitàFlessibilità
  • 43. Principi di ProgettazioneScalabilitàFlessibilitàModularità
  • 44. Principi di ProgettazioneScalabilitàFlessibilitàModularitàEstensibilità
  • 45. Tecnologie
  • 46. Tecnologie
  • 47. Tecnologie
  • 48. Tecnologie
  • 49. Layer Applicativi
  • 50. Layer ApplicativiJVM JVM JVM
  • 51. Layer ApplicativiSPRING SPRING SPRING JVM JVM JVM
  • 52. Layer Applicativi MULE ESBSPRING SPRING SPRING JVM JVM JVM
  • 53. Layer Applicativi CRAWLING FRAMEWORK MULE ESBSPRING SPRING SPRING JVM JVM JVM
  • 54. Layer ApplicativiTWITTER FACEBOOK ... CRAWLING FRAMEWORK MULE ESBSPRING SPRING SPRING JVM JVM JVM
  • 55. Architettura del Framework
  • 56. Architettura del Frameworkcrawling job SPIDER
  • 57. Architettura del Frameworkcrawling job SPIDER requests SCHEDULER
  • 58. Architettura del Frameworkcrawling job SPIDER requests SCHEDULER requests DOWNLOADER
  • 59. Architettura del Frameworkcrawling job SPIDER requests data SCHEDULER requests DOWNLOADER
  • 60. Architettura del Frameworkcrawling job SPIDER requests data SCHEDULER requests DOWNLOADER
  • 61. Architettura del Frameworkcrawling job SPIDER requests results data SCHEDULER requests DOWNLOADER PROCESSOR
  • 62. Architettura del Frameworkcrawling job SPIDER requests results data SCHEDULER requests DOWNLOADER PROCESSOR processed results
  • 63. Caratteristiche: Modularitàcrawling job SPIDER requests results data SCHEDULER requests DOWNLOADER PROCESSOR processed results
  • 64. Caratteristiche: Scalabilitàcrawling job SPIDER requests results data SCHEDULER requests DOWNLOADER PROCESSOR processed results
  • 65. Caratteristiche: Scalabilitàcrawling job SPIDER SPIDER SPIDER requests results data SCHEDULER requests DOWNLOADER DOWNLOADER DOWNLOADER PROCESSOR processed results
  • 66. Caratteristiche: Flessibilitàcrawling job SPIDER requests results data SCHEDULER requests DOWNLOADER PROCESSOR processed results
  • 67. Caratteristiche: Flessibilitàcrawling job SPIDER requests results data SCHEDULER requests DOWNLOADER PROCESSOR processed results
  • 68. Caratteristiche: Estensibilitàcrawling job SPIDER requests results data SCHEDULER requests DOWNLOADER PROCESSOR processed results
  • 69. Caratteristiche: Estensibilitàcrawling job SPIDER requests results data Duplicate Filter requests SCHEDULER DOWNLOADER PROCESSOR processed results
  • 70. Soluzioni TecnicheProtocollo di Autenticazione SPIDER DOWNLOADER
  • 71. Soluzioni TecnicheDeduplicazione a TempoSPIDER SCHEDULERRequests Requests Requests Requests Request Today 1 Day Ago 2 Days Ago 3 Days Ago 4 Days Ago FIFO queue made of Bloom Filters
  • 72. RISULTATI
  • 73. Twitter “Followers” Crawler
  • 74. Twitter “Followers” Crawler
  • 75. Ruolo del Framework
  • 76. Ruolo del Framework Twitter Specific 10% Generic Framework 90% 3 Giorni/Uomo Tempo di Sviluppo
  • 77. Raccolta dati da Twitter 1 Million Users/Day Crawling Rate (single node)
  • 78. Cloud DeploymentScheduler Spider Module Modules EC2Processor Downloader Module Modules
  • 79. Running Live
  • 80. Running Live
  • 81. Running LiveSorgenti informative selezionate per livello di INFLUENZA, REPUTAZIONE e affinità di INTERESSI con il lettore.
  • 82. Considerazioni Finali
  • 83. Considerazioni FinaliOpen Source = Vantaggio
  • 84. Considerazioni FinaliOpen Source = VantaggioFramework = Flessibilità
  • 85. Considerazioni FinaliOpen Source = VantaggioFramework = FlessibilitàAspetti Legali ed Etici
  • 86. Grazie