solr重建部分索引 學習筆記10 solr(二)

2021-10-12 18:37:28 字數 2060 閱讀 8996

搭建solr集群以及簡單測試並使用集群做乙個小案例

solrcloud:solrcloud是solr提供的分布式搜尋方案,當需要大規模,容錯,分布式索引和檢索能力時使用solrcloud。當乙個系統的索引資料量少的時候是不需要使用solrcloud的,當索引量很大,搜尋請求併發很高,這時需要使用solrcloud。

solrcloud是基於solr和zookeeper的分布式搜尋方案,它的主要思想是使用zookeeper作為集群的配置資訊中心,具有以下功能:集中式的配置資訊、自動容錯、近實時搜尋、查詢時自動負載均衡。

solr集群結構圖:

本次集群搭建類似如下圖的偽集群:

安裝環境:需要先搭建好乙個zookeeper集群(以前搭建過步驟省略),建立4個tomcat,修改埠。使用上次搭建好的單機版solr作為集群的節點使用。先在/usr/local/下建立資料夾mkdir solrcloud

安裝4個tomcat並將tomcat和solr 的索引庫拷貝到solrcloud中:

修改solr服務中指向solr索引庫的路徑:

上傳索引庫配置檔案:在作為節點的單機版solr目錄中,目錄和使用的上傳工具如下:

在該目錄下使用下邊的命令完成上傳:

./zkcli.sh -zkhost 192.168.***.***:port,192.168.***.***:port,192.168.***.***:port -cmd upconfig -confdir /usr/local/solrcloud/solrhome1/solrsingle/solr/collection1/conf -confname solrcloudconf

上傳完成後在zookeeper集群中可以檢視:

接下來修改solrhome下的solr.xml檔案,指定當前例項執行的ip和埠,4個都要修改:

啟動tomcat,比單機版多了一項:

建立新的索引庫並分片:建立新的索引命令如下:

刪除原來的索引命令如下:

結果如下:

使用solrj測試向solr集群中新增、刪除、查詢文件,首先新增solrj的依賴:

新增文件**如下:

刪除文件**如下:

查詢文件**如下:

solr+ssm案例:將資料庫中的部分資料匯入到solr集群的索引庫中,提供乙個搜尋頁面,完成資料搜尋,並提供搜尋關鍵字高亮顯示功能:

首先建立war工程,新增需要用到的依賴,配置資源打包:

spring整合solr:

需要注意,value中的值可以使用properties檔案來寫,也可以直接寫,如果使用properties檔案的話,有多個properties檔案的話需要加入下面屬性,否則可能出現讀取不到值的情況:

**寫完之後測試:

結果如下:

c 索引器學習筆記1

索引器提供了一種對類內部元素的訪問方法,通過索引器,我們可以方便的控制對元素的訪問,它其實就是帶引數的屬性。索引器一般用在類內部有陣列的情況,不論是基本資料型別陣列,還是類陣列 主要靠arraylist實現 先看個簡單的例子,它實現了單一整形輸入引數的索引器。class a private int ...

mysql學習筆記 索引優化 1 索引失效原因

索引失效應該避免 案例 索引失效 demo 資料 drop table if exists staffs create table staffs id int 11 not null auto increment,name varchar 24 not null comment 姓名 age int...

Pandas學習筆記1(序列部分)

人生苦短,我用python import pandas as pd import numpy as np 序列 series 可以理解成r語言中的向量,python中的列表 元組的高階版本。為什麼說是高階,因為序列與上期介紹的一維陣列類似,具有更好的廣播效應,既可以與乙個標量進行運算,又可以進行元素...