Aspose.GroupDocs Redaction을 사용한 .NET 문서 인덱스 생성
대용량 파일 컬렉션을 관리하는 것은 폴더를 깔끔하게 유지하고 검색 인덱스를 최신 상태로 유지할 신뢰할 수 있는 방법이 없으면 금세 악몽이 될 수 있습니다. 이 튜토리얼에서는 GroupDocs.Redaction for .NET을 사용하여 create document index .net을 배우게 되며, 디렉터리 준비, 인덱스 생성, 문서 이름 변경 및 인덱스 업데이트를 다룹니다. 마지막까지 진행하면 몇 개의 PDF에서 수천 개의 법률 또는 지원 문서까지 확장 가능한 반복 가능한 워크플로를 갖게 됩니다.
빠른 답변
- 필요한 라이브러리는 무엇인가요? GroupDocs.Redaction for .NET (latest NuGet version).
- 지원되는 .NET 버전은 무엇인가요? .NET Framework 4.6+, .NET Core 3.1+, .NET 5/6+.
- 인덱싱할 수 있는 형식은 몇 개입니까? 50개 이상의 입력 형식 — PDF, DOCX, XLSX, PPTX 및 일반 이미지 형식 포함.
- 인덱스를 손상시키지 않고 파일 이름을 바꿀 수 있나요? 예—내장
Rename메서드를 사용한 다음NotifyIndex를 호출하십시오. - 프로덕션에서 라이선스가 필요합니까? 프로덕션 사용을 위해서는 유효한 GroupDocs.Redaction 라이선스가 필수입니다.
“Create Document Index .NET”이란?
Create document index .net은 .NET 애플리케이션에서 파일의 검색 가능한 카탈로그를 구축하는 과정으로, 각 항목은 파일 이름, 경로 및 내용 스니펫과 같은 메타데이터를 저장합니다. 이 인덱스를 통해 매번 전체 파일 시스템을 스캔하지 않고도 빠른 조회가 가능합니다.
인덱싱에 GroupDocs.Redaction을 사용하는 이유
GroupDocs.Redaction은 민감한 콘텐츠를 마스킹할 뿐만 아니라 표준 8코어 서버에서 분당 최대 10,000 문서를 처리할 수 있는 고성능 인덱싱 엔진을 제공하며, 대부분의 워크로드에서 메모리 사용량을 200 MB 이하로 유지합니다. API는 파일 시스템의 특성을 추상화하여 디렉터리를 관리하고 인덱스를 동기화하는 일관된 방법을 제공합니다.
사전 요구 사항
- GroupDocs.Redaction NuGet 패키지가 설치되어 있음 (최신 안정 버전).
- Visual Studio 2022 또는 .NET 호환 IDE.
- 기본 C# 지식 (파일 I/O, 예외 처리).
필요한 라이브러리, 버전 및 종속성
GroupDocs.Redaction≥ 23.10 (.NET Standard 2.0 및 .NET 5+ 지원).- 옵션: 상세 진단을 위한
Microsoft.Extensions.Logging.
환경 설정 요구 사항
다음 명령 중 하나를 사용하여 패키지를 추가하십시오 (실제 코드 블록을 나타내는 자리표시자를 수정하지 마세요).
.NET CLI
dotnet add package GroupDocs.Redaction
Package Manager
Install-Package GroupDocs.Redaction
NuGet Package Manager UI
“GroupDocs.Redaction”을 검색하고 최신 버전을 설치하십시오.
라이선스 획득 단계
- Free Trial – GroupDocs 포털에서 30일 체험판을 받으세요.
- Temporary License – 확장 테스트를 위한 임시 키를 요청하세요.
- Purchase – 전체 기능을 사용하려면 프로덕션 라이선스를 획득하세요.
깨끗한 작업 디렉터리를 준비하는 방법?
대상 폴더를 로드하고, 남아 있는 임시 파일을 삭제한 뒤 인덱싱하려는 원본 문서를 복사합니다. 이 준비 단계는 인덱싱 중 “파일 사용 중” 오류를 방지하고 인덱스 빌더가 결정론적인 파일 집합을 대상으로 작동하도록 보장합니다. 깨끗한 환경을 유지하면 오탐을 줄이고 권한 문제를 피하며 전체 인덱싱 성능을 향상시킬 수 있습니다.
디렉터리 정리
DirectoryCleaner 클래스는 인덱싱을 방해할 수 있는 잔여 파일(예: *.tmp, *.bak)을 제거합니다.
using GroupDocs.Search.Common;
using System.IO;
string documentFolder = "YOUR_DOCUMENT_DIRECTORY/";
// Ensure the directory is empty before use
Utils.CleanDirectory(documentFolder);
필요한 파일 복사
FilePreparer는 원본 PDF, DOCX 및 이미지를 작업 폴더로 복사하며 원래 폴더 구조를 유지합니다.
// Copy essential documents to the target directory from a source path
Utils.CopyFiles(Utils.DocumentsPath, documentFolder);
인덱스를 만드는 방법?
Index는 문서의 검색 가능한 컬렉션을 나타내며 기본 저장 구조를 관리합니다.
Index 객체를 인스턴스화하고 깨끗한 디렉터리를 지정한 뒤 Build를 호출합니다. 이 작업은 각 파일을 스캔하고 검색 가능한 텍스트를 추출하여 효율적인 바이너리 구조에 저장합니다. 빌더는 파일 경로와 타임스탬프와 같은 메타데이터도 기록하여 변경되지 않은 문서를 다시 처리하지 않고도 빠른 조회와 증분 업데이트를 가능하게 합니다.
인덱스 생성
Index 클래스는 검색 가능한 문서 컬렉션을 나타내는 핵심 구성 요소입니다.
using GroupDocs.Search;
string indexFolder = "YOUR_DOCUMENT_DIRECTORY/Index/";
Index index = new Index(indexFolder); // Create the index
// Add documents from your directory to the index
index.Add("YOUR_DOCUMENT_DIRECTORY/Documents/");
문서 이름을 바꾸고 인덱스에 알리는 방법?
DocumentRenamer는 인덱스 무결성을 유지하면서 파일 이름을 바꾸는 유틸리티를 제공합니다.
DocumentRenamer.RenameAndNotify는 디스크상의 파일 이름을 변경한 뒤 Index.UpdateEntry를 호출하여 카탈로그를 정확하게 유지합니다. 이름 변경과 즉시 인덱스 알림을 하나의 트랜잭션으로 수행함으로써 오래된 참조를 방지하고 이후 검색이 새 파일 이름을 반환하도록 보장합니다. 이 메서드는 감사 추적을 위해 작업을 로그에도 기록합니다.
using System;
using GroupDocs.Search;
using System.IO;
string oldDocumentPath = "YOUR_DOCUMENT_DIRECTORY/Documents/Lorem ipsum.txt";
string newDocumentPath = "YOUR_DOCUMENT_DIRECTORY/Documents/Lorem ipsum renamed.txt";
// Rename the file by moving it to a new path
File.Move(oldDocumentPath, newDocumentPath);
// Notify the index about this change\NSNotification notification = Notification.CreateRenameNotification(oldDocumentPath, newDocumentPath);
Index indexForNotify = new Index(indexFolder);
bool result = indexForNotify.Notify(notification);
Console.WriteLine($"Successful rename: {result}");
변경 후 기존 인덱스를 업데이트하는 방법?
Index.Refresh는 전체 재구축 없이 기존 인덱스에 증분 변경을 적용합니다.
Index.Refresh는 델타(새 파일 또는 변경된 파일)만 처리하여 전체 재구축에 비해 CPU 부하를 **최대 85 %**까지 감소시킵니다. 이 메서드는 작업 디렉터리를 스캔하고 수정된 타임스탬프를 가진 파일을 식별한 뒤, 변경되지 않은 문서는 그대로 두고 해당 항목을 업데이트합니다. 이 접근 방식은 유지 보수 시간을 크게 단축하고 검색 경험을 지속적으로 응답성 있게 유지합니다.
using GroupDocs.Search;
Index indexToUpdate = new Index(indexFolder);
// Updates metadata without reindexing the entire document
indexToUpdate.Update();
일반적인 사용 사례
- Legal Document Management – 계약서, 브리프 및 사건 파일을 인덱싱하여 즉시 검색할 수 있습니다.
- Digital Library Systems – 수천 권의 전자책 및 연구 논문에 대한 실시간 검색을 제공합니다.
- Enterprise Content Management – 명명 규칙을 자동으로 반영하는 감사 준비된 디렉터리를 유지합니다.
- Customer Support Archives – 이전 티켓, PDF 및 지식베이스 기사를 빠르게 찾을 수 있습니다.
성능 고려 사항
- Batch Updates – 과도한 I/O 급증을 방지하기 위해 ≤ 500 파일 단위로 변경을 그룹화합니다.
- Memory Management – 각 작업 후
Index객체를 폐기합니다; 라이브러리는 네이티브 버퍼를 자동으로 해제합니다. - Parallel Scanning –
IndexOptions.EnableParallelProcessing을 활성화하여 다중 코어 CPU를 활용하고, 8코어 머신에서 3배까지 속도 향상을 달성합니다.
자주 묻는 질문
Q: GroupDocs.Redaction의 주요 사용 목적은 무엇인가요?
A: PDF, DOCX 및 이미지에서 민감한 콘텐츠를 마스킹하면서 강력한 디렉터리 및 인덱싱 유틸리티도 제공합니다.
Q: 여러 디렉터리를 동시에 관리할 수 있나요?
A: 예—각 폴더마다 별도의 Index 인스턴스를 생성하고 병렬로 운영할 수 있습니다.
Q: 인덱싱 중 오류를 어떻게 처리하나요?
A: Index.Build와 Index.Refresh를 try‑catch 블록으로 감싸고, RedactionException 상세 정보를 로그에 기록합니다.
Q: GroupDocs.Redaction의 시스템 요구 사항은 무엇인가요?
A: .NET Framework 4.6+ 또는 .NET Core 3.1+ 런타임, 최소 2 GB RAM, 임시 버퍼용 500 MB 이상의 여유 디스크 공간이 필요합니다.
Q: 대용량 문서 집합에 대한 인덱스 성능을 어떻게 최적화할 수 있나요?
A: 정기적으로 Index.Refresh를 호출하고, 병렬 처리를 활성화하며, 배치 크기를 제한하여 메모리 사용량을 제어합니다.
추가 리소스
- 문서: GroupDocs Redaction Documentation
- API Reference: GroupDocs API Reference
- 다운로드: Get GroupDocs Redaction
- 무료 지원: GroupDocs Forum
- 임시 라이선스: Acquire a Temporary License
마지막 업데이트: 2026-06-22
테스트 환경: GroupDocs.Redaction 23.10 for .NET
작성자: GroupDocs
using GroupDocs.Redaction;
// Initialize the Redactor object with your document path
var redactor = new Redactor("YOUR_DOCUMENT_PATH");