我有一個現在由PHP cronjob提供的Solr框。是否有C++ SOLR庫?
我想加快速度並通過切換到C++進程來節省一些內存。
我不想通過創建一個新庫來重新發明輪子。
唯一的問題是我無法在C++中找到Solr的庫。
否則,我將不得不使用CURL創建一個。
你們有沒有人知道用C++編寫的Solr之間的庫?
謝謝。
我有一個現在由PHP cronjob提供的Solr框。是否有C++ SOLR庫?
我想加快速度並通過切換到C++進程來節省一些內存。
我不想通過創建一個新庫來重新發明輪子。
唯一的問題是我無法在C++中找到Solr的庫。
否則,我將不得不使用CURL創建一個。
你們有沒有人知道用C++編寫的Solr之間的庫?
謝謝。
「喂」你的意思是文件通過索引?您可能會發現,「餵養」過程並非瓶頸,而是Solr能夠多快吸收文檔。
在做大量工作之前,我還建議您進行一些分析,因爲這個過程通常不是CPU綁定的,所以通過移動到C++會提高速度會讓人失望。
您是否儘可能優化了您的架構?兩個明顯的第一步是: 1.不要存儲不需要顯示的數據(字段ID和元數據等) ...和與之相反的... 2.不要索引數據僅用於顯示,但未搜索。 (補充數據)
還有一個古怪的事情可以嘗試,有時可行,有時不會將add/overwrite屬性更改爲false。
<add overwrite="false">
這將禁用唯一ID檢查(我認爲)。因此,如果您正在對索引進行全面擦除/替換,並且您肯定只會添加唯一文檔,那麼這可以加快導入速度。它確實取決於索引的大小。如果您有超過2,000,000份文檔,並且索引器每次添加一個新文檔,您都可以通過不強制檢查文檔是否已經存在來獲得一些速度。不是最有說服力的解釋,但我希望它是有道理的。
就我個人而言,我使用數據導入處理程序,它刪除了中間腳本的需要。它只是連接到數據庫,並通過單個查詢將其所需的信息剔除。
一些早期的結果後,Solr的似乎是瓶頸!任何解決方案?我應該切換到CLucene(似乎不再被維護) – stunti 2010-02-19 10:49:09
很多時候切換到C或C++並不能提供您可能期望的速度提升。檢查Solr文檔是否加快速度。想到的第一件事是在單個中提交多個 –
leonm
2010-02-19 11:17:35