9個基於Java的搜尋引擎架構

來源:互聯網
上載者:User

標籤:object   垂直   搜尋引擎   center   顯示   more   keyword   官方網站   事務   

在這個資訊相當繁雜的互連網時代,我們已經學會了如何利用搜尋引擎這個強大的利器來找尋目標資訊,比如你會在Google上搜尋情人節如何討女朋友歡心,你也會在百度上尋找正規的整容醫學機構(儘管有很大一部分廣告騙子)。那麼如果在你自己開發的網站系統中需要能讓使用者搜尋一些重要的資訊,並且能以結構化的結果展現給使用者,下面分享的這9款Java搜尋引擎架構或許就可以協助到你了。

1、Java 全文檢索搜尋引擎架構 Lucene

毫無疑問,Lucene是目前最受歡迎的Java全文檢索搜尋架構,準確地說,它是一個全文檢索索引引擎的架構,提供了完整的查詢引擎和索引引擎,部分文本分析引擎。Lucene為開發人員提供了相當完整的工具包,可以非常方便地實現強大的全文檢索索引功能。下面有幾款搜尋引擎架構也是基於Lucene實現的。

官方網站:http://lucene.apache.org/

2、開源Java搜尋引擎Nutch

Nutch 是一個開源Java實現的搜尋引擎。它提供了我們運行自己的搜尋引擎所需的全部工具。包括全文檢索搜尋和Web爬蟲。

利用Nutch,你可以做到以下這些功能:

  • 每個月取幾十億網頁
  • 為這些網頁維護一個索引
  • 對索引檔案進行每秒上千次的搜尋
  • 提供高品質的搜尋結果
  • 以最小的成本運作

官方網站:http://nutch.apache.org/

3、分布式搜尋引擎 Elasticsearch

Elasticsearch就是一款基於Lucene架構的分布式搜尋引擎,並且也是一款為數不多的基於JSON進行索引的搜尋引擎。Elasticsearch特別適合在雲端運算平台上使用。

官方網站:http://www.elasticsearch.org/

4、即時分布式搜尋引擎 Solandra

Solandra 是一個即時的分布式搜尋引擎,基於 Apache Solr 和 Apache Cassandra 構建。

其特性如下:

  • 支援Solr的大多數預設特性 (search, faceting, highlights)
  • 資料複製,分區,緩衝及壓縮這些都由Cassandra來進行
  • Multi-master (任意結點都可供讀寫)
  • 即時性高,寫操作完成即可讀到
  • Easily add new SolrCores w/o restart across the cluster 輕鬆添加及重啟結點

官方網站:https://github.com/tjake/Solandra

5、IndexTank

IndexTank是一套基於Java的索引-即時全文檢索搜尋引擎實現,IndexTank有以下幾個特點:

  • 索引更新即時生效
  • 地理位置搜尋
  • 支援多種用戶端語言
    Ruby, Rails, Python, Java, PHP, .NET & more!
  • 支援靈活的排序與評分控制
  • 支援自動完成
  • 支援面搜尋(facet search)
  • 支援匹配高亮
  • 支援海量資料擴充(Scalable from a personal blog to hundreds of millions of documents! )
  • 支援動態資料

官方網站:https://github.com/linkedin/indextank-engine

6、搜尋引擎 Compass

Compass是一個強大的,事務的,高效能的對象/搜尋引擎映射(OSEM:object/search engine mapping)與一個Java持久層架構.Compass包括:

  • 搜尋引擎抽象層(使用Lucene搜尋引薦)
  • OSEM (Object/Search Engine Mapping) 支援
  • 交易管理
  • 類似於Google的簡單關鍵字查詢語言
  • 可擴充與模組化的架構
  • 簡單的API

官方網站:http://www.compass-project.org/

7、Java全文檢索搜尋伺服器 Solr

Solr也是基於Java實現的,並且是基於Lucene實現的,Solr的主要特性包括:高效、靈活的緩衝功能,垂直搜尋功能,高亮顯示搜尋結果。值得注意的是,Solr還提供一款很棒的Web介面來管理索引的資料。

官方網站:http://lucene.apache.org/solr/

8、Lucene圖片搜尋 LIRE

LIRE是一款基於Java的圖片搜尋方塊架,其核心也是基於Lucene的,利用該索引就能夠構建一個基於內容的映像檢索(content- based image retrieval,CBIR)系統,來搜尋相似的映像。

官方網站:http://www.Semanticmetadata.net/lire/

9、全文本搜尋引擎 Egothor

Egothor是一個用Java編寫的開源而高效的全文本搜尋引擎。藉助Java的跨平台特性,Egothor能應用於任何環境的應用,既可配置為單獨的搜尋引擎,又能用於你的應用作為全文檢索索引之用。

官方網站:http://www.egothor.org/cms/

9個基於Java的搜尋引擎架構

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.