【问题标题】:Indexing documents - do I have to run the refresh index service to maintain the indices?索引文档 - 我是否必须运行刷新索引服务来维护索引?
【发布时间】:2023-03-13 07:45:01
【问题描述】:

我在 Moqui 中使用 ElasticSearch。 DataDocument 和 Feed 文档已设置好,一切正常。除了我重新启动服务器的情况。我需要运行org.moqui.search.SearchServices.index#DataFeedDocuments 服务。这是否意味着索引存储在内存中?我必须通过运行服务来恢复它们?

我还为 MantleProduct 设置了Real-time Service Push [DTFDTP_RT_PUSH] 服务。此服务是否仅在修改单个实体时才负责刷新?

【问题讨论】:

    标签: elasticsearch moqui


    【解决方案1】:

    是的,实时推送 DataFeed 仅用于此目的,即根据与 DataFeed 关联的 DataDocument 定义生成新的“文档”(JSON 文档,尽管内部嵌套了 Map 和 List 对象)并调用服务与他们一起在 DataFeed 上。然后,索引服务会获取这些并在 ElasticSearch 中对它们进行索引。其他服务可用于不同的事情,例如发送通知。

    除非您删除其文件,否则索引文档会保留在 ElasticSearch 中。如果您重新启动服务器的方式删除了 ElasticSearch 文件,那么您必须使用系统应用程序中的数据文档索引屏幕告诉它根据数据库记录重新索引所有文档。

    【讨论】:

    • 效果不错,谢谢指导。我是否有机会指定该服务将索引哪些文档?我可以看到 index#DataFeedDocuments 服务接受用于过滤 documentList 的 fromUpdateStampthruUpdateStamp 参数。但我找不到如何设置这两个的方法。
    • 在文档(使用 Moqui 制作应用程序)中有一个 HiveMind.SearchServices.indexAndNotify#HiveMindDocuments 服务的示例。这是要走的路吗?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-11-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多