二、solr的增量更新
solr是apache門下的一款企業級的,快速的和高度可擴充套件的開源搜尋平台,用於構建搜尋應用程式。 它建立在lucene(全文搜尋引擎)之上, 使用solr構建的應用程式非常複雜,可提供高效能。它不僅限於搜尋,solr也可以用於儲存目的。像其他nosql資料庫一樣,它是一種非關係資料儲存和處理技術。
<
!--新增如下配置 增加resulthandler配置 --
>
"/dataimport"
class
="org.apache.solr.handler.dataimport.dataimporthandler"
>
"defaults"
>
"config"
>data-config.xml<
/str>
<
/lst>
<
/requesthandler>
"jdbcdatasource" driver=
"com.mysql.jdbc.driver"
url=
"jdbc:mysql:"
user=
"root"
password=
"111111"
/>
"protest" query="
select
p.id,
p.name,
price,
p.merchant_id merchantid,
m.name merchantname
from
product p
inner join merchant m on p.merchant_id = m.id;"
deltaquery="
select
p.id,
p.name,
price,
p.merchant_id merchantid,
m.name merchantname
from
product p
inner join merchant m on p.merchant_id = m.id;">
<
!--查詢的資料和資料庫索引意義對應column 是查詢的字段name 是solr索引對應的字段--
a.資料庫建表事項 :
如果只涉及新增,與修改業務,那麼資料庫裡只需額外有乙個timpstamp欄位就可以了,預設值為當前系統時間,current_timestamp
如果還涉及刪除業務,那麼資料裡就需額外再多新增乙個欄位isdelete,int型別的用0,1來標識,此條記錄是否被刪除
b.dataimporter.properties檔案:
這個配置檔案很重要,它是用來記錄當前時間與上一次修改時間的,通過它能夠找出,那些,新新增的,修改的,或刪除的記錄標識,此條記錄是否被刪除的記錄
c.data-config.xml檔案:
1. transformer 格式轉化:htmlstriptransformer 索引中忽略html標籤
2. query:查詢資料庫表符合記錄資料
3. deltaquery:增量索引查詢主鍵id(注意這個只能返回id欄位)
4. deltaimportquery:增量索引查詢匯入資料
5. deletedpkquery:增量索引刪除主鍵id查詢 (注意這個只能返回id欄位)
data-config.xml檔案 :
<
?xml version=
"1.0" encoding=
"utf-8"
?>
<
!--資料來源--
>
"jdbcdatasource"
driver=
"com.mysql.jdbc.driver"
url=
"jdbc:mysql:///xiang"
user=
"root"
password=
"root"
/>
"solrtest"
query=
"select fid,ftime,fcontent,ftitle,flastupdatetime from solrtest where flag = '0'"
deltaimportquery =
"select fid,ftime,fcontent,ftitle,flastupdatetime from solrtest where fid = '$'"
deltaquery =
"select fid from solrtest where flastupdatetime > '$' and flag = '0'"
deletedpkquery =
"select fid from solrtest where flag = '1'"
>
<
!--查詢的資料和資料庫索引意義對應column 是查詢的字段name 是solr索引對應的字段--
>
"fid" name=
"fid"
/>
"ftitle" name=
"ftitle"
/>
"fcontent" name=
"fcontent"
/>
"flastupdatetime" name=
"flastupdatetime"
/>
"ftime" name=
"ftime"
/>
<
/entity>
<
/document>
<
/dataconfig>
最後進入你的客戶端進行更 solr的全量更新和增量更新
1.solr 的全量更新 1.core conf 目錄下的 solrconfig.xml,新增如下配置 data config.xml 2 在core conf 目錄下的新建 data config.xml 檔案,新增如下配置 3.修改core conf 目錄下 managed schema.xml...
solr全量更新與變數更新
資料如果保留多份,就會存在一致性問題,就需要同步,同步分為兩大類 全量更新和增量更新。例如 資料庫中的資料匯入solr快取中就是更新。下圖便是全量更新 增量的基礎是全量,就是你要使用某種方式先把全量資料拷貝過來,然後再採用增量方式同步更新。增量的話,就是指抓取某個時刻 更新時間 或者檢查點 chec...
sorl增量更新和全量更新粗略配置
全量更新 1.在sorlconfig.xml配置data config.xml dataimport class solr.dataimporthandler defaults config data config.xml str lst requesthandler 2.new code conf...