ElasticSearch Long ID 和搜索性能
ElasticSearch Long ID and search performance
使用亚马逊的 ElasticSearch 作为搜索引擎。最近与一位开发人员讨论了 Upsert 策略。
在我看来(我不是一个经验丰富的 ES 开发人员)有一个复杂的密钥是可以的 _id
,例如Result-1
、Data-2
等。这将有助于更新插入和重复数据删除。但有人担心关键数据类型。长键,如字符串、Sha1-digest、十六进制等——可能会影响搜索性能,最好有一些短键或将其传递给 ES 而无需预定义 _id
并使用文档正文或某些特定属性进行重复数据删除。
我还没有读过关于 ID 性能的任何内容 — 从官方文档到 medium/blogs。
关注是否正确,我应该关注吗?
谢谢!
使用自定义 ID 字段的问题在于索引阶段,因为使用自动生成的字段,Elasticsearch 可以安全地索引文档而无需查询唯一性。如果你对你的索引率没问题,那么你应该没问题。
如果您查看 Tune for Search speed 文档,没有关于使用自动生成的 ID 的建议。
相关阅读。
使用亚马逊的 ElasticSearch 作为搜索引擎。最近与一位开发人员讨论了 Upsert 策略。
在我看来(我不是一个经验丰富的 ES 开发人员)有一个复杂的密钥是可以的 _id
,例如Result-1
、Data-2
等。这将有助于更新插入和重复数据删除。但有人担心关键数据类型。长键,如字符串、Sha1-digest、十六进制等——可能会影响搜索性能,最好有一些短键或将其传递给 ES 而无需预定义 _id
并使用文档正文或某些特定属性进行重复数据删除。
我还没有读过关于 ID 性能的任何内容 — 从官方文档到 medium/blogs。
关注是否正确,我应该关注吗?
谢谢!
使用自定义 ID 字段的问题在于索引阶段,因为使用自动生成的字段,Elasticsearch 可以安全地索引文档而无需查询唯一性。如果你对你的索引率没问题,那么你应该没问题。
如果您查看 Tune for Search speed 文档,没有关于使用自动生成的 ID 的建议。
相关阅读。