Criar Índice de Busca .NET com GroupDocs Search e Redaction – Um Guia Abrangente

No cenário digital atual, criar um índice de busca .NET solução que possa localizar informações rapidamente e proteger dados sensíveis é uma prioridade máxima para qualquer organização. Este tutorial orienta você na configuração de uma rede escalável GroupDocs.Search, implantação de nós, indexação de documentos e uso do GroupDocs.Redaction para aplicar redaction a PDF arquivos — tudo dentro de um ambiente .NET.

Respostas Rápidas

  • Qual é o primeiro passo para criar um índice de busca .NET? Defina um caminho base e porta, então implante os nós da rede.
  • Como aplico redaction a PDF com GroupDocs? Inicialize uma instância Redactor, carregue o PDF e chame Redact com os padrões desejados.
  • Posso executar a rede de busca em várias máquinas? Sim—implante nós em servidores separados e deixe o nó mestre coordenar a indexação e as consultas.
  • Preciso de uma licença para uso em produção? Uma licença válida do GroupDocs é necessária para produção; uma licença de avaliação temporária está disponível para avaliação.
  • Quais versões do .NET são suportadas? .NET Framework 4.7.2+, .NET Core 3.1+ e .NET 5/6/7 são totalmente suportados.

O que é “create search index .net”?

Creating a search index .NET refere-se à construção de um repositório pesquisável de metadados e conteúdo de documentos usando bibliotecas .NET, que extrai texto, tokeniza termos e os armazena em uma estrutura de índice otimizada. Isso permite respostas instantâneas a consultas em nós distribuídos, suportando vários formatos de arquivo e permitindo recuperação de documentos escalável e de alto desempenho em aplicações corporativas.

Por que usar GroupDocs Search e Redaction juntos?

GroupDocs.Search suporta mais de 50 formatos de arquivo — incluindo DOCX, PDF, PPTX e HTML — e pode indexar documentos com centenas de páginas sem carregar o arquivo inteiro na memória. Combinado com GroupDocs.Redaction, que pode aplicar redaction a PDF em menos de 200 ms por página, você obtém um pipeline de gerenciamento de documentos seguro e de alto desempenho.

Pré-requisitos

Bibliotecas e Dependências Necessárias

Para seguir este tutorial, instale os seguintes pacotes:

  • GroupDocs.Search para .NET
  • GroupDocs.Redaction para .NET

Você pode usar qualquer um destes métodos para instalar as bibliotecas necessárias:

.NET CLI

dotnet add package GroupDocs.Search
dotnet add package GroupDocs.Redaction

Package Manager

Install-Package GroupDocs.Search
Install-Package GroupDocs.Redaction

NuGet Package Manager UI
Procure por “GroupDocs.Search” e “GroupDocs.Redaction” e instale a versão mais recente.

Requisitos de Configuração do Ambiente

  • .NET Framework 4.7.2 ou superior (ou .NET Core 3.1+)
  • Visual Studio IDE (Community, Professional ou Enterprise)

Pré-requisitos de Conhecimento

  • Programação básica em C#
  • Conceitos de orientação a objetos
  • Familiaridade com configurações de rede e sistemas de gerenciamento de documentos

Configurando GroupDocs.Redaction para .NET

Informações de Instalação

Para integrar recursos de redaction em sua aplicação, comece adicionando a biblioteca GroupDocs.Redaction:

.NET CLI

dotnet add package GroupDocs.Redaction

Package Manager

Install-Package GroupDocs.Redaction

NuGet Package Manager UI
Procure por “GroupDocs.Redaction” e instale-o.

Aquisição de Licença

Para começar com uma avaliação gratuita ou uma licença temporária, siga estes passos:

Depois de obter seu arquivo de licença, aplique-o na configuração da sua aplicação:

RedactorSettings settings = new RedactorSettings("YOUR_LICENSE_PATH");

Inicialização Básica

Para inicializar o GroupDocs.Redaction para operações básicas, use o trecho de código a seguir:

using GroupDocs.Redaction;
using GroupDocs.Redaction.Options;

Redactor redactor = new Redactor("path/to/your/document.pdf", new LoadOptions(), settings);

Guia de Implementação

Configuração

Visão Geral

Este recurso configura sua rede de busca usando um caminho base e número de porta, formando a base do seu sistema de gerenciamento de documentos.

