使用slice扫描elasticsearch中的python助手
我有以下代码:使用slice扫描elasticsearch中的python助手,python,
elasticsearch,Python,
elasticsearch,我有以下代码: client = Elasticsearch(hosts=['host'], port=9200) scan_arguments = {'query': {'slice': {'max': 1, 'id': 0}}, 'preference': '_shards:0', 'index': u'my_index'} for hit in scan(client, **scan_args): # do something with hit 我得到以下错误 RequestE
client = Elasticsearch(hosts=['host'], port=9200)
scan_arguments = {'query': {'slice': {'max': 1, 'id': 0}}, 'preference': '_shards:0', 'index': u'my_index'}
for hit in scan(client, **scan_args):
# do something with hit
我得到以下错误
RequestError: TransportError(400, u'parsing_exception', u'[slice] failed to parse field [max]')
如何在扫描函数中传递slice参数?根据我的经验,“max”必须大于1。我以前在使用“max”:1时也看到过同样的错误。查看文档:slice参数指示将答案分成n部分。但您还需要一个正确的查询。您还没有发布任何查询。也许您会使用匹配的所有查询?尝试了以下
{'query':{'query':{'match':{'http\u user':'user'}},'slice':{'max':1,'id':0},'doc\u type':'u doc','preference':'u shards:0','index':u'my\u index'}
但是相同的异常。但查询是可选的参数,我发现如果我需要10个切片,我最多需要11个。