DESARROLLO DE UNA HERRAMIENTA DE PLANIFICACIÓN SOCIAL MEDIA
EN LA BLOGOSFERA ESPAÑOLA
Pablo Aragón Asenjo
Director: Íñigo García Morte
Ponente: Fernando Tricas García
Julio de 2010
ÍNDICE
• INTRODUCCIÓN ContextoObjetivos
• BLOGOSFERA AnálisisConclusiones
• ARQUITECTURA Diseño distribuidoRastreoExtracciónIndexaciónAgrupamiento
• RESULTADO Resultados funcionalesResultados estadísticoConclusionesTrabajo FuturoReconocimientos
INTRODUCCIÓNBLOGOSFERA
ARQUITECTURA RESULTADOS
Contexto: Cierzo Development
CONTEXTOOBJETIVOS
• Marketing online y gestión de la reputación en Internet
Contexto: Cierzo Development
• Marketing online y gestión de la reputación en Internet
• Ubicada en el CEEI de Aragón
• Plataforma SMMART
INTRODUCCIÓNBLOGOSFERA
ARQUITECTURA RESULTADOS
CONTEXTOOBJETIVOS
Contexto: Social Media
CLIENTEPLANIFICACIÓN
BLOGOSFERA
RECUPERACIÓNIDENTIFICACIÓN
MONITORIZACIÓN
1. Adquirir el conocimiento necesario en las tecnologías Amazon EC2, Hadoop, Nutch, Lucene y Solr
INTRODUCCIÓNBLOGOSFERA
ARQUITECTURA RESULTADOS
CONTEXTOOBJETIVOS
Contexto: Objetivos
2. Implementar un sistema de rastreo de la blogosfera española, extracción de entidades de posts e indexación de las mismas
3. Desarrollar un sistema de agrupamiento de posts en conversaciones
ÍNDICE
• INTRODUCCIÓN ContextoObjetivos
• BLOGOSFERA AnálisisConclusiones
• ARQUITECTURA Diseño distribuidoRastreoExtracciónIndexaciónAgrupamiento
• RESULTADO Resultados funcionalesResultados estadísticoConclusionesTrabajo FuturoReconocimientos
INTRODUCCIÓNBLOGOSFERA
ARQUITECTURA RESULTADOS
ANÁLISISCONCLUSIONES
Análisis: Estimaciones de la blogosfera
• Technorati (2007) Más de 112 millones de blogs
• Blogpulse (2009) Más de 126 millones de blogs
• Bitacoras.com (2010) 417371 blogs en español
INTRODUCCIÓNBLOGOSFERA
ARQUITECTURA RESULTADOS
Análisis: 1º Proceso de expansión
ANÁLISISCONCLUSIONES
INTRODUCCIÓNBLOGOSFERA
ARQUITECTURA RESULTADOS
Análisis: 2º Proceso de expansión
ANÁLISISCONCLUSIONES
INTRODUCCIÓNBLOGOSFERA
ARQUITECTURA RESULTADOS
Resultados
ANÁLISISCONCLUSIONES
• Grandes volúmenes de información
• Aparición de nuevos blogs
• Variaciones en la frecuencia de publicación
ÍNDICE
• INTRODUCCIÓN ContextoObjetivos
• BLOGOSFERA AnálisisConclusiones
• ARQUITECTURA Diseño distribuidoRastreoExtracciónIndexaciónAgrupamiento
• RESULTADO Resultados funcionalesResultados estadísticoConclusionesTrabajo FuturoReconocimientos
Amazon EC2 es el servicio de computación en nube
INTRODUCCIÓNBLOGOSFERA
ARQUITECTURA RESULTADOS
DISEÑO DISTRIBUIDORASTREOEXTRACCIÓNINDEXACIÓNAGRUPAMIENTO
Diseño distribuido: Amazon EC2
computación en nube perteneciente a Amazon
Servidores y discos duros configurables
Plataforma escalable de almacenamiento, transferencia y computación bajo demanda
INTRODUCCIÓNBLOGOSFERA
ARQUITECTURA RESULTADOS
Diseño distribuido: MapReduce en Hadoop
DISEÑO DISTRIBUIDORASTREOEXTRACCIÓNINDEXACIÓNAGRUPAMIENTO
Framework de computación a gran escalaFramework de computación a gran escala
• Paradigma de programación MapReduce
• Sistema distribuido de ficheros
INTRODUCCIÓNBLOGOSFERA
ARQUITECTURA RESULTADOS
Diseño distribuido: MapReduce en Hadoop
DISEÑO DISTRIBUIDORASTREOEXTRACCIÓNINDEXACIÓNAGRUPAMIENTO
MAP
Entrada: (k1,v1)Entrada: (k1,v1)Salida: list(k2,v2)
INTRODUCCIÓNBLOGOSFERA
ARQUITECTURA RESULTADOS
Diseño distribuido: MapReduce en Hadoop
DISEÑO DISTRIBUIDORASTREOEXTRACCIÓNINDEXACIÓNAGRUPAMIENTO
MAP
Entrada: (k1,v1)
REDUCE
Entrada: (k2,list(v2)) Salida: list(v3)
Entrada: (k1,v1)Salida: list(k2,v2)
INTRODUCCIÓNBLOGOSFERA
ARQUITECTURA RESULTADOS
Diseño distribuido: Sistema Distribuido de Ficheros de Hadoop
DISEÑO DISTRIBUIDORASTREOEXTRACCIÓNINDEXACIÓNAGRUPAMIENTO
• Hadoop Distributed FileSystem divide los ficheros en fragmentos
• Cada fragmento se replica en varios nodos• Cada fragmento se replica en varios nodos
Diseño distribuido: Argumentos a favor de Hadoop
DISEÑO DISTRIBUIDORASTREOEXTRACCIÓNINDEXACIÓNAGRUPAMIENTO
• Alta tolerancia a fallos
INTRODUCCIÓNBLOGOSFERA
ARQUITECTURA RESULTADOS
• Gestión de memoria
• Coste económico
• Comparación con otras tecnologías
Diseño distribuido: Módulos del sistema
DISEÑO DISTRIBUIDORASTREOEXTRACCIÓNINDEXACIÓNAGRUPAMIENTO
INTRODUCCIÓNBLOGOSFERA
ARQUITECTURA RESULTADOS
DISEÑO DISTRIBUIDORASTREOEXTRACCIÓNINDEXACIÓNAGRUPAMIENTO
INTRODUCCIÓNBLOGOSFERA
ARQUITECTURA RESULTADOS
CrawlDb• URL• Última consulta
Módulo de rastreo: Estructura y flujo de datos
• Última consulta• Estado• Metadatos
Segment
• URL• Contenido HTML• Enlaces salientes
� Filtros positivos y negativos de URLS
Módulo de rastreo: Parámetros de configuración
DISEÑO DISTRIBUIDORASTREOEXTRACCIÓNINDEXACIÓNAGRUPAMIENTO
INTRODUCCIÓNBLOGOSFERA
ARQUITECTURA RESULTADOS
� Identificador del motor
� Retardo entre consultas sucesivas
� Volumen y concurrencia de los threads
1. Distinción entre URLS de blogs y posts
Módulo de rastreo: Factores de rastreo
DISEÑO DISTRIBUIDORASTREOEXTRACCIÓNINDEXACIÓNAGRUPAMIENTO
INTRODUCCIÓNBLOGOSFERA
ARQUITECTURA RESULTADOS
2. Relevancia social del blog
3. Frecuencia de publicación
4. Idioma
� Detector de frecuencias de publicación
� Identificación de la frecuencia de blogs
Módulo de rastreo: Implementaciones sobre Nutch
DISEÑO DISTRIBUIDORASTREOEXTRACCIÓNINDEXACIÓNAGRUPAMIENTO
INTRODUCCIÓNBLOGOSFERA
ARQUITECTURA RESULTADOS
� Mecanismo de expiración de posts
� Detección de idiomas basado en n-gramas
� Inclusión de metainformación en CrawldB
� Lenguaje
� Número de consultas
� Herramientas de gestión de CrawlDb
DISEÑO DISTRIBUIDORASTREOEXTRACCIÓNINDEXACIÓNAGRUPAMIENTO
Módulo de rastreo: Esquema final
INTRODUCCIÓNBLOGOSFERA
ARQUITECTURA RESULTADOS
Módulo de extracción
DISEÑO DISTRIBUIDORASTREOEXTRACCIÓNINDEXACIÓNAGRUPAMIENTO
INTRODUCCIÓNBLOGOSFERA
ARQUITECTURA RESULTADOS
Extracción de las entidades de un post
� XPath
� Densidad de texto en el HTML
Módulo de indexación
DISEÑO DISTRIBUIDORASTREOEXTRACCIÓNINDEXACIÓNAGRUPAMIENTO
� Búsqueda a texto completo
� Ordenación de resultados
INTRODUCCIÓNBLOGOSFERA
ARQUITECTURA RESULTADOS
� Ordenación de resultados
� Lematización de tokens
� Filtrado de palabras frecuentes
� Interfaz web de administración
� Replicación de índices
El módulo de agrupamiento realiza:
1. Tokenización de entidades
Módulo de agrupamiento
DISEÑO DISTRIBUIDORASTREOEXTRACCIÓNINDEXACIÓNAGRUPAMIENTO
INTRODUCCIÓNBLOGOSFERA
ARQUITECTURA RESULTADOS
1. Tokenización de entidades
2. Generación de una matrices de tokens y distancias
3. Algoritmo de clusterización
Los resultados corresponden con las conversaciones que forman los posts
ÍNDICE
• INTRODUCCIÓN ContextoObjetivos
• BLOGOSFERA AnálisisConclusiones
• ARQUITECTURA Diseño distribuidoRastreoExtracciónIndexaciónAgrupamiento
• RESULTADO Resultados funcionalesResultados estadísticoConclusionesTrabajo FuturoReconocimientos
INTRODUCCIÓNBLOGOSFERA
ARQUITECTURA RESULTADOS
Resultados funcionales: Herramienta de planificación
RESULTADOS FUNCIONALESRESULTADOS ESTADÍSTICOSCONCLUSIONESTRABAJO FUTURORECONOCIMIENTOS
La integración del índice de posts, el módulo de agrupamiento y la interfaz web conforma la herramienta de planificación social media
INTRODUCCIÓNBLOGOSFERA
ARQUITECTURA RESULTADOS
Resultados estadísticos: Volumen de posts
RESULTADOS FUNCIONALESRESULTADOS ESTADÍSTICOSCONCLUSIONESTRABAJO FUTURORECONOCIMIENTOS
• Pocos blogs de elevado volumen• Pocos blogs de elevado volumen
• Más blogs con un volumen intermedio
• Muchos blogs de volumen ínfimo
INTRODUCCIÓNBLOGOSFERA
ARQUITECTURA RESULTADOS
Resultados estadísticos: Puntuación de blogs
RESULTADOS FUNCIONALESRESULTADOS ESTADÍSTICOSCONCLUSIONESTRABAJO FUTURORECONOCIMIENTOS
Gráfica análoga a la anterior � El modelo se ajusta a la realidad
INTRODUCCIÓNBLOGOSFERA
ARQUITECTURA RESULTADOS
Resultados estadísticos: Detección de idioma
RESULTADOS FUNCIONALESRESULTADOS ESTADÍSTICOSCONCLUSIONESTRABAJO FUTURORECONOCIMIENTOS
INTRODUCCIÓNBLOGOSFERA
ARQUITECTURA RESULTADOS
Conclusiones
RESULTADOS FUNCIONALESRESULTADOS ESTADÍSTICOSCONCLUSIONESTRABAJO FUTURORECONOCIMIENTOS
1. Implementación de un sistema que cumple los requisitos propuestospropuestos
2. Diseño de una arquitectura con un alto grado de escalabilidad
3. El modelo implementado se ajusta a la realidad de la blogosfera
INTRODUCCIÓNBLOGOSFERA
ARQUITECTURA RESULTADOS
Trabajo futuro
RESULTADOS FUNCIONALESRESULTADOS ESTADÍSTICOSCONCLUSIONESTRABAJO FUTURORECONOCIMIENTOS
1. Utilización de esta arquitectura en nuevos productos
INTRODUCCIÓNBLOGOSFERA
ARQUITECTURA RESULTADOS
Trabajo futuro
RESULTADOS FUNCIONALESRESULTADOS ESTADÍSTICOSCONCLUSIONESTRABAJO FUTURORECONOCIMIENTOS
1. Utilización de este diseño distribuido en nuevos productos
2. Replicación del sistema para otras fuentes del social media
INTRODUCCIÓNBLOGOSFERA
ARQUITECTURA RESULTADOS
Trabajo futuro
RESULTADOS FUNCIONALESRESULTADOS ESTADÍSTICOSCONCLUSIONESTRABAJO FUTURORECONOCIMIENTOS
1. Utilización de este diseño distribuido en nuevos productos
2. Replicación del sistema para otras fuentes del social media
3. Implementación de productos que consumen estas fuentes
INTRODUCCIÓNBLOGOSFERA
ARQUITECTURA RESULTADOS
Reconocimientos
RESULTADOS FUNCIONALESRESULTADOS ESTADÍSTICOSCONCLUSIONESTRABAJO FUTURORECONOCIMIENTOS
Presentación en el Congreso Apache Lucene Eurocon 2010Presentación en el Congreso Apache Lucene Eurocon 2010
Muchas gracias por su atención…