Programação Paralela em Arquiteturas Multi-Core/Aplicações Internet: diferenças entre revisões

Origem: Wikilivros, livros abertos por um mundo aberto.
[edição não verificada][edição não verificada]
Conteúdo apagado Conteúdo adicionado
Linha 42: Linha 42:
Uma outra aplicação interessante do paralelismo na internet é na construção de web crawlers [http://en.wikipedia.org/wiki/Web_crawler]. Um crawler é um programa que coleta e armazena páginas da internet, sendo muito utilizados em máquinas de busca.
Uma outra aplicação interessante do paralelismo na internet é na construção de web crawlers [http://en.wikipedia.org/wiki/Web_crawler]. Um crawler é um programa que coleta e armazena páginas da internet, sendo muito utilizados em máquinas de busca.


Um crawler geralmente começa a funcionar a partir de um conjunto inicial de [[Wikipedia:|URL]]s, <math>S_{O}</math>, armazenadas numa fila. Partindo do conjunto inicial, o crawler pega alguma URL, em alguma ordem pré-definida, coleta a página, extrai novas URLs encontradas a partir da página coletada, e insere essas novas URLs na fila. O processo se repete até que o crawler decide parar. As páginas coletas podem ser utilizadas para aplicações como em máquinas de busca, em web [[Wikipedia:|cache]] ou em estudos científicos, por exemplo.
Um crawler geralmente começa a funcionar a partir de um conjunto inicial de URLs [http://en.wikipedia.org/wiki/Uniform_Resource_Locator], <math>S_{O}</math>, armazenadas numa fila. Partindo do conjunto inicial, o crawler pega alguma URL, em alguma ordem pré-definida, coleta a página, extrai novas URLs encontradas a partir da página coletada, e insere essas novas URLs na fila. O processo se repete até que o crawler decide parar. As páginas coletas podem ser utilizadas para aplicações como em máquinas de busca, em web [[Wikipedia:|cache]] ou em estudos científicos, por exemplo.


Com a expansão diária do tamanho da web, fica cada vez mais difícil coletar toda ou uma significante parte da web em um só processo. Então, a paralelização dos web crawlers se tornam uma medida essencial para maximizar a taxa de coleta dos dados.
Com a expansão diária do tamanho da web, fica cada vez mais difícil coletar toda ou uma significante parte da web em um só processo. Então, a paralelização dos web crawlers se tornam uma medida essencial para maximizar a taxa de coleta dos dados.

A construção de web crawlers paralelos tem muitas vantagens mas trás também alguns problemas e desafios interessantes. Entre eles, podemos citar:

* Sobreposição: com muitos processos rodando em paralelo para coletar páginas, é possível que diferentes processos coletem uma mesma página múltiplas vezes.

* Qualidade: geralmente é mais interessante coletar as páginas mais "importantes" primeiro, a fim de maximizar a "qualidade dos dados coletados"


== Conclusão ==
== Conclusão ==

Revisão das 02h00min de 13 de dezembro de 2007


Este capítulo se encontra em construção    -   Previsão de Conclusão: 14/12   Progresso:


Introdução

Uma breve história e introdução sobre a necessidade de aplicações paralelas na internet e sobre o capítulo.

Aplicações para infra-estrutura

  • Servidores
  • Banco de Dados
  • Gerenciamento de tráfego
  • Protocolos paralelos

Aplicações distribuídas

  • Grid
  • P2P

Programação paralela na web

  • Ambientes de programação
  • Bibliotecas de programação
  • Linguagens de programação
    • PHP
    • Java
  • Tecnologias
    • AJAX
    • CGI

Outras aplicações

Web Crawlers

Uma outra aplicação interessante do paralelismo na internet é na construção de web crawlers [1]. Um crawler é um programa que coleta e armazena páginas da internet, sendo muito utilizados em máquinas de busca.

Um crawler geralmente começa a funcionar a partir de um conjunto inicial de URLs [2], , armazenadas numa fila. Partindo do conjunto inicial, o crawler pega alguma URL, em alguma ordem pré-definida, coleta a página, extrai novas URLs encontradas a partir da página coletada, e insere essas novas URLs na fila. O processo se repete até que o crawler decide parar. As páginas coletas podem ser utilizadas para aplicações como em máquinas de busca, em web cache ou em estudos científicos, por exemplo.

Com a expansão diária do tamanho da web, fica cada vez mais difícil coletar toda ou uma significante parte da web em um só processo. Então, a paralelização dos web crawlers se tornam uma medida essencial para maximizar a taxa de coleta dos dados.

A construção de web crawlers paralelos tem muitas vantagens mas trás também alguns problemas e desafios interessantes. Entre eles, podemos citar:

  • Sobreposição: com muitos processos rodando em paralelo para coletar páginas, é possível que diferentes processos coletem uma mesma página múltiplas vezes.
  • Qualidade: geralmente é mais interessante coletar as páginas mais "importantes" primeiro, a fim de maximizar a "qualidade dos dados coletados"

Conclusão

Referências