2017-06-05 31 views
0

我在Moqui中使用ElasticSearch。 DataDocument和Feed文檔已設置,一切正常。除了重新啓動服務器的情況。我需要運行org.moqui.search.SearchServices.index#DataFeedDocuments服務。這是否意味着索引存儲在內存中?我必須通過運行服務來恢復它們?索引文件 - 我必須運行刷新索引服務來維護索引嗎?

我還爲MantleProduct設置了Real-time Service Push [DTFDTP_RT_PUSH]服務。當個人實體被修改時,這項服務是否只關心刷新?

回答

0

是的,實時推送DataFeed僅用於此目的,即基於與DataFeed關聯的DataDocument定義生成新的'文檔'(JSON文檔,儘管是內部嵌套的Map和List對象),並調用與DataFeed一起提供服務。然後,索引服務將這些索引服務提取並在ElasticSearch中將它們編入索引。其他服務可用於不同的事情,例如發送通知。

除非您刪除其文件,否則索引文件將保留在ElasticSearch中。如果以重新啓動服務器的方式刪除ElasticSearch文件,則必須使用系統應用程序中的「數據文檔索引」屏幕來告訴它根據數據庫記錄重新索引所有文檔。

+0

它運作良好,感謝您的指導。我是否有機會指定服務要索引哪些文檔?我可以看到IndexData#DataFeedDocuments服務接受** fromUpdateStamp **和** thruUpdateStamp **參數,這些參數用於過濾documentList。但我找不到如何設置這兩個方法。 – mrovnanik

+0

在文檔中(使用Moqui製作應用程序)有一個使用** HiveMind.SearchServices.indexAndNotify#HiveMindDocuments **服務的示例。這是要走的路嗎? – mrovnanik