2016-01-07 1 views
1

En raison de la limite de recherche dans le module python de elasticsearch je commence à utiliser le défilement pour accéder à plus de 10000 documents. Je n'ai pas testé s'il y avait une limite pour le défilement parce que cela fonctionnait bien. Mais il y a quelques jours j'ai eu plus de 100 000 documents à la suite d'une requête et ma mise en œuvre de la spirale a commencé à défaut avec:Le scan d'assistance échoue plus de 90000 documents?

SearchContextMissingException [Aucun contexte de recherche trouvé pour id [568]

Je pensais que mon code échouait en quelque sorte même si je ne pouvais pas voir le problème. Mais pendant le google, j'ai trouvé l'assistant d'analyse et j'ai décidé de l'utiliser, car il effectue le travail de mise en œuvre du parchemin sans avoir à s'inquiéter de la présence d'un bug dans mon code. Mais lors de l'utilisation de numériser avec une grande quantité de données (environ 90000), je continue d'obtenir l'erreur précédente. Quelqu'un at-il déjà vu le même comportement? Est-ce prévu? Y a-t-il une solution de contournement que je peux utiliser pour éviter ce problème sans diviser la requête?

Meilleures salutations,

Ruben

Répondre

1

Is est pas vraiment clair si vous définissez la taille du rouleau à 900000 ou plus ou si vous êtes en boucle un peu plus des documents en appelant le donjon défilement. Ce qui peut arriver, c'est que la manipulation des données prend beaucoup de temps avant de revenir au parchemin. Le contexte est maintenu un montant par défaut de temps que vous pouvez configurer à l'aide du paramètre de défilement tel que décrit dans l'adresse suivante:

https://www.elastic.co/guide/en/elasticsearch/reference/current/search-request-scroll.html

+0

Salut, merci pour votre réponse. Je suis en boucle sur plusieurs documents en continuant d'appeler le parchemin. Et j'utilise le paramètre scroll avec différentes valeurs (jusqu'à 5 minutes) et il échoue toujours. – ruba