Âncora de Definição

SearchNetworkDeployment é a classe que orquestra a implantação de nós de busca na rede.

Etapa 1: Definir Caminho Base e Porta

string basePath = @"YOUR_DOCUMENT_DIRECTORY/AdvancedUsage/Scaling/TextSearchInNetwork/";
int basePort = 49148; // Define your network's base port

Etapa 2: Configurar a Rede

Use o método Configure para configurar a rede de busca com o caminho e porta especificados:

using GroupDocs.Search.Scaling.Configuring;

Configuration configuration = ConfiguringSearchNetwork.Configure(basePath, basePort);

Implantação de Nó de Rede

Visão Geral

Implante nós dentro da sua rede de busca configurada para busca de documentos distribuída.

Âncora de Definição

SearchNetworkNode representa um nó pesquisável individual que se comunica com o nó mestre.

Etapa 1: Inicializar Implantação

using GroupDocs.Search.Scaling;
List<SearchNetworkNode> deployedNodes = new List<SearchNetworkNode>();
SearchNetworkNode[] nodes = SearchNetworkDeployment.Deploy(basePath, basePort, configuration);
deployedNodes.AddRange(nodes);

Inscrição em Eventos para Nó Mestre

Visão Geral

Inscreva-se em eventos no nó mestre para monitorar e gerenciar as operações da rede de forma eficaz.

Âncora de Definição

SearchNetworkNodeEvents fornece callbacks para indexação, execução de consultas e tratamento de erros.

Etapa 1: Identificar o Nó Mestre

Selecione o primeiro nó como seu mestre:

using GroupDocs.Search.Scaling.Results;

SearchNetworkNode masterNode = nodes[0];

Etapa 2: Inscrever-se em Eventos

Inscreva-se em eventos usando:

SearchNetworkNodeEvents.Subscibe(masterNode);

Indexação de Documentos

Visão Geral

Indexe documentos para operações de busca eficientes. Esta etapa é crucial para garantir que sua rede possa recuperar rapidamente os dados necessários.

Âncora de Definição

SearchIndex é o objeto central que armazena tokens pesquisáveis e metadados para cada arquivo indexado.

Etapa 1: Adicionar Diretórios ao Índice

Especifique os diretórios que contêm seus documentos:

using GroupDocs.Search.Options;

IndexingDocuments.AddDirectories(masterNode, @"YOUR_DOCUMENT_DIRECTORY/DocumentsPath");

Funcionalidade de Busca – Uso Básico

Visão Geral

Execute operações básicas de busca em nós da rede.

Resposta Direta

Chame SearchNetwork.Query("your term") no nó mestre para recuperar documentos correspondentes instantaneamente. O método retorna uma coleção de objetos SearchResult que incluem caminhos de arquivo e pontuações de relevância.
SearchNetwork.Query é um método que executa uma consulta de busca em toda a rede e retorna resultados correspondentes.

Etapa 1: Definir Parâmetros de Busca

string wordToSearch = "tempor";
bool useSynonymSearch = false;
bool isObjectForm = false;

List<NetworkFoundDocument> searchResults = SearchAll(masterNode, wordToSearch, useSynonymSearch, isObjectForm);

Funcionalidade de Busca Avançada

Visão Geral

Utilize técnicas avançadas de busca com parâmetros personalizáveis para resultados mais precisos.

Resposta Direta

Implemente um método que construa um objeto SearchOptions, defina as propriedades UseFuzzySearch, Highlight e PageSize, e então o passe para SearchNetwork.QueryAdvanced. Isso gera resultados paginados e destacados com correspondência difusa habilitada.
SearchNetwork.QueryAdvanced é um método que executa uma consulta com opções avançadas como correspondência difusa e paginação.

Etapa 1: Implementar o Método de Busca Avançada

using GroupDocs.Search.Scaling.Results;
using System.Collections.Generic;

