A pesquisa de documentos é uma pequisa que funciona principalmente em textos livres não estruturados (não apenas em documentos). Seja para pesquisar uma página da Web, encontrar um produto ou trabalhar com conteúdo com curadoria, você usa um motor de pesquisa. Você acessa uma página da Web e digita na caixa de texto de Pesquisa. Você clica em “pesquisar” e recebe (esperamos que sim) itens relevantes que ofereçam a informação que você procura.

Os motores de pesquisa surgiram da tecnologia de banco de dados, eles armazenam os dados nos quais processam as consultas. Os bancos de dados tradicionais trabalham principalmente com conteúdo estruturado: os dados são organizados em tabelas e colunas, com esquema incorporado. O trabalho do banco de dados é recuperar todas as linhas de dados com base nas consultas que correspondem aos valores nas colunas. Os motores de pesquisa trabalham com dados estruturados (documentos), que contêm metadados e grandes blocos de texto não estruturado (texto livre). Os motores de pesquisa usam regras linguísticas para dividir esses grandes blocos de texto em termos que podem ser usados para fazer a correspondência. E os motores de pesquisa têm um recurso de classificação incorporado para ordenar os resultados e apresentar os melhores primeiro. Enquanto os bancos de dados relacionais e NoSQL recuperam todos os resultados, os motores de pesquisa recuperam os melhores resultados.

Os aplicativos dos motores de pesquisa se dividem em três grandes categorias: pesquisa de documentos, que funciona principalmente com texto livre não estruturado; pesquisa de e-Commerce, que funciona com uma combinação de dados estruturados e não estruturados; e transferência de consultas, que funciona principalmente com dados estruturados.

A pesquisa de documentos funciona com metadados?

Na pesquisa de documentos, você pesquisa o documento principal, que pode ser tão pequeno quanto um parágrafo e tão grande quanto milhares de páginas. Os documentos incluem uma variedade de outros campos, incluindo campos de texto não estruturados (título e resumo), campos semiestruturados (autor) e campos estruturados (data de publicação, grupo de origem, categoria) — os metadados. O motor de pesquisa lida com uma mistura de texto e metadados nas consultas do usuário.

Os principais desafios da pesquisa de documentos se dividem em duas áreas – preparação e ingestão de dados e relevância da pesquisa.

Em casos de uso de pesquisa de documentos, o corpo de documentos (corpus) se origina de conteúdo gerado pelo usuário ou outro conteúdo sem curadoria. Este conteúdo geralmente contém erros de digitação ou outros erros, repetições e dados sem sentido. Antes de carregar esses dados em um motor de pesquisa, você precisa selecionar, limpar e normalizar os dados. Após a preparação dos dados, você precisa carregar esses dados no motor (chamando as APIs de ingestão). Por fim, você precisa de um processo para atualizar os documentos à medida que eles mudam.

O valor central da pesquisa de documentos é recuperar documentos relevantes para a consulta do usuário, a relevância da pesquisa. Durante a coleta, o motor de pesquisa classifica e coloca em ordem todos os documentos correspondentes por meio de uma medida estatística (BM25). O BM25 utiliza a singularidade do termo de busca cruzado com sua contagem nos documentos correspondentes. Quanto mais vezes a consulta corresponder a mais termos exclusivos, maior será sua pontuação. Você deve ajustar a função de pontuação para seu conjunto de dados específico; As técnicas de aprendizado de máquina (ML) ajudam você a melhorar sua classificação. A pesquisa só é tão boa quanto a relevância dos documentos que ela recupera, e você quer o melhor.

Quais são os outros casos de uso de pesquisa?

Pesquisa para comércio eletrônico 

Você acessa um motor de e-Commerce para encontrar e comprar produtos a partir de um catálogo de produtos disponíveis. Esses produtos incluem muitos campos de metadados (tamanho, cor, marca e assim por diante) junto com campos mais longos, como título, descrição do produto e avaliações. A principal função do motor é extrair os resultados mais relevantes, o que gera receita. Os designers de sites empregam muitas ferramentas para criar uma boa função de relevância, desde valores numéricos incorporados até modelos de ML baseados no comportamento do usuário.

Para melhorar a experiência do usuário final, os sites de e-Commerce frequentemente adicionam pesquisa facetada. O motor fornece uma contagem em intervalos para os valores em vários campos (tamanho, cor e assim por diante) e a IU fornece ao usuário uma lista clicável que ele usa para restringir os resultados.

Alguns tipos de pesquisa de e-Commerce dependem muito de personalização e recomendações. Se um comprador pesquisar por “vestidos”, o motor de pesquisa deve encontrar vestidos que possam interessar ao cliente, mesmo que a consulta em si seja muito aberta. Métricas de similaridade como k-vizinhos mais próximos (k-NN) ajudam nisso.

Pesquisa de conjunto de dados com curadoria

Pesquisa de um conjunto de dados com curadoria, como um repositório de documentos corporativos (dados de ensaios clínicos, peças processuais, imóveis e assim por diante). Os motores de pesquisa contêm regras linguísticas e outros recursos específicos do idioma que os ajudam a dividir grandes blocos de texto em termos componentes (palavras de um campo ou grande bloco de texto) para correspondência. Sua rica linguagem de consulta permite pesquisar esses grandes blocos de texto por combinações de termos, como “vestido longo sem manga”. Mas o motor não recupera tudo o que corresponde: ele usa pontuação de relevância para classificar e ordenar documentos e retornar apenas as melhores correspondências.

