gpt4 book ai didi

mysql - 通过 ElasticSearch 搜索时如何保持规范化模型?

转载 作者:可可西里 更新时间:2023-11-01 07:01:19 24 4
gpt4 key购买 nike

设置 MySQL/ElasticSearch 组合时,是否更好:

  1. 将所有模型信息完全同步到 ES(甚至是非搜索数据),以便在找到结果时,我可以轻松获得所有信息。

  2. 只同步可搜索的字段,然后当我返回结果时,使用 id 字段来查找 MySQL 数据库中的实际数据?

最佳答案

Elasticsearch 数据模型通常更喜欢非规范化数据。根据用例(大量数据、动力不足的机器、节点太少等)在 ES(父子)中保持关系以模仿 RDB 世界中的内部连接等是昂贵的。

您的问题非常开放,答案取决于用例。一般来说:

  • 避免模仿确切的数据库表 - ES 索引及其关系
  • 将所有内容都保留在 ES 中的好处是您不需要同时更新这两种机制
  • 如果您的可搜索数据与总数据量相比非常小,我不明白您为什么不能仅将可搜索数据与 ES 同步
  • 尝试在 ES 中扁平化数据并抵制任何使用父/子的冲动,因为这是在 MySQL 中完成的
  • 我并不是说您不能使用父/子。您可以,但请确保在采用此方法之前对此进行测试,并确保您对响应时间没有问题。无论如何,对于您选择的任何一种方法,这都是一个有效的建议。

关于mysql - 通过 ElasticSearch 搜索时如何保持规范化模型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31599120/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com