Tarântula Sistema de Recolha de Documentos na Web por Daniel Coelho Gomes Apresentação de estágio • • • • Contexto Tarântula Aplicações Conclusões e trabalho futuro Instituição de acolhimento • LaSIGE - Laboratório de Sistemas Informáticos de Grande Escala – é uma unidade de investigação do DI da FCUL – diferentes grupos – diferentes áreas de trabalho • XLDB - research group – sistemas de informação com ênfase para a gestão em grande escala de dados distribuídos na Internet Motivação • Vulgarização da utilização da Internet – – – – Mais utilizadores Mais publicadores Mais documentos online Mais informação disponível • Maior “fonte de informação” do mundo, praticamente inexplorada face às suas potencialidades. Como tirar proveito de toda esta informação disponível? • Criação de novos sistemas direccionados para a Web – Motores de busca • gerais • especializados – Recuperação de Informação (IR) – Prospecção de Dados (Data Mining) Para processar a informação disponível na WWW, as aplicações necessitam de recolher conteúdos de forma sistemática. Tarântula • Modulo de recolha de conteúdos online – Integrável – Configurável – Escalável Sistemas de Recolha • Crawler, spider, robot, wanderer, worm, etc. • Funcionamento conceptualmente simples – recolha iterativa de conteúdos, a partir de URLs • Complexidade variante consoante a aplicação • Pouca documentação Requisitos de um crawler • Robusto à “anarquia” da Web – HTML mal formado – servidores “em baixo” ou muito lentos • Regras de “bom comportamento” – REP – Não sobrecarregar servidores Web • Monitorização e controlo de acções Casos de uso do Tarântula Arquitectura Web Site Web Site Web Site Documento Tarântula Coordenador Monitor de Tarefas Extractor de URLS Coleccionador Configurações de recolha Interface de Configuração e Gestão Dados de Configuração das Recolhas Interpretador do Protocolo de Exclusão Dados de Execução Documento Sistema de ficheiros Modelo de Dados Tecnologias Dados de Configuração e Dados de Execução: SQL e PostgreSQL. Interface de Configuração e Gestão: HTML, Java Servlets. Monitor de Tarefas: class Java, que estabelece uma ligação JDBC com o PostgreSQL. Interpretador do Protocolo de Exclusão, Extractor de URLs e Conversor de Links : analisadores léxicos escritos em Java. Coordenador e Coleccionador: aplicações multi-threaded desenvolvidas em Java. Aplicações • DROP – Biblioteca Nacional – Recolha, armazenamento e consulta de publicações online – Cópias fieis dos originais • TUMBA – Motor de busca da Web Portuguesa – Grande quantidade de docs num intervalo de tempo relativamente curto Exemplo • Configuração – – – – 126 publicações online restrito ao servidor base profundidade máxima = 3 todos os tipos de documento Caracterização das publicações online Portuguesas • • • • bem cuidadas (HTTP 404: 4%) documentos pequenos (2 a 32 KB) tipos facilmente tratáveis (gif, html, jpeg) acessíveis a robots (REP: 1 servidor) Conclusões • Integração e configuração fácil • “Bem comportado” • Ponto de congestão – PostgreSQL • Capacidade de recolha insuficiente para recolhas em grande escala (73 docs/seg) • Escalabilidade? – expansão do sistema com mais Coleccionadores – distribuição de componentes por diversas máquinas Trabalho futuro • Escalabilidade à dimensão da Web Portuguesa – Resolução dos pontos de congestão – Arquitectura distribuída • Colaboração com um repositório de dados • Novas funcionalidades – detector de idioma – informação para ranking dos documentos FIM