1. 程式人生 > >開放原始碼的全文檢索引擎Lucene(轉載)

開放原始碼的全文檢索引擎Lucene(轉載)

面對已經存在的商業全文檢索引擎,Lucene也具有相當的優勢。首先,它的開發原始碼發行方式(遵守Apache Software License[12]),在此基礎上程式設計師不僅僅可以充分的利用Lucene所提供的強大功能,而且可以深入細緻的學習到全文檢索引擎製作技術和麵相物件程式設計的實踐,進而在此基礎上根據應用的實際情況編寫出更好的更適合當前應用的全文檢索引擎。在這一點上,商業軟體的靈活性遠遠不及Lucene。其次,Lucene秉承了開放原始碼一貫的架構優良的優勢,設計了一個合理而極具擴充能力的面向物件架構,程式設計師可以在Lucene的基礎上擴充各種功能,比如擴充中文處理能力,從文字擴充到
HTMLPDF[13]等等文字格式的處理,編寫這些擴充套件的功能不僅僅不復雜,而且由於Lucene恰當合理的對系統裝置做了程式上的抽象,擴充套件的功能也能輕易的達到跨平臺的能力。最後,轉移到apache軟體基金會後,藉助於apache軟體基金會的網路平臺,程式設計師可以方便的和開發者、其它程式設計師交流,促成資源的共享,甚至直接獲得已經編寫完備的擴充功能。最後,雖然Lucene使用Java語言寫成,但是開放原始碼社群的程式設計師正在不懈的將之使用各種傳統語言實現(例如.net framework[14]),在遵守Lucene索引檔案格式的基礎上,使得Lucene能夠執行在各種各樣的平臺上,系統管理員可以根據當前的平臺適合的語言來合理的選擇。