solr 配置mysql数据源_solr data-config.xml配置文件的见解mysql数据源
陸續完善:
檢查一下dataSource中的url
一般都能用。如果不能用 將后面的編碼格式去掉 試試看
data-config.xml配置文件
deltaImportQuery="select id,'%Y-%m-%d') last_modified,id) as char) as dockey from product where cast(concat('p',id) as char)='${dih.delta.dockey}'"
deltaQuery="select cast(concat('p',id) as char) in (select cast(concat('p',id) as char) from product_class where
last_modified>'${dih.last_index_time}') or last_modified > '${dih.last_index_time}'"> //注意這里才是entity的結束括號
解釋說明
(1):query中select哪些字段 a.為產品product表中哪些字段需要作為搜索的內容
b.內嵌的entity中需要用到的字段如: 中的'${product.id}'中的
id
,必須在query 進行select的時候篩選
出來。
(2):deltaQuery解釋:從product表(或者product中內嵌的entity)中查找last_modifed時間大于solr配置文件dataimport.properties中的最 后一次修改時間。把需要修改的id都查找出來。例如:
deltaQuery="select cast(concat('p',id) as char) from product_class where
last_modified>'${dih.last_index_time}') or last_modified > '${dih.last_index_time}'"> product表中的last_modified>'${dih.last_index_time} 同時product_class表中的
last_modified>'${dih.last_index_time} 可能有點難理解,可以看solr官網。
(3):deltaImportQuery的理解
deltaImportQuery="select id,id) as char) as dockey from product wherecast(concat('p',id) as char)='${dih.delta.dockey}'"
cast(concat('p',id) as char) 為最外層entity的主鍵
${dih.delta.dockey} 中的dockey為deltaquery查詢時的主鍵
deltaQuery是用來確認有沒有記錄要導入的,一般只返回記錄ID.
deltaImportQuery是已經確認有記錄要導入的情況下,用來獲取要導入的記錄所有屬性的,是依據deltaQuery的ID來確定的。
意味著:deltaQuery返回了多少個ID,就會執行多少次deltaImportQuery
總結
如果覺得編程之家網站內容還不錯,歡迎將編程之家網站推薦給程序員好友。
本圖文內容來源于網友網絡收集整理提供,作為學習參考使用,版權屬于原作者。
如您喜歡交流學習經驗,點擊鏈接加入交流1群:1065694478(已滿)交流2群:163560250
創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
以上是生活随笔為你收集整理的solr 配置mysql数据源_solr data-config.xml配置文件的见解mysql数据源的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: pythonjam进不去怎么办_教程看了
- 下一篇: 元气森林唐彬森称32岁财富自由:几千万而