YaCy - YaCy
Autor (es) original (is) | Michael Christen |
---|---|
Desenvolvedor (s) | Comunidade YaCy |
lançamento inicial | 2003 |
Versão estável | 1.922 / 14 de outubro de 2019
|
Repositório | github |
Escrito em | Java |
Sistema operacional | Plataforma cruzada |
Modelo | Rede de sobreposição , mecanismo de pesquisa |
Licença | GPL-2.0 ou posterior |
Local na rede Internet | yacy |
YaCy (pronuncia-se "ya see") é um mecanismo de busca distribuído gratuitamente , baseado em princípios deredes ponto a ponto (P2P). Seu núcleo é um programa de computador escrito em Java distribuído em várias centenas de computadores, desde setembro de 2006, os chamados YaCy-peers. Cada par do YaCy rastreia independentemente pela Internet, analisa e indexa as páginas da web encontradas e armazena os resultados da indexação em um banco de dados comum (denominado índice) que é compartilhado com outros pares do YaCy usando os princípios das redes P2P. É um mecanismo de busca que todos podem usar para construir um portal de busca para sua intranet e para ajudar a pesquisar a Internet pública de forma clara.
Comparado aos motores de busca semidistribuídos, a rede YaCy tem uma arquitetura descentralizada. Todos os pares do YaCy são iguais e não existe um servidor central . Ele pode ser executado em modo de rastreamento ou como um servidor proxy local , indexando páginas da Web visitadas pela pessoa que está executando o YaCy em seu computador. (Vários mecanismos são fornecidos para proteger a privacidade do usuário). O acesso às funções de pesquisa é feito por um servidor da web executado localmente, que fornece uma caixa de pesquisa para inserir os termos de pesquisa e retorna os resultados da pesquisa em um formato semelhante a outros mecanismos de pesquisa populares.
YaCy foi criado em 2003 por Michael Christen.
Componentes do sistema
O mecanismo de pesquisa YaCy é baseado em quatro elementos:
- rastejante
- Um robô de busca que percorre páginas da web, analisando seu conteúdo.
- Indexador
- Cria um índice de palavra reversa (RWI), ou seja, cada palavra do RWI tem sua lista de URLs relevantes e informações de classificação. As palavras são salvas na forma de hashes de palavras.
- Interface de pesquisa e administração
- Feito como uma interface da web fornecida por um servlet HTTP local com mecanismo de servlet.
- Armazenamento de dados
- Usado para armazenar o banco de dados de índice de palavra reversa utilizando uma tabela hash distribuída .
Tecnologia de mecanismo de pesquisa
- YaCy é um appliance completo com interface de usuário, índice, administração e monitoramento.
- O YaCy coleta páginas da web com um rastreador da web. Os documentos são então analisados, indexados e o índice de pesquisa é armazenado localmente. Se seu par fizer parte de uma rede de mesmo nível, seu índice de pesquisa local também será incorporado ao índice compartilhado dessa rede.
- Uma pesquisa é iniciada e o índice local contribui junto com um índice de pesquisa global de pares na rede de pesquisa YaCy.
- O YaCy Grid é uma implementação de segunda geração da pesquisa ponto a ponto YaCy. Uma instalação do YaCy Grid consiste em microsserviços que se comunicam usando o MCP.
- O YaCy Parser é um microsserviço que pode ser implantado usando o Docker . Quando o componente do analisador é iniciado, ele procura um MCP e se conecta a ele. Por padrão, o host local é procurado por um MCP, mas você mesmo pode configurar um.
Arquitetura da plataforma YaCy
YaCy usa uma combinação de técnicas para a rede, administração e manutenção de indexação do mecanismo de pesquisa, incluindo lista negra, moderação e comunicação com a comunidade. Aqui está como YaCy executa essas operações:
- Componentes da comunidade
- Fórum da web
- Estatisticas
- API XML
- Manutenção
- Servidor web
- Indexando
- Crawler com Balancer
- Comunicação de servidor ponto a ponto
- Organização de conteúdo
- Lista negra e filtragem
- Interface de pesquisa
- Favoritos
- Monitorando os resultados da pesquisa
Distribuição
YaCy está disponível em pacotes para Linux, Windows, Macintosh e também como uma imagem Docker. O YaCy também pode ser instalado em qualquer outro sistema operacional compilando-o manualmente ou usando um tarball . YaCy requer Java 8, OpenJDK 8 é recomendado.
O pacote Debian pode ser instalado a partir de um repositório disponível no subdomínio do site do projeto. O pacote ainda não é mantido no repositório oficial de pacotes Debian.
Veja também
- Dooble - um navegador de código aberto com um widget de ferramenta de mecanismo de pesquisa YaCy integrado