สร้างดัชนีการค้นหา .NET ด้วย GroupDocs Search และ Redaction – คู่มือฉบับสมบูรณ์
ในยุคดิจิทัลปัจจุบัน, การสร้างดัชนีการค้นหา .NET ที่สามารถค้นหาข้อมูลได้อย่างรวดเร็วและปกป้องข้อมูลที่ละเอียดอ่อนเป็นสิ่งสำคัญอันดับแรกสำหรับทุกองค์กร คู่มือฉบับนี้จะพาคุณผ่านการกำหนดค่าเครือข่าย GroupDocs.Search ที่ขยายได้, การปรับใช้โหนด, การทำดัชนีเอกสาร, และการใช้ GroupDocs.Redaction เพื่อ ทำการลบข้อมูลใน PDF — ทั้งหมดภายในสภาพแวดล้อม .NET
คำตอบเร็ว
- ขั้นตอนแรกในการสร้างดัชนีการค้นหา .NET คืออะไร? กำหนดเส้นทางฐานและพอร์ต, จากนั้นปรับใช้โหนดเครือข่าย.
- ฉันจะทำการลบข้อมูลใน PDF ด้วย GroupDocs อย่างไร? เริ่มต้นอินสแตนซ์
Redactor, โหลดไฟล์ PDF, และเรียกRedactพร้อมรูปแบบที่ต้องการ. - ฉันสามารถรันเครือข่ายการค้นหาในหลายเครื่องได้หรือไม่? ใช่ — ปรับใช้โหนดบนเซิร์ฟเวอร์แยกต่างหากและให้โหนดหลักประสานงานการทำดัชนีและการค้นหา.
- ฉันต้องการใบอนุญาตสำหรับการใช้งานในสภาพแวดล้อมการผลิตหรือไม่? จำเป็นต้องมีใบอนุญาต GroupDocs ที่ถูกต้องสำหรับการผลิต; มีใบอนุญาตทดลองชั่วคราวสำหรับการประเมิน.
- เวอร์ชัน .NET ที่รองรับคืออะไร? .NET Framework 4.7.2+, .NET Core 3.1+, และ .NET 5/6/7 รองรับเต็มรูปแบบ.
“การสร้างดัชนีการค้นหา .net” คืออะไร?
การสร้างดัชนีการค้นหา .NET หมายถึงการสร้างคลังข้อมูลที่สามารถค้นหาได้ของเมตาดาต้าและเนื้อหาเอกสารโดยใช้ไลบรารี .NET ซึ่งทำการสกัดข้อความ, แยกคำ, และจัดเก็บในโครงสร้างดัชนีที่ปรับแต่งให้เหมาะสม สิ่งนี้ทำให้การตอบสนองต่อคำค้นแบบทันทีบนโหนดที่กระจาย, รองรับรูปแบบไฟล์ต่าง ๆ และอนุญาตให้การดึงเอกสารที่มีประสิทธิภาพสูงและขยายได้ในแอปพลิเคชันระดับองค์กร.
ทำไมต้องใช้ GroupDocs Search และ Redaction ร่วมกัน?
GroupDocs.Search รองรับ ไฟล์รูปแบบกว่า 50 — รวมถึง DOCX, PDF, PPTX, และ HTML — และสามารถทำดัชนีเอกสารหลายร้อยหน้าโดยไม่ต้องโหลดไฟล์ทั้งหมดเข้าสู่หน่วยความจำ เมื่อรวมกับ GroupDocs.Redaction ที่สามารถ ทำการลบข้อมูลใน PDF ได้ภายในน้อยกว่า 200 ms ต่อหน้า คุณจะได้ระบบการจัดการเอกสารที่ปลอดภัยและมีประสิทธิภาพสูง.
ข้อกำหนดเบื้องต้น
ไลบรารีและการพึ่งพาที่จำเป็น
เพื่อทำตามบทแนะนำนี้, ติดตั้งแพ็กเกจต่อไปนี้:
- GroupDocs.Search สำหรับ .NET
- GroupDocs.Redaction สำหรับ .NET
คุณสามารถใช้วิธีใดวิธีหนึ่งต่อไปนี้เพื่อติดตั้งไลบรารีที่จำเป็น:
.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
ค้นหา “GroupDocs.Search” และ “GroupDocs.Redaction” แล้วติดตั้งเวอร์ชันล่าสุด.
ความต้องการการตั้งค่าสภาพแวดล้อม
- .NET Framework 4.7.2 หรือสูงกว่า (หรือ .NET Core 3.1+)
- IDE Visual Studio (Community, Professional หรือ Enterprise)
ความรู้เบื้องต้นที่จำเป็น
- การเขียนโปรแกรม C# เบื้องต้น
- แนวคิดเชิงวัตถุ (Object‑oriented concepts)
- ความคุ้นเคยกับการกำหนดค่าเครือข่ายและระบบจัดการเอกสาร
การตั้งค่า GroupDocs.Redaction สำหรับ .NET
ข้อมูลการติดตั้ง
เพื่อรวมคุณสมบัติการลบข้อมูลเข้ากับแอปพลิเคชันของคุณ, เริ่มต้นด้วยการเพิ่มไลบรารี GroupDocs.Redaction:
.NET CLI
dotnet add package GroupDocs.Redaction
Package Manager
Install-Package GroupDocs.Redaction
NuGet Package Manager UI
ค้นหา “GroupDocs.Redaction” แล้วติดตั้งมัน.
การรับใบอนุญาต
เพื่อเริ่มต้นด้วยการทดลองใช้ฟรีหรือใบอนุญาตชั่วคราว, ทำตามขั้นตอนต่อไปนี้:
- เยี่ยมชม GroupDocs website เพื่อขอใบอนุญาตชั่วคราว.
- สำหรับตัวเลือกการซื้อ, ไปที่ pricing page.
เมื่อคุณมีไฟล์ใบอนุญาตแล้ว, นำไปใช้ในการตั้งค่าแอปพลิเคชันของคุณ:
RedactorSettings settings = new RedactorSettings("YOUR_LICENSE_PATH");
การเริ่มต้นพื้นฐาน
เพื่อเริ่มต้น GroupDocs.Redaction สำหรับการดำเนินการพื้นฐาน, ใช้โค้ดตัวอย่างต่อไปนี้:
using GroupDocs.Redaction;
using GroupDocs.Redaction.Options;
Redactor redactor = new Redactor("path/to/your/document.pdf", new LoadOptions(), settings);
คู่มือการนำไปใช้
การตั้งค่าการกำหนดค่า
ภาพรวม
ฟีเจอร์นี้กำหนดค่าเครือข่ายการค้นหาของคุณโดยใช้เส้นทางฐานและหมายเลขพอร์ต, สร้างพื้นฐานของระบบจัดการเอกสารของคุณ.
คำอธิบาย
SearchNetworkDeployment คือคลาสที่จัดการการปรับใช้โหนดการค้นหาทั่วเครือข่าย.
ขั้นตอนที่ 1: กำหนดเส้นทางฐานและพอร์ต
string basePath = @"YOUR_DOCUMENT_DIRECTORY/AdvancedUsage/Scaling/TextSearchInNetwork/";
int basePort = 49148; // Define your network's base port
ขั้นตอนที่ 2: กำหนดค่าเครือข่าย
ใช้เมธอด Configure เพื่อกำหนดค่าเครือข่ายการค้นหาด้วยเส้นทางและพอร์ตที่ระบุ:
using GroupDocs.Search.Scaling.Configuring;
Configuration configuration = ConfiguringSearchNetwork.Configure(basePath, basePort);
การปรับใช้โหนดเครือข่าย
ภาพรวม
ปรับใช้โหนดภายในเครือข่ายการค้นหาที่กำหนดค่าไว้เพื่อการค้นหาเอกสารแบบกระจาย.
คำอธิบาย
SearchNetworkNode แทนโหนดการค้นหาที่เป็นเอกเทศซึ่งสื่อสารกับโหนดหลัก.
ขั้นตอนที่ 1: เริ่มต้นการปรับใช้
using GroupDocs.Search.Scaling;
List<SearchNetworkNode> deployedNodes = new List<SearchNetworkNode>();
SearchNetworkNode[] nodes = SearchNetworkDeployment.Deploy(basePath, basePort, configuration);
deployedNodes.AddRange(nodes);
การสมัครรับเหตุการณ์สำหรับโหนดหลัก
ภาพรวม
สมัครรับเหตุการณ์บนโหนดหลักเพื่อเฝ้าติดตามและจัดการการทำงานของเครือข่ายอย่างมีประสิทธิภาพ.
คำอธิบาย
SearchNetworkNodeEvents ให้คอลแบ็กสำหรับการทำดัชนี, การดำเนินการค้นหา, และการจัดการข้อผิดพลาด.
ขั้นตอนที่ 1: ระบุโหนดหลัก
เลือกโหนดแรกเป็นโหนดหลักของคุณ:
using GroupDocs.Search.Scaling.Results;
SearchNetworkNode masterNode = nodes[0];
ขั้นตอนที่ 2: สมัครรับเหตุการณ์
สมัครรับเหตุการณ์โดยใช้:
SearchNetworkNodeEvents.Subscibe(masterNode);
การทำดัชนีเอกสาร
ภาพรวม
ทำดัชนีเอกสารเพื่อการดำเนินการค้นหาที่มีประสิทธิภาพ ขั้นตอนนี้สำคัญเพื่อให้เครือข่ายของคุณสามารถดึงข้อมูลที่จำเป็นได้อย่างรวดเร็ว.
คำอธิบาย
SearchIndex คืออ็อบเจ็กต์หลักที่เก็บโทเคนที่สามารถค้นหาได้และเมตาดาต้าสำหรับไฟล์ที่ทำดัชนีแต่ละไฟล์.
ขั้นตอนที่ 1: เพิ่มไดเรกทอรีเข้าสู่ดัชนี
using GroupDocs.Search.Options;
IndexingDocuments.AddDirectories(masterNode, @"YOUR_DOCUMENT_DIRECTORY/DocumentsPath");
ฟังก์ชันการค้นหา – การใช้งานพื้นฐาน
ภาพรวม
ดำเนินการค้นหาแบบพื้นฐานข้ามโหนดในเครือข่าย.
คำตอบโดยตรง
เรียก SearchNetwork.Query("your term") บนโหนดหลักเพื่อดึงเอกสารที่ตรงกันโดยทันที เมธอดจะคืนคอลเลกชันของอ็อบเจ็กต์ SearchResult ที่รวมเส้นทางไฟล์และคะแนนความเกี่ยวข้อง.SearchNetwork.Query เป็นเมธอดที่ดำเนินการค้นหาข้ามเครือข่ายทั้งหมดและคืนผลลัพธ์ที่ตรงกัน.
ขั้นตอนที่ 1: กำหนดพารามิเตอร์การค้นหา
string wordToSearch = "tempor";
bool useSynonymSearch = false;
bool isObjectForm = false;
List<NetworkFoundDocument> searchResults = SearchAll(masterNode, wordToSearch, useSynonymSearch, isObjectForm);
ฟังก์ชันการค้นหาขั้นสูง
ภาพรวม
ใช้เทคนิคการค้นหาขั้นสูงพร้อมพารามิเตอร์ที่ปรับแต่งได้เพื่อผลลัพธ์ที่แม่นยำยิ่งขึ้น.
คำตอบโดยตรง
สร้างเมธอดที่สร้างอ็อบเจ็กต์ SearchOptions, ตั้งค่าคุณสมบัติ UseFuzzySearch, Highlight, และ PageSize, จากนั้นส่งไปยัง SearchNetwork.QueryAdvanced. วิธีนี้จะให้ผลลัพธ์แบบแบ่งหน้า, ไฮไลท์, พร้อมการจับคู่แบบฟัซซี่ที่เปิดใช้งาน.SearchNetwork.QueryAdvanced เป็นเมธอดที่รันการค้นหาพร้อมตัวเลือกขั้นสูงเช่นการจับคู่แบบฟัซซี่และการแบ่งหน้า.
ขั้นตอนที่ 1: ดำเนินการเมธอดการค้นหาขั้นสูง
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
}
}
การทำลบข้อมูลในไฟล์ PDF
ภาพรวม
ปกป้องข้อมูลที่ละเอียดอ่อนได้โดยการลบข้อมูลในเนื้อหา PDF ก่อนที่จะจัดเก็บหรือแชร์.
คำตอบโดยตรง
สร้างอินสแตนซ์ Redactor, โหลด PDF เป้าหมาย, กำหนด RedactionPattern (เช่น regex ของ SSN), เรียก redactor.Apply(pattern), และสุดท้ายบันทึกเอกสารที่ลบข้อมูลแล้ว กระบวนการนี้ทำให้ข้อมูลส่วนบุคคลถูกลบอย่างถาวร.
คำอธิบาย
Redactor คือคลาสหลักใน GroupDocs.Redaction ที่ประมวลผลเอกสารและใช้กฎการลบข้อมูล.
ตัวอย่างกระบวนการ (ไม่มีโค้ดบล็อกใหม่)
- เริ่มต้น
Redactorด้วยใบอนุญาตของคุณ. - โหลด PDF ด้วย
redactor.Load("sample.pdf"). RedactionPatternแสดงกฎที่ระบุข้อความหรือรูปแบบที่ต้องการลบข้อมูล กำหนดรูปแบบเช่นnew RedactionPattern(@"\d{3}-\d{2}-\d{4}").- ดำเนินการ
redactor.Apply(pattern). - บันทึกผลลัพธ์ด้วย
redactor.Save("sample_redacted.pdf").
การประยุกต์ใช้งานจริง
กรณีการใช้งานจริง
- Legal Document Management – ค้นหาสัญญาอย่างมีประสิทธิภาพและลบข้อมูลระบุตัวลูกค้าโดยอัตโนมัติ.
- Healthcare Records – ค้นหาบันทึกผู้ป่วยพร้อมรับประกันการลบข้อมูล PHI ตามมาตรฐาน HIPAA.
- Corporate Compliance – สแกนการสื่อสารภายในเพื่อหาคำที่ห้ามใช้และลบข้อมูลก่อนทำการเก็บถาวร.
สรุป
คู่มือนี้ให้เส้นทางที่ครบถ้วนสำหรับ การสร้างดัชนีการค้นหา .NET ที่สามารถขยายได้, ทำดัชนีอย่างรวดเร็ว, และปกป้องข้อมูลด้วยการลบข้อมูล ด้วยการกำหนดค่าโหนด, ทำดัชนีเอกสาร, ใช้คุณสมบัติการค้นหาขั้นสูง, และทำการลบข้อมูล, นักพัฒนาสามารถปรับปรุงกระบวนการจัดการเอกสารได้อย่างมากในขณะที่รักษามาตรฐานความปลอดภัยอย่างเคร่งครัด.
คำถามที่พบบ่อย
Q: ฉันจะตั้งค่าเครือข่ายการค้นหาแบบกระจายใน .NET ด้วย GroupDocs อย่างไร?
A: กำหนดเส้นทางฐานและพอร์ต, จากนั้นเรียก SearchNetworkDeployment.Deploy() เพื่อเปิดใช้งานโหนดหลักและโหนดทำงานบนหลายเครื่อง.
Q: ฉันสามารถทำการค้นหาขั้นสูงด้วยพารามิเตอร์หลายอย่างใน GroupDocs ได้หรือไม่?
A: ใช่ — ใช้ SearchOptions เพื่อรวมการจับคู่แบบฟัซซี่, การสนับสนุนไวล์การ์ด, และการไฮไลท์ผลลัพธ์ในคำค้นเดียว.
Q: สามารถเฝ้าติดตามกิจกรรมของเครือข่ายบนโหนดหลักได้หรือไม่?
A: แน่นอน — สมัครรับ SearchNetworkNodeEvents เช่น IndexingCompleted และ QueryExecuted เพื่อรับข้อมูลเชิงลึกแบบเรียลไทม์.
Q: ฉันจะทำการลบข้อมูลในไฟล์ PDF ด้วย GroupDocs อย่างไร?
A: เริ่มต้น Redactor, โหลด PDF, กำหนดอ็อบเจ็กต์ RedactionPattern (regex หรือสตริงธรรมดา), เรียก Apply, และบันทึกเอกสารที่ทำความสะอาด.
Q: วิธีที่ง่ายที่สุดในการปรับปรุงประสิทธิภาพการค้นหาในสภาพแวดล้อมเครือข่ายคืออะไร?
A: ทำดัชนีเอกสารทั้งหมดก่อนการค้นหา, กระจายโหนดเพื่อใช้การประมวลผลแบบขนาน, และปรับแต่ง SearchOptions สำหรับการแคชและการแบ่งหน้า.
อัปเดตล่าสุด: 2026-06-12
ทดสอบกับ: GroupDocs.Search 23.9 for .NET, GroupDocs.Redaction 23.9 for .NET
ผู้เขียน: GroupDocs