Solr教學


Solr是一個開源搜尋平台,用於構建搜尋應用程式。 它建立在Lucene(全文搜尋引擎)之上。 Solr是企業級的,快速的和高度可延伸的。 使用Solr構建的應用程式非常複雜,可提供高效能。

為了在CNET網路的公司網站上新增搜尋功能,Yonik Seely於2004年建立了Solr。並在2006年1月,它成為Apache軟體基金會下的一個開源專案。並於2016年發布最新版本Solr 6.0,支援並行SQL查詢的執行。

Solr可以和Hadoop一起使用。由於Hadoop處理大量資料,Solr幫助我們從這麼大的源中找到所需的資訊。不僅限於搜尋,Solr也可以用於儲存目的。像其他NoSQL資料庫一樣,它是一種非關係資料儲存和處理技術。

總之,Solr是一個可延伸的,可部署,搜尋/儲存引擎,優化搜尋大量以文字為中心的資料。

Apache Solr特點

SolrLucene的Java API的包裝。因此,使用Solr,可以利用Lucene的所有功能。 讓我們來看看Solr的一些最突出的特點 -

  • Restful APIs ? 要與Solr通訊,並非一定需要有Java程式設計技能。相反,您可以使用restful服務與它通訊。可使用檔案格式(如XMLJSON.CSV)在Solr中作為輸入文件,並以相同的檔案格式獲取結果。
  • 全文搜尋 - Solr提供了全文搜尋所需的所有功能,例如令牌,短語,拼寫檢查,萬用字元和自動完成。
  • 企業準備 - 根據企業/組織的需要,Solr可以部署在任何型別的系統(大或小),如獨立,分散式,雲等。
  • 靈活和可延伸 - 通過擴充套件Java類並相應組態,可以輕鬆地客製化Solr的元件。
  • NoSQL資料庫 - Solr也可以用作巨量資料量級的NOSQL資料庫,可以沿著叢集分布搜尋任務。
  • 管理介面 - Solr提供了一個易於使用,使用者友好,功能強大的使用者介面,使用它可以執行所有可能的任務,如管理紀錄檔,新增,刪除,更新和搜尋文件。
  • 高度可延伸 - 在使用Solr與Hadoop時,我們可以通過新增副本來擴充套件其容量。
  • 以文字為中心並按相關性排序 - Solr主要用於搜尋文字文件,結果根據與使用者查詢的相關性按順序傳送。

Lucene不同,在使用Apache Solr時,可不需要具有Java程式設計技能。它提供了一個完整的準備部署服務,以構建一個自動完成的搜尋框,Lucene是不提供的。 使用Solr可以擴充套件,分配和管理大規模(巨量資料)應用程式的索引。

Lucene在搜尋應用程式

Lucene是簡單但強大的基於Java的搜尋庫。 它可以在任何應用程式中用於新增搜尋功能。 Lucene是一個可延伸的高效能庫,用於索引和搜尋幾乎任何型別的文字。 Lucene庫提供任何搜尋應用程式所需的核心操作,例如索引和搜尋。

如果有一個具有大量資料的入口網站或平台,那麼我們將很可能需要在門戶/平台中提取一個搜尋引擎從巨大的資料庫中提取相關資訊。Lucene作為任何搜尋應用程式的核心,提供與索引和搜尋相關的重要操作。