adriano melo amora albuquerque anália lima eduardo pires ivan frança
Post on 21-Apr-2015
104 Views
Preview:
TRANSCRIPT
Sistemas de RI na WebAdriano MeloAmora AlbuquerqueAnália LimaEduardo PiresIvan França
Roteiro
Introdução
Objetivos
Entendendo a Web
Arquiteturas
Técnicas
Estratégia de Busca
Crawlers
Browsing
Metabuscas
Conclusão
A Web
Pode ser vista como uma grande base de dados não estruturada e ubíqua
Surge a necessidade de ferramentas para gerenciar, buscar e filtrar informações
Formas de busca na Web
Engenhos de busca
Diretórios de sites
Exploração de hyperlinks
+1.000.000.000 de buscas
são realizadas por dia
Google data, September 2010
+1.000.000.000 de pessoas
usam o google a cada semana
Google data, September 2010
20% das buscasfeitas nos últimos 90 dias nunca tinham sido feitas
antes
Google Internal Data, April 2010
10 bilhões de imagensestão indexadas no Google Images*
(eram 250 milhões em 2001)
* TechCrunch, July 2010
115.000 filmesé a equivalência do total de uploads de vídeos
feitos no YouTube por mês
700 bilhõesde execuções de vídeos foram realizadas no
YouTube em 2010
2.9 bilhões de horas
são gastas por mês vendo os vídeos do YouTube
quem tem acesso a esse conteúdo?
todo mundo! (exceto os vídeos do YouTube)
600 milhões de pessoas
estão cadastradas no facebook*
(250 milhões entraram em 2010)
* Fim de 2010
9.3 bilhões de horas
são gastas por mês nas páginas do site
30 bilhões de documentos
como links e notícias são compartilhados a cada
mês no facebook
Quem tem acesso a esse conteúdo?
bind e os usuários do facebook
Desafios
Grande quantidade de dados
Dados voláteis (mudam muito rápido)
Acesso ao conteúdo produzido em redes sociais
Conteúdo heterogêneo (multimídia, linguagem)
Informações redundantes e não estruturadas
Entendendo a Web
Caracterização da WEB
Mensurando a WEB
Organização atual da WEB
•Arquiteturas
Mensurando a WEB
Qual o número de
computadores conectados a
internet?
500 milhões de hosts, em
mais de 200 países.
Mensurando a WEB
Mensurando a WEB
Mensurando a WEB
Qual o número de websites na internet?
•O Netcraft roda desde agosto de 1995
• Em maio de 2011 foram recebidas respostas de
mais de 324 milhões websites.
Organização atual da WEB
WEB é uma coleção não controlada de documentos.
• Inserção de documentos
• Formato dos documentos
Engenhos de busca
• Recuperar informações na WEB
• Permitir a consulta por usuários
Engenhos de Busca
Arquitetura
• Centralizada
• Usa crawlers(rastreadores)
•Distribuída
• A busca é realizada utilizando um esforço de coordenação
entre vários gatherers e brokers
Arquitetura Centralizada
Arquitetura Centralizada
Crawlers (robots, spiders, wanderers)
• Buscam páginas na WEB
• Enviam para um servidor principal
• Roda em um sistema local
• Envia requisições servidores web remotos
Arquitetura Centralizada
Indexer
• Cada página baixada é processada localmente
•A informação indexada é salva e a página é
descartada
• Exceção: alguns sites de busca mantêm um cachê
local algumas cópias das páginas mais populares
Arquitetura Centralizada
Principais dificuldades
• Recolha dos dados
• Natureza dinâmica da WEB
• Volume de dados
• Sobrecarga nos servidores web
• Requisições de diferentes crawlers
• Tráfego na WEB
• Objetos recolhidos pelos crawlers
• Informações recolhidas independentemente
• Sem coordenação
Arquitetura Distribuída
Novos elementos
•Gatheres (recolhedores)
• Brokers
Arquitetura Distribuída
Gatherers (recolhedores)
• Coletar e extrair informações de um ou mais
servidores WEB
• Tempos de coletas são periódicos
• definidos pelo sistema
Arquitetura Distribuída
Brokers
•Obtém informações extraídas pelo Gatherer
• Recuperam informações de Brokers
•Mecanismo de indexação
• Atualizando índices
• Interface de consulta
Arquitetura Distribuída
Vantagens
• Redução na carga dos servidores web
• Gatherers podem rodar em um servidor web sem gerar tráfego
externo
• Redução no tráfego da rede
• Arquitetura centralizada retém todo os documentos, enquanto que a
arquitetura distribuída move apenas o que é extraído pelos Gatherers
• Evita trabalho redundante
• Um gatherer envia informações para vários brokers, reduzindo
repetição do trabalho
Ranking na Web
Base dos algoritmos mais utilizados
Considerar a relevância de web pages por meio dos links
Incomming links
Outgoing Links
Conceitos Básicos
Uma página da web valiosa e informativa é geralmente apontado por um grande número
de hiperlinks, ou seja, ele tem um grande indegree (“grau de entrada”) .
Essa página é chamada um “authority”
Uma página da Web que aponta
para muitas páginas “authority”
é um recurso útil e é chamado de “hub”.
Um “hub” tem geralmente uma grande outdegree (“grau de saída”).
LINK ANALYSIS: HUBS AND AUTHORITIES ON THE WORLD WIDE WEB
[CHRIS H.Q. DING, HONGYUAN ZHA , XIAOFENG HE , PARRY HUSBANDS , ANDHORST D. SIMON]
Hypertext Induced Topic Selection (HITS)
O algoritmo foi criado por Jon Kleinberg
Precursor do Page Rank, utilizado pelo Google.
O algoritmo atribui pontuações de importância para os hubs e
authorities seguindo este conceito:
Uma boa authority deve ser apontada por vários bons hubs e um bom
hub deve apontar para várias boas authorities.
Determinar subgrafo (S) composto pelo conjunto de páginas retornadas em
uma busca e páginas que apontam e são apontadas por páginas deste
conjunto.
Realizar várias iterações para determinar um “valor hub” e um “valor
authority” para cada página do subgrafo. Esses valores são normalizados.
O algoritmo aplica iterações até que pesos de hub e authority cheguem a
convergir, isto é, até que estes pesos não variem acima de um valor pré-
determinado.
Hypertext Induced Topic Selection (HITS)
Todo este processamento, que leva cerca
de alguns minutos, é realizado no momento
da consulta. Por esta razão o HITS não atende
ao requisito de tempo imposto pelos engenhos
de busca comerciais, que é de poucos segundos.
Algumas extensões do algoritmo HITS que adicionaram análise de conteúdo à análise
puramente estrutural foram desenvolvidas pelo projeto CLEVER da IBM.
Combinando Informações Textuais e Estruturais na Recuperação de Documentos Web.
[Roberta de Souza Coelho, Marcelo Nery dos Santos,Silvio Romero Lemos Meira]
Hypertext Induced Topic Selection (HITS)
PageRank
PageRank™ é uma família de algoritmos de análise de rede que dá pesos
numéricos a cada elemento de uma coleção de documentos hiperligados, como as
páginas da Internet, com o propósito de medir a sua importância nesse grupo por
meio de um motor de busca.
O processo do PageRank™
foi patenteado pela
Universidade de Stanford.
Somente o nome PageRank™ é uma marca registrada do Google.
PageRank e Google O sistema PageRank é usado pelo motor de busca Google para ajudar a determinar a
relevância ou importância de uma página.
O Google mantém uma lista de bilhões de páginas em ordem de importância, isto é, cada
página tem sua importância na Internet como um todo.
A importância se dá pelo número de votos que uma página recebe. Um voto é um link
em qualquer lugar da Internet para aquela página.
Os votos de páginas de alta popularidade na Web contam mais do que os votos de sites
de baixa popularidade.
Quanto mais links uma página de Web oferece, mais diluído seu poder de votação.
Uma boa unidade de medida para definir o PageRank™ de uma página pode ser a
percentagem (%) de páginas que ela é mais importante.
O PageRank faz uma avaliação objetiva da importância de páginas da
web, resolvendo uma equação de mais de 500 milhões de variáveis e 2
bilhões de termos.
O mecanismo de pesquisa do Google
também analisa o conteúdo completo
de uma página e os fatores em fontes,
subdivisões e a localização exata de
cada palavra.
PageRank e Google
Quais os sites com maior PageRank?
O website Search
Engine Genie
atualizou sua lista
dos websites com
maior PageRank e
tornou a informação
pública no dia 20 de
janeiro de 2011.
Google Caffeine
Exibe taxa maior de resultados mais recentes devido sua atualização mais
constante.
Ocupa cerca de 100 milhões de
gigabytes de armazenamento
em um banco de dados e
adiciona novas informações
auma taxa de centenas de
milhares de gigabytes
por dia.
Google Vídeo – Como Google funciona
http://www.google.com/howgoogleworks/
É possível manipular o PageRank™ atribuindo links descontextualizados com o objetivo da
página, modificando a ordenação de resultados na pesquisa pelo Google e induzindo a
resultados pouco relevantes ou tendenciosos.
Googlebombing
failure ou miserable failure: retornava biografia oficial da Casa Branca para o presidente dos
EUA, George W. Bush e em sequência a página de Michael Moore, inimigo declarado do
presidente dos EUA.
CrawlersSPIDERS, BOTS, etc.
Crawlers
Coleta automática e sistemática de documentos da
Web a serem indexados e consultados pela máquina
de busca
Crawlers
Como funcionam?
Crawlers
Estratégias de busca:
• Em Profundidade - Resulta em uma coleta “focada”,
pois o crawler caminha por todo um determinado
site antes de ir para o próximo. Pode-se limitar o
número de níveis.
Crawlers
Estratégias de busca:
• Em Largura com sufixo de URL - Exemplo:
*.terra.com.br. Garante cobertura balanceada entre
sites. Técnica bastante utilizada.
Crawlers
Estratégias baseadas em conectividade
•Referências (Backlink count) - Quanto mais links
apontando para uma página maior a "importância"
dela.
•Variações recursivas - Links vindos de páginas com
maior "importância" tem maior peso. Esta é a
técnica usada pelo algoritmo PageRank™.
Crawlers
Arquitetura
Crawlers
Componentes
Crawlers
Coletores
• Responsáveis pela requisição de páginas aos servidores HTTP
• Extraem os links das páginas recebidas e enviam ao
escalonador
• Requisitam do escalonador uma ou mais URLs a serem
coletadas
• Podem realizar um escalonamento local (short term
scheduling)
Crawlers
Servidor de Nomes
•Atendem requisições DNS dos coletores
•Mantêm um cache de identificadores DNS (nomes)
resolvidos
• Crucial para evitar que cada coletor faça requisições
DNS remotas
Crawlers
Servidor de Armazenamento
• Recebem as páginas ou outros objetos coletados e
armazenam em uma base local
• Fazem a extração (parsing) de texto
• Podem tratar vários formatos: Postscript, PDF,
Word, Powerpoint, etc.
Crawlers
Escalonador
• Responsável por decidir qual a próxima URL a ser coletada
• Coordena as ações dos coletores
• Estratégias de busca (LIFO, FIFO, PageRank)
• Deve garantir:
• Protocolo de exclusão
Robots.txt
Retardo mínimo entre requisições a um mesmo servidor HTTP.
• Não haverão coletas repetidas
Crawlers
Qual a melhor estratégia de escalonamento?
• Coletar k páginas com vários tipos de escalonamento
(Randômico, FIFO, backlink e PageRank)
• Critérios de avaliação: Freqüência de termos, Backlink,
PageRank, tipo de URLs
• Resultado:
• 179.000 páginas do domínio stanford.edu
• Estratégia baseada em PageRank é a melhor
• Estratégia baseada em FIFO é boa
Crawlers
Qual a melhor estratégia de escalonamento?
• Usando somente PageRank como métrica
• Resultado
• Estratégia FIFO descobre páginas com alto PageRank
primeiro
• Conclusão
• Máquinas com ranking baseado em conectividade
devem coletar em FIFO
Restrições
Crawlers
Protocolo de exclusão
• Recomendação informal
• Restrições de acesso
•Delay mínimo entre requisições a um mesmo
servidor
Crawlers
Robots.txt
• Regras de restrição para navegação automática
• Está sempre na URL raiz e deve ser consultado antes
• Obediência não é obrigatória
• http://www.robotstxt.org/db.html
User-agent: * Disallow: /cgi-bin/ Disallow: /tmp/ Disallow: /junk/
Robots.txt
Recomendações
Crawlers
Respeitar retardo mínimo entre requisições em um
mesmo servidor HTTP
Usar header “User-Agent”
•Nome do robô, e-mail, responsável, instituição, etc
Evitar horários de tráfego intenso
Limitar o número de páginas coletadas em sites
grandes
Crawlers
Não coletar tipos de dados não-indexáveis
• JPG, EXE, …
Cuidado com links relativos
• <a href=“../../../material/”>Clique aqui</a>
Cuidado com Buracos Negros (Spider Traps)
• Páginas que “prendem” o crawler num loop infinito
• Links como: http://foo.com/bar/foo/bar/foo/bar/foo/bar/....
• Páginas dinâmicas que geram número infinito de páginas (Ex:
calendários)
Browsing
Recapitulando...
Estratégia de Busca
Termos de Busca
Termos do sistema
Browsing
“A arte de não saber o que se quer até que se encontre”
Contraste da busca direta
Browsing
Atividade não orientada, não programada, não sistemática, informal e casual
Níveis de atenção:- Ao acaso
- Quase ao acaso- Semideterminado
Browsing
Atividade não orientada, não programada, não sistemática, informal e casual
Essencialmente visual
Acesso direto, sem mediador
Browsing
Browsing Navegação
Contexto físicoPonto de destino
Mas no contexto virtual, significam a mesma coisa
Diretórios Web
Ferramentas baseadas em browsing
Pesquisas retornadas são relevantes
Cobertura relativamente pequena
Classifica o conhecimento humano
Meta Buscadores
Nem todas as páginas da web estão em todos os engenhos de busca
Meta Buscadores
Combinação de resultados de diversas fontes
Ordenação por diferentes atributos
Navegação mais simples
Diminuição da precisão
Busca usando hyperlinks
Inclui:
Linguagens de consulta webBusca dinâmica
Diminui a performance
Linguagens de consulta web:
•A pesquisa pode incluir link entre as páginas
•O modelo de grafos é o mais utilizado para essa representação
Busca usando hyperlinks
Linguagens de consulta web:
• Nós: Páginas web• Arestas: Hyperlink• Modelo de semi-estrutura: Conteúdo
Por que usar esse tipo de busca?
• Combinação de estrutura com conteúdo;• É possível extrair e integrar o conteúdo das páginas;• Construir e restruturar sites.
Busca usando hyperlink
Busca dinâmica:
Busca online para descobrir informações relevantes dentre os links que foram retornados na busca.
Abordagem lenta pra toda web, mas prática pra um subconjunto específico
Heurística:
Documentos relevantes geralmente têm vizinhos que também são relevantes
Busca usando hyperlinks
Busca dinâmica:
Algoritmo
Dada uma query, para cada passo:• Analisar a página com mais alta prioridade;• Se a página for relevante, a heurística decide
seguir ou não os links dessa página;• Se decidir que sim, novas páginas serão
adicionadas à lista.
Tendências e Questões de Pesquisa
Modelagem: Adaptação às necessidades da Web;Melhores paradigmas e melhores filtros de informaçãoConsulta: Melhorar a combinação entre estrutura e conteúdo;Processamento de linguagem natural
Arquiteturas Distribuídas: Lidar com o crescimento da quantidade de informação na web;Qual será o gargalo no futuro? Capacidade dos servidores ou largura de banda?
Tendências e Questões de Pesquisa
Ranking: Melhores esquemas de ranking;Exploração tanto no conteúdo como na estrutura;The search engine persuasion problem
Indexação: Qual a melhor visão lógica para um texto?O que deve ser indexado?
Desafios
Mapear e indexar toda a Web
SEO: Search Engine Optimization
Rastrear e indexar aplicações Web 2.0
•Making AJAX Applications Crawlable
• http://code.google.com/intl/pt-BR/web/ajaxcraw
ling/index.html
SEO - Search Engine Optimization
Hoje em dia cerca de 85% do tráfego na Internet inicia-se com uma pesquisa
num motor de busca como o Google, o Yahoo ou o Bing
Conjunto de técnicas que otimizam os web sites, tornando-os mais aptos a
estarem bem colocados nas pesquisas efetuadas pelos potenciais visitantes.
São baseados naquilo que os buscadores levam em conta no momento da
busca.
SEO – Exemplos de fatores considerados
Tempo de registro do domínio (Idade do domínio)
Freqüência do conteúdo: regularidade com a qual novo conteúdo é adicionado
Originalidade do conteúdo
Quantidade de links externos
Relevância do site que linka para o seu website
Citações e fontes de pesquisa (indica que o conteúdo
é de qualidade para pesquisa)
Links "quebrados“
Conteúdo inseguro ou ilegal
Qualidade da codificação HTML, presença de erros no código
Dúvidas
Referências http://www.apcwebconcept.com/Servicos?_Locale=pt&ID=f7dd7229-c6e1-4a3a-86ac-f3f21f1054de
http://googleblog.blogspot.com/2010/06/our-new-search-index-caffeine.html
http://ranger.uta.edu/~chqding/papers/hits5.pdf
http://www.dimap.ufrn.br/~roberta/publicacoes/rita_magazine.pdf
http://www.mestreseo.com.br/pagerank/o-que-e-pagerank
http://www.google.com/corporate/tech.html
http://informatica.hsw.uol.com.br/algoritmo-google1.htm
[1]http://www.google.com/url?sa=t&source=web&cd=1&ved=0CBYQFjAA&url=http%3A%2F%2Fwww.di.ufpe.br
%2F~sfd%2Funiverso%2Finternet%2Frec_web.doc&ei=HqrKTaf7Gcuftgeso7T6Bw&usg=AFQjCNG14humR3V6o6-
TJ4GaO2DrOpdWyw&sig2=QCfp65iffOmVmj-nHH6tRg
[2] http://www.cetic.br/hosts/2011/index.htm
[3]http://news.netcraft.com/archives/category/web-server-survey/
http://www.google.co.uk/intl/en/landing/internetstats/
top related