2012-12-12 157 views
1

我最近開始使用Apache Solr,並試圖找出基準測試XML文檔語料庫的最佳方法。我基本上對磁盤上的吞吐量(文件索引/秒)和索引大小感興趣。Apache Solr索引Bechmarking

我正在Ubuntu上做所有這些。

標杆技術

*運行下面的5倍&得到採取*

  • 指數文件[curl http://localhost:8983/solr/core/dataimport?command=full-import]
    • 得到 '時間採取' 名平均總時間屬性來自狀態爲'空閒'時的XML響應[curl http:// localhost:8983/so LR /核心/ dataimport]
    • '數據/索引' 目錄獲取大小
  • 刪除索引[curl http://localhost:8983/solr/core/update --data '<delete><query>*:*</query></delete>' -H 'Content-type:text/xml; charset=utf-8']
  • 提交[curl http://localhost:8983/solr/w5/update --data '<commit/>' -H 'Content-type:text/xml; charset=utf-8']
  • 重建索引文件

問題

  1. 我打算計算我的吞吐量除以數量按平均總時間索引的文件數量;這很好嗎?
  2. 是否有工具(如用於查詢基準的SolrMeter)或已有的標準腳本可用於實現我的目標?我不想重新發明輪子...
  3. 我的方法很好嗎?
  4. 有沒有一種更容易的方式來獲取索引大小,而不是對data/index /目錄執行'du'操作?
  5. 我在哪裏可以找到有關如何解釋XML響應屬性的信息(請參閱下面的示例輸出)。例如,我想知道QTimeTime taken值之間的差異。

* XML響應用於獲取吞吐量*

<?xml version="1.0" encoding="UTF-8"?> 
<response> 
<lst name="responseHeader"> 
    <int name="status">0</int> 
    <int name="QTime">0</int> 
    </lst> 
    <lst name="initArgs"> 
    <lst name="defaults"> 
     <str name="config">w5-data-config.xml</str> 
    </lst> 
    </lst> 
    <str name="status">idle</str> 
    <str name="importResponse"/> 
    <lst name="statusMessages"> 
    <str name="Total Requests made to DataSource">0</str> 
    <str name="Total Rows Fetched">3200</str> 
    <str name="Total Documents Skipped">0</str> 
    <str name="Full Dump Started">2012-12-11 14:06:19</str> 
    <str name="">Indexing completed. Added/Updated: 1600 documents. Deleted 0 documents.</str> 
    <str name="Total Documents Processed">1600</str> 
    <str name="Time taken">0:0:10.233</str> 
    </lst> 
    <str name="WARNING">This response format is experimental. It is likely to change in the future.</str> 
</response> 

回答

1

問題1:

我建議你應該嘗試指數超過1個XML(具有不同數據集)文件並比較給定的結果。多數民衆贊成你的方式,你會知道,如果它可以簡單地把你的時間與你的文件數量分開。

問題2:

我didn't找到任何這些工具,我做到了我自己通過開發一個簡短的Java應用程序

問題3:

哪種方法你的意思?我會鏈接到我的回答問題1 ...

問題4:

索引文件夾的大小給你整個索引的大小正確,爲什麼難道你不希望使用它?

問題5:

您在發佈XML得到的結果是通過XSL文件轉移。您可以在/ bin/solr/conf/xslt文件夾中找到它。您可以查看這些條款的含義,您可以編寫自己的XSL來顯示結果和信息。 注意:如果您創建新的XSL文件,則必須更改solrconfig.xml中的設置。如果您不想進行任何更改,請編輯現有文件。

編輯:我認爲不同的是,Qtime是所採用時間值的四捨五入值。 Qtime中只有偶數。

致以問候

+0

謝謝你。該計劃是索引不同大小的數據集,我已經設置了15個核心來處理。在問題3中,我試圖找出我的邏輯是否有缺陷。 – lightonphiri

+0

請告訴我們你發現了什麼,我也很感興趣:-)我可以告訴你,我需要6分鐘索引660.000文件。我認爲這取決於你給solr的RAM。您可以更改solrconfig.xml中的值。 –

+0

我不認爲你的邏輯有缺陷,但你必須正確解釋你的結果。您的基準測試結果取決於您的系統環境 - 在其他系統中,這些值幾乎沒有區別。 –