我有一个弹性搜索单节点集群,它有一些索引。该索引包含6000个或更多文档。文档映射有很多字段(例如30个或更多)。我可以在(Kibana dev tool)中查询所有重复记录但是我正在查询python结果,例如10条记录或20条记录。这是什么原因?
我的索引和文档计数
yellow open test_index kjioInpQRAqT3o1LZHI92g 1 2 7652 1267 20.7mb 20.7mb
我的映射
{
"settings": {
"number_of_shards": 1,
"number_of_replicas": 2
},
"mappings": {
"test_index" : {
"properties": {
"name": {
"type": "keyword"
},
"address": {
"type": "keyword"
},
# MORE 35 FIELDS ....
}
}
}
}
答案 0 :(得分:0)
我找到了原因。文档有很多字段,它有35个字段。我可以在(kibana dev)工具中查询。一次查询返回了1000个文档.Python弹性搜索库无法获得此文档数量的原因是单个文档太大(文档有35个字段)。然后我更改查询并将查询结果的有用字段放入。现在是工作文件。
像这样更改您的查询(普通查询)
`{
"_source": ["_id","_index", "quote_date", "asset"],
"query": {
"match_all": {
}
}
}`
像这样更改您的查询(聚合查询)
` "aggs": {
"duplicateDocuments": {
"top_hits": {
"_source": ["_id","_index", "name", "address"],
"sort": [{"create_at": { "order": "desc"} } ]
}
}
}`