新聞中心
Solr是一個(gè)開源的全文搜索引擎,可用于快速和高效地搜索、處理和管理各種類型的文本和數(shù)據(jù)。Solr通過(guò)基于文本的搜索和過(guò)濾器來(lái)提供復(fù)雜的搜索功能和查詢能力。Solr6.6是Solr的新版本,與舊版本相比,它引入了一些新功能和改進(jìn),其中最重要的是支持?jǐn)?shù)據(jù)庫(kù)的配置。本文將向您介紹Solr6.6如何配置數(shù)據(jù)庫(kù),以便讓您輕松上手。

成都創(chuàng)新互聯(lián)是一家集網(wǎng)站建設(shè),南召企業(yè)網(wǎng)站建設(shè),南召品牌網(wǎng)站建設(shè),網(wǎng)站定制,南召網(wǎng)站建設(shè)報(bào)價(jià),網(wǎng)絡(luò)營(yíng)銷,網(wǎng)絡(luò)優(yōu)化,南召網(wǎng)站推廣為一體的創(chuàng)新建站企業(yè),幫助傳統(tǒng)企業(yè)提升企業(yè)形象加強(qiáng)企業(yè)競(jìng)爭(zhēng)力。可充分滿足這一群體相比中小企業(yè)更為豐富、高端、多元的互聯(lián)網(wǎng)需求。同時(shí)我們時(shí)刻保持專業(yè)、時(shí)尚、前沿,時(shí)刻以成就客戶成長(zhǎng)自我,堅(jiān)持不斷學(xué)習(xí)、思考、沉淀、凈化自己,讓我們?yōu)楦嗟钠髽I(yè)打造出實(shí)用型網(wǎng)站。
1. 下載Solr
您需要從Solr官方網(wǎng)站(https://lucene.apache.org/solr/)上下載Solr6.6的二進(jìn)制文件。下載完成后,將文件解壓縮到您選擇的目錄中。
2. 安裝數(shù)據(jù)庫(kù)驅(qū)動(dòng)程序
在配置Solr6.6與數(shù)據(jù)庫(kù)進(jìn)行通信之前,您需要安裝適當(dāng)?shù)臄?shù)據(jù)庫(kù)驅(qū)動(dòng)程序。Solr6.6支持多種數(shù)據(jù)庫(kù),包括MySQL,Oracle和PostgreSQL等。
以MySQL為例,您需要在Solr目錄的“dist”目錄中找到mysql-connector-java.jar文件,該文件是MySQL的Java驅(qū)動(dòng)程序。將該文件復(fù)制到您選擇的目錄中,以便在Solr配置中使用。
3. 創(chuàng)建Solr核
Solr核是為存儲(chǔ)和搜索數(shù)據(jù)而創(chuàng)建的Solr實(shí)例。您可以使用Solr控制臺(tái)或命令行工具來(lái)創(chuàng)建Solr核。在本文中,我們將使用控制臺(tái)來(lái)創(chuàng)建核。
打開Solr控制臺(tái),并選擇“核管理”選項(xiàng)。選擇“創(chuàng)建核”并輸入核的名稱。單擊“創(chuàng)建”按鈕即可完成核的創(chuàng)建。
4. 配置Solr與數(shù)據(jù)庫(kù)進(jìn)行通信
此時(shí),您已經(jīng)準(zhǔn)備好將Solr與數(shù)據(jù)庫(kù)進(jìn)行通信。要配置Solr與MySQL進(jìn)行通信,您需要在Solr核的“solrconfig.xml”文件中進(jìn)行以下設(shè)置。
a. 添加MySQL驅(qū)動(dòng)程序
在“solrconfig.xml”文件中,找到以下行:
添加以下行:
其中,C:\SolrDrivers是您下載和復(fù)制MySQL驅(qū)動(dòng)程序的目錄。
b. 配置數(shù)據(jù)源
在“solrconfig.xml”文件中,找到以下行:
替換它為:
其中,[database_name]是您要使用的數(shù)據(jù)庫(kù)的名稱,[username]是連接數(shù)據(jù)庫(kù)的用戶名,[password]是連接數(shù)據(jù)庫(kù)的密碼。
c. 配置數(shù)據(jù)編制器
在“solrconfig.xml”文件中,找到以下行:
替換它為:
其中,[table_name]是您要使用的表的名稱。
5. 導(dǎo)入數(shù)據(jù)
現(xiàn)在,您已經(jīng)配置了Solr與MySQL進(jìn)行通信,并可以從數(shù)據(jù)庫(kù)中導(dǎo)入數(shù)據(jù)到Solr。要導(dǎo)入數(shù)據(jù),請(qǐng)打開Solr控制臺(tái),選擇“數(shù)據(jù)導(dǎo)入”選項(xiàng),然后單擊“全局導(dǎo)入”按鈕。
Solr將從MySQL中檢索數(shù)據(jù),并將其添加到Solr索引中。完成后,您可以在Solr網(wǎng)頁(yè)界面中搜索并查看導(dǎo)入的數(shù)據(jù)。
結(jié)論
相關(guān)問(wèn)題拓展閱讀:
- solr怎么給hbase建立索引原理
- solr鏈接數(shù)據(jù)庫(kù)時(shí)顯示顯示no information avaliable怎么辦
solr怎么給hbase建立索引原理
以下資料整理自網(wǎng)絡(luò),以及查看solr幫衫埋助文檔。主要分為兩部分,之一部分是對(duì)《db-data-config.xml》的配置內(nèi)容的講解(屬于高級(jí)內(nèi)容),第二部分是DataImportHandler(屬于基礎(chǔ)),第三部分是對(duì)db-data-config.xml的進(jìn)階 之一部分是對(duì)《db-data-config.xml》 query是獲取全部數(shù)據(jù)的SQL deltaImportQuery是獲取增量數(shù)據(jù)時(shí)使用的SQL deltaQuery是旅塌者獲取pk的SQL parentDeltaQuery是獲取父Entity的pk的SQL Full Import工作原理: 執(zhí)行本Entity的Query,獲取所有數(shù)據(jù); 針對(duì)每個(gè)行數(shù)據(jù)Row,獲取pk,組裝子Entity的Query; 執(zhí)行子Entity的Query,獲取子Entity的數(shù)據(jù)。 Delta Import工作原理: 查找子Entity,直到?jīng)]有為止; 執(zhí)行Entity的deltaQuery,獲取變化數(shù)拆薯?yè)?jù)的pk; 合并子Entity …
以下資料整理自網(wǎng)絡(luò),以及查看solr幫助文檔。主要分為兩部分,之一部分是對(duì)《db-data-config.xml》的配置內(nèi)容的講解(屬于高級(jí)內(nèi)容),第二部分是DataImportHandler(屬于基礎(chǔ)),第三部分是對(duì)db-data-config.xml的進(jìn)階
之一部分是對(duì)《db-data-config.xml》
query是獲取全部數(shù)據(jù)的SQL
deltaImportQuery是獲取增量數(shù)據(jù)時(shí)使用的SQL
deltaQuery是獲取pk的SQL
parentDeltaQuery是獲取父Entity的pk的SQL
Full
Import工作原理:
執(zhí)行本Entity的Query,獲取所有數(shù)據(jù);
針對(duì)每個(gè)行數(shù)據(jù)Row,獲取pk,組裝子Entity的Query;
執(zhí)行子Entity的Query,獲取子Entity的數(shù)據(jù)。
Delta
Import工作原理:
查找子Entity,直到?jīng)]有為止;
執(zhí)行Entity的deltaQuery,獲取變化數(shù)據(jù)的pk;
合并子Entity
parentDeltaQuery得到的pk;
針對(duì)每一個(gè)pk
Row,組裝父Entity的parentDeltaQuery;
執(zhí)行parentDeltaQuery,獲取父Entity的pk;
執(zhí)行deltaImportQuery,獲取自身的數(shù)據(jù);
如果沒(méi)有deltaImportQuery,就組裝Query
限制:
子Entity的query必須引用父Entity的pk
子Entity的parentDeltaQuery必須引用自己的pk
子Entity的parentDeltaQuery必須返回父Entity的pk
deltaImportQuery引用的必須是自己的pk
第二部分是DataImportHandler
關(guān)于DataImportHandler的具體使用方法,詳見下文,如果你英文超級(jí)好,那看這個(gè)鏈接吧:
大多數(shù)的應(yīng)用程序?qū)?shù)者悄據(jù)存儲(chǔ)在關(guān)系數(shù)據(jù)庫(kù)、xml文件中。對(duì)這樣的數(shù)據(jù)進(jìn)行搜索是很常見的應(yīng)用。所謂的DataImportHandler提供一種可配置的方式向solr導(dǎo)入數(shù)據(jù),可以一次全部導(dǎo)入,也可以增量導(dǎo)入。
概覽
目標(biāo)
能夠讀取關(guān)系數(shù)據(jù)庫(kù)中的數(shù)據(jù)。
通過(guò)可配置的方式,能夠?qū)?shù)據(jù)庫(kù)中多列、多表的數(shù)據(jù)生成solr文檔
能夠通過(guò)solr文檔更新solr
提供 通過(guò)配置文件就能夠?qū)胨袛?shù)據(jù)的能力
能夠發(fā)現(xiàn)并處理
由insert、update帶來(lái)的變化(我們假定在表中有一個(gè)叫做“l(fā)ast-modified的列”)
能夠配置 “完全導(dǎo)入”和“增量導(dǎo)入”的時(shí)間
讓讀取xml文件,并建立索引成為可配置。
能夠?qū)?/p>
其他的數(shù)據(jù)源(例如:ftp,scp,etc)或者其他格式的文檔(Json,csv)以插件的形式集成到項(xiàng)目中。
設(shè)計(jì)思路
這個(gè)Handler首先要在solrconfig.xml文件中配置下,如下所示。
/home/username/data-config.xml
從它的名字上,我們或許也可以猜到,
DataImportHandler正是requestHandler的實(shí)現(xiàn)。我們一共需要在兩個(gè)地方配置文件中進(jìn)行一些配置。
solrconfig.xml 。
data-config.xml必須在這個(gè)文件中配置,datasource也可以。不過(guò),一般將datasource放在data-config.xml文件中。
data-config.xml
怎樣獲取數(shù)據(jù)?(查詢語(yǔ)句、url等等)
要讀什么樣的數(shù)據(jù)(關(guān)系數(shù)據(jù)庫(kù)中的列、或者xml的域)
做什么樣的處理(修改/添加/刪除)清爛
跟關(guān)系數(shù)據(jù)庫(kù)一起使用
下面幾個(gè)步驟是必要的.
定義一個(gè)data-config.xml 文件,并這個(gè)答嫌漏它的路徑配置到solrconfig.xml
中關(guān)于DataImportHandler的配置中。
給出Connection的信息(假設(shè)你選擇在solrconfig中配置datasource)
打開DataImportHandler頁(yè)面去驗(yàn)證,是否該配置的都配置好了。
使用“完全導(dǎo)入”命令將數(shù)據(jù)從數(shù)據(jù)庫(kù)中導(dǎo)出,并提交給solr建立索引
使用“增量導(dǎo)入”命令對(duì)數(shù)據(jù)庫(kù)發(fā)生的變化的數(shù)據(jù)導(dǎo)出,并提交給solr建立索引。
配置數(shù)據(jù)源
將dataSource標(biāo)簽直接添加到dataConfig下面,即成為dataConfig的子元素.
數(shù)據(jù)源也可以配置在solrconfig.xml中
屬性type 指定了實(shí)現(xiàn)的類型。它是可選的。默認(rèn)的實(shí)現(xiàn)是JdbcDataSource。
屬性 name 是datasources的名字,當(dāng)有多個(gè)datasources時(shí),可以使用name屬性加以區(qū)分
其他的屬性都是隨意的,根據(jù)你使用的DataSource實(shí)現(xiàn)而定。
當(dāng)然 你也可以實(shí)現(xiàn)自己的DataSource。
多數(shù)據(jù)源
一個(gè)配置文件可以配置多個(gè)數(shù)據(jù)源。增加一個(gè)dataSource元素就可以增加一個(gè)數(shù)據(jù)源了。name屬性可以區(qū)分不同的數(shù)據(jù)源。如果配置了多于一個(gè)的數(shù)據(jù)源,那么要注意將name配置成唯一的。
例如:
然后這樣使用 ..
..
..
..
配置JdbcDataSource
JdbcDataSource中的屬性有
driver(必需的):jdbc驅(qū)動(dòng)名稱
url(必需的):jdbc鏈接
user:用戶名
password:密碼
批量大?。簀dbc鏈接中的批量大小
任何其他的在JdbcDataSource中配置的屬性,都會(huì)被直接傳給jdbc
driver
配置data-config.xml
solr
document是schema,它的域上的值可能來(lái)自于多個(gè)表.
data-config.xml的根元素是document。一個(gè)document元素代表了一種文檔。一個(gè)document元素中包含了一個(gè)或者多個(gè)root實(shí)體。一個(gè)root實(shí)體包含著一些子實(shí)體,這些子實(shí)體能夠包含其他的實(shí)體。實(shí)體就是,關(guān)系數(shù)據(jù)庫(kù)上的表或者視圖。每個(gè)實(shí)體都能夠包含多個(gè)域,每個(gè)域?qū)?yīng)著數(shù)據(jù)庫(kù)返回結(jié)果中的一列。域的名字跟列的名字默認(rèn)是一樣的。如果一個(gè)列的名字跟solr
field的名字不一樣,那么屬性name就應(yīng)該要給出。其他的需要的屬性在solrschema.xml文件中配置。
為了能夠從數(shù)據(jù)庫(kù)中取得想要的數(shù)據(jù),我們的設(shè)計(jì)支持標(biāo)準(zhǔn)sql規(guī)范。這使得用戶能夠使用他任何想要的sql語(yǔ)句。root實(shí)體是一個(gè)中心表,使用它的列可以把表連接在一起。
dataconfig的結(jié)構(gòu)
dataconfig的結(jié)構(gòu)不是一成不變的,entity和field元素中的屬性是隨意的,這主要取決于processor和transformer。
以下是entity的默認(rèn)屬性
name(必需的):name是唯一的,用以標(biāo)識(shí)entity
processor:只有當(dāng)datasource不是RDBMS時(shí)才是必需的。默認(rèn)值是SqlEntityProcessor
transformer:轉(zhuǎn)換器將會(huì)被應(yīng)用到這個(gè)entity上,詳情請(qǐng)瀏覽transformer部分。
pk:entity的主鍵,它是可選的,但使用“增量導(dǎo)入”的時(shí)候是必需。它跟schema.xml中定義的uniqueKey沒(méi)有必然的聯(lián)系,但它們可以相同。
rootEntity:默認(rèn)情況下,document元素下就是根實(shí)體了,如果沒(méi)有根實(shí)體的話,直接在實(shí)體下面的實(shí)體將會(huì)被看做跟實(shí)體。對(duì)于根實(shí)體對(duì)應(yīng)的數(shù)據(jù)庫(kù)中返回的數(shù)據(jù)的每一行,solr都將生成一個(gè)document。
一下是SqlEntityProcessor的屬性
query (required) :sql語(yǔ)句
deltaQuery : 只在“增量導(dǎo)入”中使用
parentDeltaQuery : 只在“增量導(dǎo)入”中使用
deletedPkQuery : 只在“增量導(dǎo)入”中使用
deltaImportQuery : (只在“增量導(dǎo)入”中使用) .
如果這個(gè)存在,那么它將會(huì)在“增量導(dǎo)入”中導(dǎo)入phase時(shí)代替query產(chǎn)生作用。這里有一個(gè)命名空間的用法${dataimporter.delta.}詳情請(qǐng)看solr1.4.
solr鏈接數(shù)據(jù)庫(kù)時(shí)顯示顯示no information avaliable怎么辦
說(shuō)明早畢如下:
query是獲取全部數(shù)據(jù)的SQL(solr從sql中獲取那些數(shù)據(jù)),啟族多列
deltaImportQuery是獲取增量數(shù)據(jù)時(shí)使用的SQL(數(shù)據(jù)庫(kù)新增數(shù)據(jù)追加到陸旁芹solr的數(shù)據(jù)),多列
deltaQuery是獲取pk的SQL(數(shù)據(jù)庫(kù)新增數(shù)據(jù)是,追加到solr的數(shù)據(jù)時(shí)的條件,根據(jù)id ,條件是最后一次獲取的時(shí)間,${dataimporter.last_index_time,最后獲取的時(shí)間})!
關(guān)于solr6.6配置數(shù)據(jù)庫(kù)的介紹到此就結(jié)束了,不知道你從中找到你需要的信息了嗎 ?如果你還想了解更多這方面的信息,記得收藏關(guān)注本站。
成都網(wǎng)站設(shè)計(jì)制作選創(chuàng)新互聯(lián),專業(yè)網(wǎng)站建設(shè)公司。
成都創(chuàng)新互聯(lián)10余年專注成都高端網(wǎng)站建設(shè)定制開發(fā)服務(wù),為客戶提供專業(yè)的成都網(wǎng)站制作,成都網(wǎng)頁(yè)設(shè)計(jì),成都網(wǎng)站設(shè)計(jì)服務(wù);成都創(chuàng)新互聯(lián)服務(wù)內(nèi)容包含成都網(wǎng)站建設(shè),小程序開發(fā),營(yíng)銷網(wǎng)站建設(shè),網(wǎng)站改版,服務(wù)器托管租用等互聯(lián)網(wǎng)服務(wù)。
當(dāng)前標(biāo)題:Solr6.6如何配置數(shù)據(jù)庫(kù),一文讓你輕松上手! (solr6.6配置數(shù)據(jù)庫(kù))
分享URL:http://www.dlmjj.cn/article/dhjgpsp.html


咨詢
建站咨詢
