Elasticsearch双索引重复数据查询方案及Kibana完整查询语句需求
查找Elasticsearch双索引中重复数据的解决方案与查询语句
一、单索引内的重复数据查询
1. 查找Employee索引中重复的Name字段
通过聚合分组找出重复Name及对应文档:
GET /employee/_search { "size": 0, "aggs": { "duplicate_names": { "terms": { "field": "Name.keyword", "min_doc_count": 2, "size": 1000 }, "aggs": { "duplicate_docs": { "top_hits": { "size": 5, "_source": ["Name", "I'd", "Age"] } } } } } }
说明:terms聚合按Name.keyword分组,仅保留出现≥2次的分组;top_hits展示对应重复文档的核心字段,可按需调整size参数。
2. 查找Account索引中重复的Pay字段
同理,针对Pay字段做聚合查询:
GET /account/_search { "size": 0, "aggs": { "duplicate_pays": { "terms": { "field": "Pay.keyword", "min_doc_count": 2, "size": 1000 }, "aggs": { "duplicate_docs": { "top_hits": { "size": 5, "_source": ["Pay", "I'd"] } } } } } }
注意:若Pay为数值类型,直接用Pay作为聚合字段即可;若为字符串类型,需用Pay.keyword(需提前配置映射)。
二、跨索引关联后的重复数据查询
如果需要按I'd关联两个索引,查找同一I'd下重复的Name或Pay,可使用嵌套聚合实现:
GET /employee,account/_search { "size": 0, "aggs": { "group_by_id": { "terms": { "field": "I'd.keyword", "min_doc_count": 2, "size": 1000 }, "aggs": { "index_groups": { "terms": { "field": "_index" }, "aggs": { "duplicate_names": { "terms": { "field": "Name.keyword", "min_doc_count": 2, "size": 100 }, "aggs": { "doc_details": { "top_hits": { "_source": ["Name", "I'd", "Age"] } } } }, "duplicate_pays": { "terms": { "field": "Pay.keyword", "min_doc_count": 2, "size": 100 }, "aggs": { "doc_details": { "top_hits": { "_source": ["Pay", "I'd"] } } } } } } } } } }
说明:先按I'd分组筛选出出现多次的ID,再按索引拆分,分别在Employee中找重复Name、Account中找重复Pay,最终通过top_hits展示具体文档。
三、直接获取重复文档的查询
如果需要直接返回所有重复Name的Employee文档,可使用以下查询:
GET /employee/_search { "query": { "bool": { "filter": [ { "terms": { "Name.keyword": { "index": "employee", "id": "duplicate_names", "path": "duplicate_names.key" } } } ] } }, "aggs": { "duplicate_names": { "terms": { "field": "Name.keyword", "min_doc_count": 2 } } } }
逻辑:先通过聚合识别重复Name,再用terms查询过滤出这些Name对应的所有文档。
关键注意事项
- 字段映射:text类型字段必须用
.keyword子字段做聚合(需提前配置映射),避免启用fielddata导致内存占用过高。 - 参数调整:根据数据规模调整
size参数,确保聚合结果完整。 - 性能优化:超大数据量下建议使用滚动搜索(scroll)或异步聚合,避免查询超时。
内容的提问来源于stack exchange,提问作者Vijay Soni
相关产品推荐
相关产品推荐

