大數(shù)據(jù)是一個包括一切的術(shù)語,指的是數(shù)據(jù)集很大很復(fù)雜,他們需要特別設(shè)計的硬件和軟件工具。數(shù)據(jù)集通常是 T 或者更大級別。這些數(shù)據(jù)集從各種各樣的來源創(chuàng)建,包括傳感器,收集氣象信息,公開可用的信息,如雜志、報紙、文章。還包括購買交易記錄、網(wǎng)絡(luò)日志、醫(yī)療記錄、軍事偵察、視頻和圖像檔案和大規(guī)模的電子商務(wù)等等。 要分析這些數(shù)據(jù)需要專門的軟硬件,本文介紹 7 個開源的搜索引擎適合用于大數(shù)據(jù)處理: Lucene 是apache軟件基金會一個開放源代碼的全文檢索引擎工具包,是一個全文檢索引擎的架構(gòu),提供了完整的查詢引擎和索引引擎,部分文本分析引擎。 Lucene的目的是為軟件開發(fā)人員提供一個簡單易用的工具包,以方便的在目標系統(tǒng)中實現(xiàn)全文檢索的功能,或者是以此為基礎(chǔ)建立起完整的全文檢索引擎。 特性:
2. Apache Solr Apache Solr (讀音: SOLer) 是一個開源的搜索服務(wù)器。Solr 使用 Java 語言開發(fā),主要基于 HTTP 和 Apache Lucene 實現(xiàn)。Apache Solr 中存儲的資源是以 Document 為對象進行存儲的。每個文檔由一系列的 Field 構(gòu)成,每個 Field 表示資源的一個屬性。Solr 中的每個 Document 需要有能唯一標識其自身的屬性,默認情況下這個屬性的名字是 id,在 Schema 配置文件中使用:
Elastic Search 是一個基于Lucene構(gòu)建的開源,分布式,RESTful搜索引擎。設(shè)計用于云計算中,能夠達到實時搜索,穩(wěn)定,可靠,快速,安裝使用方便。支持通過HTTP使用JSON進行數(shù)據(jù)索引。
4. Sphinx Sphinx是一個基于SQL的全文檢索引擎,可以結(jié)合MySQL,PostgreSQL做全文搜索,它可以提供比數(shù)據(jù)庫本身更專業(yè)的搜索功能,使得應(yīng)用程序更容易實現(xiàn)專業(yè)化的全文檢索。Sphinx特別為一些腳本語言設(shè)計搜索API接口,如PHP,Python,Perl,Ruby等,同時為MySQL也設(shè)計了一個存儲引擎插件。
5. Xapian Xapian是一個用C 編寫的全文檢索程序,他的作用類似于Java的lucene。盡管在Java世界lucene已經(jīng)是標準的全文檢索程序,但是C/C 世界并沒有相應(yīng)的工具,而Xapian則填補了這個缺憾。
6. Nutch Nutch 是一個開源Java 實現(xiàn)的搜索引擎。它提供了我們運行自己的搜索引擎所需的全部工具。包括全文搜索和Web爬蟲。 盡管Web搜索是漫游Internet的基本要求, 但是現(xiàn)有web搜索引擎的數(shù)目卻在下降. 并且這很有可能進一步演變成為一個公司壟斷了幾乎所有的web搜索為其謀取商業(yè)利益.這顯然 不利于廣大Internet用戶. Nutch為我們提供了這樣一個不同的選擇. 相對于那些商用的搜索引擎, Nutch作為開放源代碼 搜索引擎將會更加透明, 從而更值得大家信賴. 現(xiàn)在所有主要的搜索引擎都采用私有的排序算法, 而不會解釋為什么一個網(wǎng)頁會排在一個特定的位置. 除此之外, 有的搜索引擎依照網(wǎng)站所付的 費用, 而不是根據(jù)它們本身的價值進行排序. 與它們不同, Nucth沒有什么需要隱瞞, 也沒有 動機去扭曲搜索的結(jié)果. Nutch將盡自己最大的努力為用戶提供最好的搜索結(jié)果. Nutch 致力于讓每個人能很容易, 同時花費很少就可以配置世界一流的Web搜索引擎. 為了完成這一宏偉的目標, Nutch必須能夠做到:
7. LGTE LGTE 是基于 Lucene 提供了擴展 Lucene API 用于集成很多服務(wù),例如片段生成、查詢擴展等等,并提供了一組單元測試。 特性包括:
via linuxlinks |
|