node.js - 在具有相同 ID 的 elasticsearch 2 文档中
问题描述
嗨,我是 Elasticsearch 的新手,我使用的是 Elasticsearch 5.6 版,因为我知道 Elasticsearch 中每个文档的 _id 都是唯一的。但是在重新索引日志时,我发现了这一点。一些文档具有相同的_id。例如下面的两个日志具有相同的 ID。这怎么可能?
{
"_index": "orders",
"_type": "pending",
"_id": "1473531",
"_score": 1,
"_routing": "44540",
"_parent": "44540",
"_source": {
"id": 1473531,
"level": "info",
"type": "pending",
"status": "",
"message": "Order marked cancelled by system"
}
}
{
"_index": "orders",
"_type": "confirmed",
"_id": "1473531",
"_score": 1,
"_source": {
"id": 1473531,
"source_address": "Independence, MO 64055",
"dest_address": "MO 64138",
"short_source": "Select Physical Therapy",
"short_dest": "Home",
"customer_remarks": null,
"source_lat_long": ["39.0334554", "-94.3761432"],
"dest_lat_long": ["38.986449", "-94.4661768"]
}
}
解决方案
这是因为,您在索引中的类型不同。
第一个文档具有索引orders
但类型为,pending
而其他文档具有相同的索引orders
但类型为confirmed
.
在最新的 ES 版本中,类型已被删除,请参阅删除类型以获取更多信息。
推荐阅读
- apache-spark - Spark 性能 EMR(2.4.5) 与 EKS(3.0.0)
- imodeljs - [imodel.js]关于imodel的地理坐标系的转换
- angular - Angular 和 NGXS 商店应用程序通过商店更新循环结束
- vb.net - UPDATE 命令不会在 SSMS 中将某些列插入到我的数据库中
- cumulocity - 检查数组是否包含在 Cumulocity REST API 中的值查询
- google-maps - 如何查找坐标范围内的城市和邮政编码?
- php - 使用 Woocommerce 中的方法以编程方式设置自定义产品字段
- javascript - this.setState() 似乎不能采用非立即函数
- linux - suid 二进制权限提升
- c++ - cpp摆图形程序编译错误