Pab*_*dez 7 python database django django-haystack elasticsearch
我一直在研究使用 Django 开发的 Web 应用程序,它使用 Postgres 和 ElasticSearch。它使用 ElasticSearch,因为数据库存储了大量每小时增加的数据。为了让事情快速运行,我使用了 django-haystack 2.6.0,它允许我很容易地访问 Elastic Search。到现在为止还挺好。
问题出现在我在ElasticSearch上进行查询时,结果非常大。我得到的错误如下:
TransportError: TransportError(500, u'search_phase_execution_exception', u'Result window is too large, from + size must be less than or equal to: [10000] but was [12602]. 有关更有效的请求方式,请参阅滚动 api大型数据集。可以通过更改 [index.max_result_window] 索引级别参数来设置此限制。')
经过一些研究,我尝试增加结果窗口的大小,但从长远来看这不会起作用,因为查询集大小不断增加。此外 django-haystack 似乎没有实现滚动 api,所以我无法遵循堆栈跟踪中显示的建议。
我的问题是:无论如何我可以修复这个错误并使用 django-haystack 获取一个大查询集,也许可以以某种方式对结果进行分页?或者有没有更好的方法而不使用干草堆?
提前致谢!
| 归档时间: |
|
| 查看次数: |
445 次 |
| 最近记录: |