![](/img/trans.png)
[英]Performance of various numpy fancy indexing methods, also with numba
[英]Solr indexing methods and performance
我試圖了解如何添加Solr索引,並確保我朝着正確的方向前進。
數據集包含約40000個NetCDF文件,平均每個文件可能為250KB。 對於每個文件,我需要為其元數據和數據的子集建立索引。
{
'metadata' :
{
'file' : [id, date, ...],
'identifiers' : [[a, b, c, ...]]
},
'data' :
[[idx, time, lat, lon, a, b, c, ...]]
}
我編寫了一個python腳本,該腳本使用一些查詢字符串調用數據子集Web服務,並通過過濾所有數據來生成json對象(具有上述架構)。 這是針對單個文件的。 一切都在這里檢查(盡管可能會更快)。
我的計划是直接從腳本中將此json對象發送給Solr,這是我擔心的地方:
-我剛剛創建了一個〜160KB的json文件。 我需要注意內存,所以我想知道...我是否必須將此json對象放在某個文件中才能使solr工作? 如果生成一個json文件,將其編入索引,然后刪除該文件,會發生什么情況?
-我可以從python腳本中添加文檔嗎? 我看到了一些看起來很有前途的圖書館。 我還從文檔中回憶了一種將其發送到solr url的方法。 如果必須保存json文件,是否可以對solr的post命令進行系統調用,然后再刪除該文件?
我需要索引要做的就是提供原始NetCDF文件的URL,最終用戶可以使用索引來收集相關信息。
聽起來合理嗎? 有任何性能建議嗎?
無論采用哪種索引方法,都無需保留JSON文件。 您當然可以釋放空間,除非您想重新索引數據。 Solr會將內部定義的所有數據存儲到架構中。 如果您具有固定的架構,則將要存儲到solr中的所有字段以及僅要索引的所有字段定義到架構中。 如果將所有字段都定義為存儲字段,那么即使沒有源數據,也始終可以重新編制索引。 這是示例字段聲明。 請參閱更多詳細信息。 鏈接
<field name="firstname" type="string" indexed="true" stored="true" multivalued="false"/>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.