public static List<NetworkFoundDocument> SearchAll(
    SearchNetworkNode node,
    string word,
    bool useSynonymSearch,
    bool isObjectForm)
{
    // Initialize searcher and search options for the given node
    Searcher searcher = node.Searcher;
    SearchOptions options = new SearchOptions {
        IsChunkSearch = true, // Enable chunk-based search
        UseSynonymSearch = useSynonymSearch
    };

    int totalOccurrences = 0; // To count occurrences across all documents
    List<NetworkFoundDocument> documents = new List<NetworkFoundDocument>();

    NetworkSearchResult result;
    if (isObjectForm)
    {
        SearchQuery query = SearchQuery.CreateWordQuery(word);
        result = searcher.SearchFirst(query, options); // Perform initial chunk search
    }
    else
    {
        string queryText = word;
        result = searcher.SearchFirst(queryText, options); // Perform initial text-based search
    }

    AddDocsFromResult(documents, result);
    totalOccurrences += result.OccurrenceCount;

    while (result.NextChunkSearchToken != null)
    {
        result = searcher.SearchNext(result.NextChunkSearchToken);
        AddDocsFromResult(documents, result);
        totalOccurrences += result.OccurrenceCount;
    }

    return documents; // Return list of found documents
}

private static void AddDocsFromResult(List<NetworkFoundDocument> documents, NetworkSearchResult result)
{
    for (int i = 0; i < result.DocumentCount; i++)
    {
        documents.Add(result.GetFoundDocument(i)); // Collect each document from the search results
    }
}

Aplicando Redaction a Arquivos PDF

Visão Geral

Proteja informações sensíveis redigindo o conteúdo de PDFs antes de serem armazenados ou compartilhados.

Resposta Direta

Crie uma instância Redactor, carregue o PDF alvo, defina um RedactionPattern (ex.: regex de SSN), chame redactor.Apply(pattern), e finalmente salve o documento redigido. Este processo garante que os dados pessoais sejam removidos permanentemente.

Âncora de Definição

Redactor é a classe principal no GroupDocs.Redaction que processa documentos e aplica regras de redaction.

Fluxo de Trabalho de Exemplo (sem novo bloco de código)

  1. Initialize Redactor with your license.
  2. Load the PDF using redactor.Load("sample.pdf").
  3. RedactionPattern represents a rule that specifies the text or pattern to be redacted. Define patterns such as new RedactionPattern(@"\d{3}-\d{2}-\d{4}").
  4. Execute redactor.Apply(pattern).
  5. Save the output with redactor.Save("sample_redacted.pdf").

Aplicações Práticas

Casos de Uso no Mundo Real

  1. Legal Document Management – Pesquise contratos de forma eficiente e redija automaticamente identificadores de clientes.
  2. Healthcare Records – Localize notas de pacientes garantindo redaction compatível com HIPAA de PHI.
  3. Corporate Compliance – Analise comunicações internas em busca de termos proibidos e redija antes de arquivar.

Conclusão

Este guia oferece um caminho abrangente para criar um índice de busca .NET solução que escala, indexa rapidamente e protege dados através de redaction. Ao configurar nós, indexar documentos, aproveitar recursos avançados de busca e aplicar redaction, os desenvolvedores podem melhorar drasticamente os fluxos de trabalho de gerenciamento de documentos enquanto mantêm padrões de segurança rigorosos.

Perguntas Frequentes

Q: Como configuro uma rede de busca distribuída em .NET com GroupDocs?
A: Defina um caminho base e porta, então chame SearchNetworkDeployment.Deploy() para iniciar nós mestre e trabalhador em várias máquinas.

Q: Posso realizar buscas avançadas com múltiplos parâmetros no GroupDocs?
A: Sim—use SearchOptions para combinar correspondência difusa, suporte a curingas e destaque de resultados em uma única consulta.

Q: É possível monitorar a atividade da rede no nó mestre?
A: Absolutamente—inscreva-se em SearchNetworkNodeEvents como IndexingCompleted e QueryExecuted para insights em tempo real.

Q: Como aplico redaction a arquivos PDF usando GroupDocs?
A: Inicialize um Redactor, carregue o PDF, defina objetos RedactionPattern (expressões regulares ou strings literais), chame Apply e salve o documento sanitizado.

Q: Qual a maneira mais fácil de melhorar o desempenho da busca em um ambiente de rede?
A: Indexe totalmente seu conjunto de documentos antes das consultas, distribua nós para utilizar processamento paralelo e ajuste SearchOptions para cache e paginação.


Última Atualização: 2026-06-12
Testado Com: GroupDocs.Search 23.9 for .NET, GroupDocs.Redaction 23.9 for .NET
Autor: GroupDocs

Tutoriais Relacionados