開發人員都應該知道的開源搜尋引擎

發表於2011-06-02

本文介紹10個開源搜尋引擎,它們具有不同的特性,總之都很強大。對於支援開源的開發人員來說,可以瞭解一下。

1Constellio

Constellio 是一個開源的搜尋解決方案,適合企業級的搜尋。基於 Apache Solr 專案構建,使用 Lucene 做為搜尋引擎,並提供基於 Web 的網頁和文件的檢索。可選擇文件型別、資料夾以及檔名進行檢索。

2、SearchBlox

SearchBlox 是一個企業搜尋解決方案,基於 Lucene 構建。可進行快速釋出、輕鬆管理以及支援雲環境。這是與 Google Mini 最接近的一款搜尋產品。

3、Apache Solr

Apache Solr 是一個開源的搜尋伺服器。Solr 使用 Java 語言開發,主要基於 HTTP 和 Apache Lucene 實現。Apache Solr 中儲存的資源是以 Document 為物件進行儲存的。每個文件由一系列的 Field 構成,每個 Field 表示資源的一個屬性。Solr 中的每個 Document 需要有能唯一標識其自身的屬性,預設情況下這個屬性的名字是 id,在 Schema 配置檔案中使用:
id進行描述。

Solr是一個高效能,採用Java5開發,基於Lucene的全文搜尋伺服器。文件通過Http利用XML加到一個搜尋集合中。查詢該集合也 是通過 http收到一個XML/JSON響應來實現。它的主要特性包括:高效、靈活的快取功能,垂直搜尋功能,高亮顯示搜尋結果,通過索引複製來提高可用性,提 供一套強大Data Schema來定義欄位,型別和設定文字分析,提供基於Web的管理介面等。

 4、Sphinx

Sphinx是一個基於SQL的全文檢索引擎,可以結合MySQL,PostgreSQL做全文搜尋,它可以提供比資料庫本身更專業的搜尋功能,使得應用程式更容易實現專業化的全文檢索。Sphinx特別為一些指令碼語言設計搜尋API介面,如PHP,Python,Perl,Ruby等,同時為MySQL也設計了一個儲存引擎外掛。

Sphinx 單一索引最大可包含1億條記錄,在1千萬條記錄情況下的查詢速度為0.x秒(毫秒級)。Sphinx建立索引的速度為:建立100萬條記錄的索引只需 3~4分鐘,建立1000萬條記錄的索引可以在50分鐘內完成,而只包含最新10萬條記錄的增量索引,重建一次只需幾十秒。

5、Google Search for WordPress

地址: http://wordpress.org/extend/plugins/google-search/

如果你想使用 Google search API 執行更快,這個WordPress外掛提供了API的實現。

wordPress搜尋外掛還包括:Search APIRelevanssiSearch EverythingSearch Unleashed

6、其他開源搜尋引擎

主頁: http://www.dataparksearch.org/ – 是個高效能的開源基於web的搜尋引擎,開源許可採用GNU。

URL: http://www.open-search-server.com/ – 文字搜尋引擎,基於開源技術建立,OpenSearchServer是個高效能的軟體,你可以嵌入到自己的應用中。

URL: http://openfts.sourceforge.net/ – OpenFTS 是個開源文字搜尋引
擎,基於PostgreSQL,提供資料線上索引和資料庫搜尋的相關性排名。 關閉與資料庫的整合允許使用後設資料來限制搜尋結果。

URL: http://www.elasticsearch.org/ – Elastic Search具有非常先進的分散式模型,通過本地JSON,擴充很多的高階搜尋功能,所有都是通過JSON層顯示。

原文:Paul Anthony

 

相關文章