0
我正在尋找一種方法來重新使用Java中的ElasticSearch/Lucene中的過濾器語法和邏輯在任意文檔上(不需要先索引它們)。重新使用ElasticSearch過濾器來測試內存中的對象
比方說,我有一個JSON對象
{"wheels":4}
和過濾器:
{"exists":{"field":"windows"}}
對象未在任何索引,是否有可能重新使用ElasticSearch/Lucene的過濾器來測試沒有(或之前)插入到索引過濾器文件(在這種情況下返回false)?
嗯,爲什麼沒有想到這裏perculator的?我認爲這樣做,但理想情況下(我正在尋找的方向)將會有一個更輕量級的解決方案,使用lucene內部結構來測試簡單的過濾器(即存在,丟失,地理位置,範圍)而不觸及索引。我看到perculator爲單個文檔創建了一個內存中索引來執行查詢(並且您需要註冊該查詢) - 對此仍然有點沉重。有什麼建議麼?我會看看perculator的內部。 – Yousef 2014-09-14 17:17:41
好吧,您可以始終使用直接從Java調用的Lucene庫,但它不會重複使用Elasticsearch中的任何內容 - 您必須單獨設置它。 – 2014-09-14 19:09:23
是我正在看的方向。任何起點可能用於測試文檔/過濾器?或者考慮到JSON對象需要首先映射到lucene文檔等,您認爲這會過於複雜嗎? – Yousef 2014-09-14 19:31:02