【发布时间】:2018-01-02 23:24:30
【问题描述】:
我在 MySQL 中有下一个结构:
- 表组 -
id、title、user_id - 表格关键字 -
id,title - 表组关键字 -
group_id,keyword_id
我搜索了 5 个案例:
- 按组名完整匹配
title = "keyword" - 完全匹配关键字标题
title = "keyword" - 按组标题进行部分匹配
title like "keyword%" - 按组标题进行部分匹配
title like "%keyword%" - 部分匹配关键字标题
title like "%keyword%"
这些查询合并为一个查询。对于每个子查询,它会附加一个名为 priority 的列,在该列上进行排序。
我的问题是:我应该如何配置 ElasticSearch 来执行上述情况,或者我应该如何构建对 Elastic 的查询以获得结果?我问,因为这个查询在Mysql上很慢,我们做了很多优化,加了索引,分表等等,所有的优化结果都是暂时的。
谢谢
【问题讨论】:
标签: php mysql elasticsearch