如何在Solr中實現多core查詢?

2021-09-02 13:09:37 字數 710 閱讀 4560

[size=medium]

基於solr或者elasticsearch提供的多核,多索引,多shard等查詢能力,一般都是由lucene提供的多索引查詢的功能演化而來的,這個功能在單機版的lucene裡面確實沒有發揮多大的威力,但是確是solrclourd,elasticsearch分布式集群查詢資料的基礎,正是因為lucene提供了多索引歸併查詢已經合併排序功能,所以在給它加上http的能力,就能把lucene也做成乙個分布式的查詢框架,當然乙個分布式搜尋引擎,需要考慮的內容非常多,容錯,副本,高可靠,等都是主要功能。

本篇介紹洗下如何在solr中實現多core查詢,其實也叫多shard查詢,多core查詢的要求是,兩份索引裡面的主鍵字段,和查詢資料字段必須一致,就是說都必須有一樣的欄位名,否則查詢的時候或者歸併merge的時候會報錯,其實這正是分布式搜尋的基礎條件,只不過現在我們不用solrcloud也能查詢多個core,需要注意前提條件:

主鍵欄位+查詢欄位的名稱必須一致,下面看solrj裡面如何實現:

[/size]

/***

* 多核查找測試

* @throws exception

*/public static void querymulticore()throws exception

sc.close();

}

參考:[url]

[url]

solr多core的處理

有2中配置方式,一是從solr admin進行multi core的配置。在solr admin控制台裡面選擇 core admin 選擇add core 然後把你準備好的路徑寫到裡面去。name 配置core的名稱 instancedir 配置指向你的solr core的路徑,可以是絕對路徑,也可...

solr多core的處理

有2中配置方式,一是從solr admin進行multi core的配置。在solr admin控制台裡面選擇 core admin 選擇add core 然後把你準備好的路徑寫到裡面去。name 配置core的名稱 instancedir 配置指向你的solr core的路徑,可以是絕對路徑,也可...

如何在子查詢中實現多列過濾

什麼是子查詢 當乙個查詢是另外乙個查詢的條件,稱之為子查詢。常見子查詢使用場景 1.使用子查詢可以避免由於子查詢中的資料產生的重複。2.使用子查詢更符合語義,更好理解 子查詢user id 重複時,不會導致結果重複 使用join時,會重複 使用distinct去除重覆記錄 select distin...