2017-06-05 7 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

ガイダンスのおかげでうまくいきます。サービスがインデックスに登録される文書を指定できる可能性はありますか?私はインデックス#DataFeedDocumentsサービスが受け入れる** fromUpdateStamp **と** thruUpdateStamp **パラメータを参照することができますdocumentListのフィルタに使用されます。しかし、私はそれらの2つを設定する方法を見つけることができません。 – mrovnanik

+0

ドキュメント(MoquiでAppsを作る)には、** HiveMind.SearchServices.indexAndNotify#HiveMindDocuments **サービスの例があります。それは行く方法ですか? – mrovnanik

関連する問題