簡體   English   中英

在SOLR中創建碎片

[英]creating shard in SOLR

我是Apache Solr的新手。 我創建了一個新集合,名為testCollection 該集合是通過solr管理控制台創建的,其路由器類型是隱式的。 我正在使用下面的代碼為上面的集合創建一個新的碎片

SolrServer solr = new HttpSolrServer("http://localhost:8983/solr/testCollection");

        UpdateRequest request = new UpdateRequest();
        request.setPath("http://localhost:8983/solr/testCollection");
        request.setMethod(METHOD.GET);
        request.setParam("action", "CREATESHARD");
        request.setParam("collection", "testCollection");
        request.setParam("shard", "latestShard");
        solr.request(request);
        solr.commit();

在執行上述操作時,我沒有任何異常,但是沒有創建新的碎片。 我正在使用solr 6.1。 盡管這個問題似乎可能是Solr 4的一個重復-添加分片,但沒有代碼片段可用,但是也沒有提及如何使用SolrJ實現此問題。 任何幫助將不勝感激。

問候,安庫爾

您使用的API錯誤。

UpdateRequest用於對索引數據執行操作(添加/刪除文檔等),而不用於管理集合的設置方式,例如,用於創建分片時,您需要使用此方法

僅當集合的大小增長到足以容納某個節點的大小時才創建一個分片,因此拆分該集合以添加一個分片,最后將分片重新放置在其他節點上。

盡管有可能,但我無法想到用Java這樣做是一個好主意。

這比僅組合http請求並將其放入瀏覽器要復雜得多。

http://localhost:8983/solr/admin/collections?action=CREATESHARD&collection=testCollection&shard=shard2

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM