solr 的安裝配置
Solr簡介
Solr是採用Java開發,基於Lucene的全文檢索伺服器,同時對其進行了擴充套件,提供了比Lucene更為豐富的查詢語言,同時實現了可配置、可擴充套件並對查詢效能進行了優化,並且提供了一個完善的功能管理介面,是一款非常優秀的全文搜尋引擎。 Solr是一個獨立的企業級搜尋應用伺服器,它對外提供類似於Web-Service的API介面,使用者可以通過http請求,向搜尋引擎伺服器提交一定格式的XML檔案,生成索引,也可以通過Http G Solret操作提出查詢請求,並得到XML格式的返回結果。Solr與Lucene的關係
Lucene是一套資訊檢索工具包,但是並不包含搜尋引擎系統Solr的簡單搭建執行
下載解壓後的目錄:配置步驟: 1.解壓solr-4.7.0.zip到你想到存放的路徑,比如當前使用者根目錄/Users/liuxun/solr-4.7.0
2.cmd開啟命令列視窗,進入/Users/liuxun/solr-4.7.0/example目錄
3.執行命令:java -jar start.jar
4.通過第三步以後,系統會啟動solr自帶的jetty伺服器,通過 http://localhost:8983/solr/便可訪問solr。
此時,solr已成功啟動
操作介面說明:
等等還有查詢 介面使用並不麻煩
命令測試管理索引
(一) 建立索引
此時solr已安裝並啟動,但是還沒有索引,只有建立好索引,搜尋才能有結果1、命令進入/solr-4.6.0/example/exampledocs目錄
2、執行命令:java -jar post.jar solr.xml monitor.xml,此時你已成功提交了2個solr文件
3、執行完第二步後,我們可以通過瀏覽器訪問:http://localhost:8983/solr/collection1/select?q=solr&wt=xml
如果你想匯入更多的文件,執行命令:java -jar post.jar *.xml
(二)更新索引 當重複執行命令:java -jar post.jar *.xml後,發現搜尋的結果沒有出現重複的資料,原因:example目錄下的schema.xml中指定了列id為uniqueKey(即:唯一),所以重複提交資料到索引庫時,id相同的資料會替換原來document中的資料。
如果想要得到重複的資料,可以通過修改exampledocs目錄下*.xml中id值的方式實現
(三)刪除索引 1、執行命 令:
java -Ddata=args -Dcommit=false -jar post.jar “<delete><id>SP2514N</id></delete>”,可以刪除id為 SP2514N的document
2、執行第一步後,再去搜索發現搜尋結果中還有id為SP2514N的資料,其實不是第一步沒有刪除成功,因為第一步的命令中-Dcommit=false,所以第一步的刪除操作沒有提交到索引(index)中。
3、在沒有開啟新的searcher之前,第一步刪除資料會一直存在於搜尋結果中,所以我們可以強制開啟一個新的searcher,執行命令:java -jar post.jar -
(四)查詢索引 solr通過http以get的方式進行搜尋資料,如:http://localhost:8983/solr/collection1/select?q=solr&wt=xml
q:查詢的關鍵詞(此時查詢的欄位是solrconfig.xml中指定的預設查詢欄位<str name=”df”>text</str>)
fl:搜尋結果返回的欄位
sort:排序
wt:搜尋結果返回格式
q=video&fl=name,id (return only name and id fields)
q=video&fl=name,id,score (return relevancy score as well)
q=video&fl=*,score (return all stored fields, as well as relevancy score)
q=video&sort=price desc&fl=name,id,price (add sort specification: sort by price descending)
q=video&wt=json (return response in JSON format)
使用SolrJ與Solr伺服器互動
我們要使用Solr服務,可以直接使用urlconnecion按照規則去呼叫Solr服務的介面,如果是web應用除了可以使用URLConnection在後臺呼叫外還可以使用AJAX技術(XmlHttpRequest)呼叫,但是需要自己封裝資料,解析資料,非常麻煩。 SolrJ提供了針對各種客戶端的API,可以省去這些繁瑣的步驟,面向API程式設計 直接與Solr伺服器進行互動。
SolrJ的簡介和使用:
solrj是solr的java客戶端,用於訪問solr索引庫。它提供了新增、刪除、查詢、優化等功能。
Jar 包位置
解壓目錄:
它是整合到solr壓縮包裡的,解壓檔案後,有個目錄/dist/,裡面就存放了solrj所用到的jar(/dist/solrj-lib/*.jar和/dist/*.jar),把這些所有的jar都新增到專案中的classpath就可以直接開發了。 Product.java
- publicclass Product {
- //Field中的value要遵循核心中schema中<fields>的規則
- @Field(value="id")
- private String id;
- @Field(value="name")
- private String name;
- @Field(value="description")
- private String desc;
- @Field(value="price")
- privatefloat price;
- // setter getter
- // ......
- }
- package liuxun.solrj.dao;
- import java.io.IOException;
- import java.util.List;
- import java.util.Map;
- import org.apache.solr.client.solrj.SolrQuery;
- import org.apache.solr.client.solrj.SolrServer;
- import org.apache.solr.client.solrj.SolrServerException;
- import org.apache.solr.client.solrj.impl.HttpSolrServer;
- import org.apache.solr.client.solrj.response.QueryResponse;
- import org.apache.solr.common.SolrDocument;
- import org.apache.solr.common.SolrDocumentList;
- import org.apache.solr.common.SolrInputDocument;
- import liuxun.solrj.bean.Product;
- /**
- * 使用solrJ 向solr 提交請求,增刪改查, solrJ 底層頁是傳送http 協議...
- *
- * @author liuxun
- */
- publicclass SolrDao {
- // 在solr 當中有一些預設的欄位和動態欄位規則,配置在檔案/example/solr/collection1/conf/schema.xml
- // 新增預設索引屬性
- publicvoid addDefaultField() throws SolrServerException, IOException {
- // 宣告要連線solr伺服器的地址
- String url = "http://localhost:8983/solr";
- SolrServer solr = new HttpSolrServer(url);
- SolrInputDocument doc = new SolrInputDocument();
- doc.addField("id", "預設情況下必須新增的欄位,用來區分文件的唯一標識");
- doc.addField("name", "預設的名稱屬性欄位");
- doc.addField("description", "預設的表示描述資訊的欄位");
- solr.add(doc);
- solr.commit();
- }
- // 新增動態索引屬性
- publicvoid addDynamicField() throws SolrServerException, IOException {
- // 宣告要連線solr伺服器的地址
- String url = "http://localhost:8983/solr";
- SolrServer solr = new HttpSolrServer(url);
- SolrInputDocument doc = new SolrInputDocument();
- doc.addField("id", "adwweqwewe");
- doc.addField("nam_s", "動態欄位的StringField型別格式為*_s");
- doc.addField("desc_s", "動態欄位的TextField型別格式為*_t");
- solr.add(doc);
- solr.commit();
- }
- // 新增索引
- publicvoid addIndex(Product product) throws SolrServerException, IOException {
- // 宣告要連線solr伺服器的地址
- String url = "http://localhost:8983/solr";
- SolrServer solr = new HttpSolrServer(url);
- solr.addBean(product);
- solr.commit();
- }
- // 更新索引
- publicvoid updateIndex(Product product) throws IOException, SolrServerException {
- // 宣告要連線solr伺服器的地址
- String url = "http://localhost:8983/solr";
- SolrServer solr = new HttpSolrServer(url);
- solr.addBean(product);
- solr.commit();
- }
- // 刪除索引
- publicvoid delIndex(String id) throws SolrServerException, IOException {
- // 宣告要連線solr伺服器的地址
- String url = "http://localhost:8983/solr";
- SolrServer solr = new HttpSolrServer(url);
- solr.deleteById(id);
- // solr.deleteByQuery("id:*");
- solr.commit();
- }
- // 查詢索引
- publicvoid findIndex() throws SolrServerException {
- // 宣告要連線solr伺服器的地址
-
String url =
相關推薦
solr安裝配置拼音分詞器
1.準備jar包 將ik的jar包、pinyin4j-2.5.0.jar、solr-4.9.0\contrib\analysis-extras\lucene-libs\lucene-analyzers-smartcn-4.9.0.jar拷貝到%TOMCAT_HOME%\w
Solr安裝配置
1 概述 . Apache Solr是一個功能強大的搜尋伺服器,它支援REST風格API。Solr是基於Lucene的,Lucene 支援強大的匹配能力,如短語,萬用字元,連線,分組和更多不同的資料型別。它使用 Apache Zookeeper特別針
solr的安裝配置與helloworld
配置中文 啟動tomcat com war包 執行 package .text 文件 rdo 一、安裝solr 1.安裝jdk環境和tomcat 2.解壓solr壓縮包,這裏我解壓到opt目錄下 3.把/usr/local/solr-4.8.0/dist/solr-4.8.
Solr - 無*.war版solr安裝及配置
新建 9.png quick none sources res .com eight spl 1.將 solr 壓縮包中*\server\solr-webapp\文件夾下有個webapp文件夾,將之復制到Tomcat\webapps\目錄下,並改成solr (名字隨意,通過
(一)Solr——簡介和安裝配置
str 服務 開源項目 一個 war prop post 沒有 系統安裝 1. solr簡介 1.1 Solr是什麽 Solr是apache的頂級開源項目,它是使用java開發 ,基於lucene的全文檢索服務器。 Solr和lucene的版本是同步更新的,最新的版本
solr-伺服器安裝配置
一:安裝solr伺服器 1.匯入安裝包到 /usr/local/solr/singleSolr目錄下 解壓移動到tomcat-solr目錄 2.拷貝war到tomcat/webapps cp solr-4.10.3/example/webapps/solr.war tomcat-sol
solr的基礎安裝配置和使用以及solrj的簡介
Solr 全文檢索伺服器 1 前言 今天博主將會從solr的簡單介紹,與lucene的區別開始為大家講解,圍繞solr的安裝配置,基本使用進行講解以及後面會涉及solrJ的使用! 如果對大家有用的話,可以關注,點贊文章以及歡迎評論喔~ 2 Solr介紹 2.1
Solr安裝及中文分詞器配置
1、上傳並解壓Solr、Tomcat 2、複製Solr到Tomcat cp -r solr-7.3.1/server/solr-webapp/webapp /home/tomcat/webapps/solr 3、複製jar包到Tomcat下的Solr cp -
solr安裝到Linux及其ik分詞器配置(傻瓜操作複製貼上)
為避免安裝程式之間的互相錯亂,新建了一個目錄,並在其目錄下進行solr的安裝,下面的操作都是在該目錄下進行命令操作的。建立目錄命令:mkdir 目錄名1.匯入solr和tomcat的壓縮包到Linux伺服器中,並解壓解壓命令:tar -zxvf 要解壓的壓縮包名2.開啟sol
Solr 安裝及配置
什麼是solr Solr 是Apache下的一個頂級開源專案,採用Java開發,它是基於Lucene的全文搜尋伺服器。Solr提供了比Lucene更為豐富的查詢語言,同時實現了可配置、可擴充套件,並
solr 的安裝配置
Solr簡介 Solr是採用Java開發,基於Lucene的全文檢索伺服器,同時對其進行了擴充套件,提供了比Lucene更為豐富的查詢語言,同時實現了可配置、可擴充套件並對查詢效能進行了優化,並且提供了一個完善的功能管理介面,是一款非常優秀的全文搜尋引擎。 Solr是一個獨立的企業級搜尋應用伺服器,它
solr與中文分詞器的安裝配置
準備環境: solr版本:Solr4.10.3 jdk:1.8 Tomcat:apache-tomcat-7.0.59 一、solr和tomcat整合使用: 1.solr和tomcat整合 1、將Solr4.10.3 壓縮包內的dist目錄下的solr-4.10.3.w
Windows下安裝配置Solr (tomcat7.0)
下面介紹Windows下安裝配置Solr,與在Linux下類似。 1. 安裝準備 1.1. 下載tomcat 7 我是下綠色版,即zip的,x64位(因伺服器是x64) apache-tomcat-7.0.32-windows-x64.zip 1.2. 安裝tom
Linux - vim安裝 配置與使用
格式 only ctx net height border term mona 方便 一 Vim 簡單介紹 曾經一直用vi,近期開始使用 vim,以下將兩者做一下比較。 vi和vim都是多模式編輯器,不同的是vim 是vi的升級版本號,它不僅兼容vi的全部指令,並且
Tomcat8.5的安裝配置
tomcat安裝配置1. 安裝JDKJDK官網地址:http://www.oracle.com/technetwork/java/javase/downloads/index.html點擊"JDK DOWNLOAD"進入下載頁面下載JDK軟件包,註意需選中"Accept License Agreement"才
tomcat免安裝配置
base ice install file log 安裝配置 image images nbsp 1、首先設置環境變量CATALINA_BASE、CATALINA_HOME: 2、設置好環境變量後,打開bin目錄下的startup.jar,[email pro
CentOS6上新增硬盤並安裝配置grub文件
centos6上新增硬盤並安裝配置grub文件實例:為運行於虛擬機上的CentOS 6添加一塊新硬件,提供兩個主分區;(1) 為硬盤新建兩個主分區;並為其安裝grub; (2) 為硬盤的第一個主分區提供內核和ramdisk文件; 為第二個分區提供rootfs; (3) 為rootfs提供bash、ls、cat
天兔(Lepus)監控操作系統(OS)安裝配置
pid install style 主機 share net-snmp weight ecn 安裝 http://suifu.blog.51cto.com/9167728/1770703 監控和被監控端都要安裝和配置snmp: [[email protecte
天兔(Lepus)監控系統慢查詢分析平臺安裝配置
fig align fxaa comm one 平臺 back ria pri 轉http://suifu.blog.51cto.com/9167728/1770672 被監控端要安裝pt工具 1 2 3 4 [[email protec
Redis3.2.8集群安裝配置
redis3.2.8集群安裝配置具體就不做介紹了,直接開始安裝準備環境:使用2臺centos服務器,每臺機器上部署3個實例,集群為三個主節點與三個從節點: 第一臺 192.168.1.107:7000 192.168.1.107:7001 192.168.1.107:7002 第二臺 192.168.