每日學習筆記 20

2021-05-28 12:43:26 字數 2001 閱讀 9349

1, solr

合併索引資料有兩種方法,第一種是

1.4版本中引入的,通過

coreadminhandler

來實現,示例如下:

上述命令會將

core1

和core2

的索引合併到

core0

中去,這裡最值得注意的一點是:一旦合併完成,必須在

core0

上呼叫commit

操作,否則索引資料的變化對於

searchers

來說是暫時不可見的,只有等到下次

core0

重新裝載起來時才可見。

實現**如下:

/**

* 合併索引資料

* @param otherindexpathlist 其他待合併的索引資料路徑

* @param corename 合併的目標solr核名稱

//commit操作讓合併後的索引對搜尋生效

第二種方法是solr3.3中引入的,也是通過coreadminhandler來實現,示例如下:

同第一種方法一樣,一旦合併完成,必須在core0上呼叫commit操作,否則索引資料的變化對於searchers來說是暫時不可見的,只有等到下次core0重新裝載起來時才可見。

使用」srccore」和」indexdir」這兩種方法的區別:

1)   使用」indexdir」引數,你可以合併不是與solr核相關聯的索引資料,比如通過lucene直接建立的索引

2)   使用」indexdir」引數,你必須注意索引資料不是直接寫入的,這就意味著如果它是乙個solr核的索引,必須要關閉indexwriter,這樣才能觸發乙個commit命令。

3)   「indexdir」必須指向solr核所在的主機上的磁碟路徑,這就限制比較多了,而相反,你可以只給srccore乙個solr核的名稱,而不關心它的實際索引路徑在哪。

4)   使用」srccore」,你必須確保即使源索引資料同時存在寫操作的時候,合併後的索引頁不會損壞。

每日學習筆記 20

1,solr 合併索引資料有兩種方法,第一種是 1.4版本中引入的,通過 coreadminhandler 來實現,示例如下 上述命令會將 core1 和core2 的索引合併到 core0 中去,這裡最值得注意的一點是 一旦合併完成,必須在 core0 上呼叫commit 操作,否則索引資料的變化...

每日學習筆記 3

1,先說說今天體會最深刻的一點 寫 python 乙個好的編輯器至關重要,這其中 vim確實是最佳選擇。由於 python 是根據縮進來判斷上下文的,因此 tab和空格使用不當會害死你的。一段 在 notepad 裡看起來對齊格式沒問題,可就是死活編譯不過,來到 vim下一看,damn it,格式是...

每日學習筆記 15

今天接著讀 mysql技術內幕innodb儲存引擎 的第5章關於索引這部分內容。什麼時候使用b 樹索引?並不是在所有的查詢條件下出現的列都需要新增索引,作者指出當訪問表中很少一部分行時,使用b 樹索引才有意義。對於像性別,地區,型別等字段,它們的可取值範圍很小,即所謂低選擇性,比如select fr...