Transferência de consultas

Os motores de pesquisa contêm estruturas de dados especializadas para facilitar a pesquisa de alto volume e baixa latência. A mais importante dessas estruturas é o índice invertido, que mapeia termos individuais para uma lista de documentos que contêm esses termos. Devido a essas estruturas de dados, os motores de pesquisa superam os bancos de dados relacionais no processamento de consultas. A desvantagem é que os motores de busca não são relacionais. É comum ver um banco de dados relacional em tandem e um motor de pesquisa. Você usa o banco de dados relacional para fornecer dados de aplicações e um mecanismo de pesquisa para fornecer pesquisa relevante e de baixa latência nesses dados.

Construir uma experiência de pesquisa rica e agradável requer muitas funções de trabalho. Os desenvolvedores integram uma solução de pesquisa, criam uma interface de pesquisa e entendem como estruturar os dados para obter os melhores resultados de pesquisa. Os gerentes de produto fornecem requisitos para a estrutura de metadados e experiências do usuário da interface de pesquisa. Os cientistas de dados selecionam os dados de origem, além de rastrear e trabalhar com o comportamento do usuário. Os executivos definem KPIs de negócios que orientam as equipes de produto e desenvolvimento no cumprimento das metas de negócios para o motor.

Os mecanismo de pesquisa foram otimizados para encontrar os termos. A pesquisa por “sofá de 3 lugares” deve trazer resultados que são sofás de 3 lugares, e faz isso combinando “3”, “lugares” e “sofá”. Esta é a pesquisa de palavras-chave. Em muitos casos, os pesquisadores não sabem os termos exatos que estão procurando e desejam pesquisar por significado. Essa é a pesquisa semântica e está na fronteira das tecnologias de pesquisa e ML. Com a pesquisa semântica, você usa consultas como “lugar confortável para sentar perto da lareira” para recuperar itens como um sofá de 3 lugares.

A pesquisa semântica requer técnicas de ML. Você deve construir um espaço vetorial de itens e consultas e, em seguida, usar cálculos de similaridade vetorial para localizar itens próximos nesse espaço. Com a pesquisa vetorial, um documento não precisa de palavras ou sinônimos em comum com uma consulta para ser relevante. Por exemplo, uma pesquisa sobre “manutenção de bicicleta” pode corresponder a um documento sobre “lubrificação de câmbio”, porque o algoritmo de ML sabe que “lubrificação de câmbio” geralmente aparece próximo a discussões sobre manutenção de bicicleta.

Como você pode melhorar seus resultados de pesquisa?

A chave para uma pesquisa eficaz de documentos e comércio eletrônico é a relevância; os resultados da pesquisa atendem às necessidades de quem está procurando? Os motores de pesquisa tentam colocar os melhores resultados no topo usando uma variedade de técnicas. Isso é chamado de classificação de relevância. Os bancos de dados retornam tudo o que corresponde e os motores de pesquisa são otimizados para pontuar itens relevantes.

  • Sua pesquisa pode abranger vários campos com ponderação diferencial. Por exemplo, se você pesquisar um banco de dados de filmes, talvez queira abranger campos como título, diretor e ator e dar mais peso às correspondências de título do que às correspondências de ator.
  • Considere ajustar seus resultados de pesquisa para o mais recente. Adicione um campo de data de lançamento ao seu índice e uma função de decaimento exponencial com base nessa data à sua função de pontuação.
  • Considere adicionar facetas ou filtros de seus resultados de pesquisa para ajudar seus usuários a detalhar elementos específicos. Muitos sistemas de pesquisa de documentos suportam facetas em metadados, normalmente apresentados como categorias no lado esquerdo da página de resultados da pesquisa.
  • Considere adicionar sinônimos. Os sinônimos podem ajudar seus usuários finais a encontrar os resultados que estão procurando. Em roupas, uma camiseta é uma camisa ou blusa. Seus usuários finais devem encontrar os mesmos resultados pesquisando por “blusa” ou “camisa”. Adicionar sinônimos pode retornar esses resultados.

A pesquisa de documentos abrange muitas aplicações diferentes.

  • Os sites de e-Commerce usam a pesquisa de documentos para recuperar produtos que seus usuários desejam comprar.
  • Os sites de fotos usam a pesquisa de documentos para encontrar fotos com base em metadados, como título e descrição, ou mesmo com base em vetores de imagem correspondentes.
  • Os usuários jurídicos usam a pesquisa de documentos para encontrar jurisprudência relevante.
  • Os médicos usam a pesquisa de documentos para encontrar medicamentos para as condições de seus pacientes.
  • As soluções de gestão de relacionamento com os clientes (CRM) usam a pesquisa de documentos para recuperar observações, interações e clientes-alvo.

Quando você precisar encontrar algo, use um motor de busca!

Próximas etapas com a pesquisa de documentos da AWS

Confira recursos adicionais relacionados a produtos
Veja ofertas gratuitas de serviços de bancos de dados na nuvem 
Cadastre-se para obter uma conta gratuita

Obtenha acesso instantâneo ao nível gratuito da AWS. 

Cadastre-se 
Comece a criar no console

Comece a criar no Console de Gerenciamento da AWS.

Faça login