如何在R中的elasticsearch中增加搜索大小> 10,000?

Mid*_*n T 5 r elasticsearch

我一直在尝试使用elastic包从 R 查询 elasticsearch 。

我能够查询和获取数据

`Search(index = "tmp_test_data", 
           q = "_type: random AND log.type: regular", size = 10000)`
Run Code Online (Sandbox Code Playgroud)

但是,当我尝试size通过添加 body来增加

`body1 <- '{"settings" : {"index" : {"max_result_window" : "170000"}}}'`
Run Code Online (Sandbox Code Playgroud)

到搜索查询

`Search(index = "tmp_test_data", 
           q = "_type: random AND log.type: regular", body = body1)`
Run Code Online (Sandbox Code Playgroud)

它返回, Error: 400 - Unknown key for a START_OBJECT in [settings].

编辑:
我尝试fromsearch每次搜索时使用函数中的参数进行循环,该搜索size = 1000返回多达 10,000 条记录并Error: 500 - all shards failed在此之后抛出。

我还按照 R 文档/帮助中给出的一些示例尝试在函数中使用elastic::scroll,但它返回相同的错误。tm_scroll = "5m"searchError: 500 - all shards failed

在 R elasticsearch 中增加查询大小的适当方法是什么?

Dar*_*ert 2

您正在尝试更新动态索引设置。您不能将其包含在搜索中。

要更新它,您需要使用更新设置 API进行更新。我不知道如何使用 R 来做到这一点,但这里有一个 http 请求示例。

PUT http://myserver:9200/tmp_test_data/_settings

{  
    "index" : {
        "max_result_window": 170000
    }
}
Run Code Online (Sandbox Code Playgroud)