W3Cschool
恭喜您成為首批注冊(cè)用戶
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
/admin/collections?action=MIGRATE&collection=name&split.key=key1!&target.collection=target_collection&forward.timeout=60
在SolrCloud中MIGRATE命令用于將具有給定路由秘鑰的所有文檔遷移到另一個(gè)集合。源集合將繼續(xù)具有相同的數(shù)據(jù),但是它將開始將寫入請(qǐng)求重新路由到目標(biāo)集合,持續(xù)時(shí)間由forward.timeout參數(shù)指定的秒數(shù)。在MIGRATE操作完成之后,用戶有責(zé)任切換到目標(biāo)集合進(jìn)行讀取和寫入操作。
由split.key參數(shù)指定的路由密鑰可能跨越源集合和目標(biāo)集合上的多個(gè)分片。遷移是在單個(gè)線程中按分片執(zhí)行的。在“遷移(migrate)”過(guò)程中,可以通過(guò)此命令創(chuàng)建一個(gè)或多個(gè)臨時(shí)集合,但它們會(huì)自動(dòng)清除。
這是一個(gè)長(zhǎng)時(shí)間運(yùn)行的操作,因此強(qiáng)烈建議使用該async參數(shù)。如果未指定該async參數(shù),則操作默認(rèn)為同步,并建議在調(diào)用時(shí)保持較長(zhǎng)的讀取超時(shí)。即使讀取超時(shí)時(shí)間很長(zhǎng),請(qǐng)求仍可能超時(shí),但這并不一定意味著操作失敗。用戶應(yīng)在再次調(diào)用該操作之前檢查日志、群集狀態(tài)、源和目標(biāo)集合。
該命令僅適用于使用compositeId路由器的集合。目標(biāo)集合在MIGRATE命令運(yùn)行期間不能接收任何寫入,否則有些寫入可能會(huì)丟失。
請(qǐng)注意,MIGRATE API不會(huì)對(duì)文檔執(zhí)行任何重復(fù)數(shù)據(jù)刪除,因此如果目標(biāo)集合包含具有與正在遷移的文檔相同的uniqueKey的文檔,則目標(biāo)集合將最終使用重復(fù)文檔。
將從中分離文檔的源集合的名稱。該參數(shù)是必需的。
要將文檔遷移到的目標(biāo)集合的名稱。該參數(shù)是必需的。
路由秘鑰的前綴。例如,如果文檔的uniqueKey是“a!123”,那么你會(huì)使用split.key=a!
。該參數(shù)是必需的。
以秒為單位的超時(shí),直到給定源集合的寫請(qǐng)求split.key
將被轉(zhuǎn)發(fā)到目標(biāo)分片。默認(rèn)值是60秒。
將核心屬性name設(shè)置為value。有關(guān)受支持的屬性和值的詳細(xì)信息,請(qǐng)參閱“定義core.properties”一節(jié)。
請(qǐng)求ID來(lái)跟蹤這個(gè)將被異步處理的操作。
響應(yīng)將包括請(qǐng)求的狀態(tài)。
在這個(gè)例子中輸入如下:
http://localhost:8983/solr/admin/collections?action=MIGRATE&collection=test1&split.key=a!&target.collection=test2
得到以下的輸出:
<response>
<lst name="responseHeader">
<int name="status">0</int>
<int name="QTime">19014</int>
</lst>
<lst name="success">
<lst>
<lst name="responseHeader">
<int name="status">0</int>
<int name="QTime">1</int>
</lst>
<str name="core">test2_shard1_0_replica1</str>
<str name="status">BUFFERING</str>
</lst>
<lst>
<lst name="responseHeader">
<int name="status">0</int>
<int name="QTime">2479</int>
</lst>
<str name="core">split_shard1_0_temp_shard1_0_shard1_replica1</str>
</lst>
<lst>
<lst name="responseHeader">
<int name="status">0</int>
<int name="QTime">1002</int>
</lst>
</lst>
<lst>
<lst name="responseHeader">
<int name="status">0</int>
<int name="QTime">21</int>
</lst>
</lst>
<lst>
<lst name="responseHeader">
<int name="status">0</int>
<int name="QTime">1655</int>
</lst>
<str name="core">split_shard1_0_temp_shard1_0_shard1_replica2</str>
</lst>
<lst>
<lst name="responseHeader">
<int name="status">0</int>
<int name="QTime">4006</int>
</lst>
</lst>
<lst>
<lst name="responseHeader">
<int name="status">0</int>
<int name="QTime">17</int>
</lst>
</lst>
<lst>
<lst name="responseHeader">
<int name="status">0</int>
<int name="QTime">1</int>
</lst>
<str name="core">test2_shard1_0_replica1</str>
<str name="status">EMPTY_BUFFER</str>
</lst>
<lst name="192.168.43.52:8983_solr">
<lst name="responseHeader">
<int name="status">0</int>
<int name="QTime">31</int>
</lst>
</lst>
<lst name="192.168.43.52:8983_solr">
<lst name="responseHeader">
<int name="status">0</int>
<int name="QTime">31</int>
</lst>
</lst>
<lst>
<lst name="responseHeader">
<int name="status">0</int>
<int name="QTime">1</int>
</lst>
<str name="core">test2_shard1_1_replica1</str>
<str name="status">BUFFERING</str>
</lst>
<lst>
<lst name="responseHeader">
<int name="status">0</int>
<int name="QTime">1742</int>
</lst>
<str name="core">split_shard1_1_temp_shard1_1_shard1_replica1</str>
</lst>
<lst>
<lst name="responseHeader">
<int name="status">0</int>
<int name="QTime">1002</int>
</lst>
</lst>
<lst>
<lst name="responseHeader">
<int name="status">0</int>
<int name="QTime">15</int>
</lst>
</lst>
<lst>
<lst name="responseHeader">
<int name="status">0</int>
<int name="QTime">1917</int>
</lst>
<str name="core">split_shard1_1_temp_shard1_1_shard1_replica2</str>
</lst>
<lst>
<lst name="responseHeader">
<int name="status">0</int>
<int name="QTime">5007</int>
</lst>
</lst>
<lst>
<lst name="responseHeader">
<int name="status">0</int>
<int name="QTime">8</int>
</lst>
</lst>
<lst>
<lst name="responseHeader">
<int name="status">0</int>
<int name="QTime">1</int>
</lst>
<str name="core">test2_shard1_1_replica1</str>
<str name="status">EMPTY_BUFFER</str>
</lst>
<lst name="192.168.43.52:8983_solr">
<lst name="responseHeader">
<int name="status">0</int>
<int name="QTime">30</int>
</lst>
</lst>
<lst name="192.168.43.52:8983_solr">
<lst name="responseHeader">
<int name="status">0</int>
<int name="QTime">30</int>
</lst>
</lst>
</lst>
</response>
Copyright©2021 w3cschool編程獅|閩ICP備15016281號(hào)-3|閩公網(wǎng)安備35020302033924號(hào)
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號(hào)
聯(lián)系方式:
更多建議: