使用elasticsearch-dsl在python中获取按“ @timestamp”排序的结果

时间:2018-07-18 07:39:57

标签: python-2.7 elasticsearch elasticsearch-dsl elasticsearch-dsl-py

我想从我的Elasticsearch节点获取代码的数据,我正在使用elasticsearch-dsl库从elasticsearch查询数据。现在,我希望根据“ @timestamp”对数据进行排序,这可以使用 sort api 完成。但是我返回的数据有 10000多个文档。我无法将scan与sort一起使用以获取大数据,因为elasticsearch-dsl中的 sort与scan 不兼容。有没有一种方法可以在elasticsearch-dsl中使用滚动API或任何其他方式来获取超过 10000个以“ @timestamp”排序的文档

1 个答案:

答案 0 :(得分:0)

scroll可以与sort一起使用,您只需要使用preserve_order来调用它:s.params(preserve_order=True).scan()

希望这会有所帮助!

相关问题