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 chameRedactcom 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:
- Visite o site da GroupDocs para solicitar uma licença temporária.
- Para opções de compra, navegue até a sua página de preços.
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)
- Initialize
Redactorwith your license. - Load the PDF using
redactor.Load("sample.pdf"). RedactionPatternrepresents a rule that specifies the text or pattern to be redacted. Define patterns such asnew RedactionPattern(@"\d{3}-\d{2}-\d{4}").- Execute
redactor.Apply(pattern). - Save the output with
redactor.Save("sample_redacted.pdf").
Aplicações Práticas
Casos de Uso no Mundo Real
- Legal Document Management – Pesquise contratos de forma eficiente e redija automaticamente identificadores de clientes.
- Healthcare Records – Localize notas de pacientes garantindo redaction compatível com HIPAA de PHI.
- 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