我正在开发使用ElasticSearch和SQL数据库的应用程序。 那么,什么是最好的方式来保存用户的搜索查询和显示统计信息,如最受欢迎的请求?简单的方法是保存在SQL数据库和计数。但是也许在ElasticSearch中构建了一些技术?在ElasticSearch中保存用户搜索查询的最佳方式?
0
A
回答
3
您可以通过在ES群集中创建第二个索引来完成此操作。当用户通过应用程序提交搜索时,执行两个步骤。
- 将搜索作为查询提交给Elasticsearch以进行正常搜索行为。
- 使用用户提供的搜索条件向集群提交索引请求。
对于已提交的所有搜索字词的第二个索引,您可以做许多简洁的事情。对于你的情况,你可以像在SQL中那样拥有一个'count'字段,随着更多人搜索该字词,你可以增加字段。另一个很好的用例是Google风格推荐条款。您的用户界面可以在每次按键时使用输入的文本提交搜索请求,并使用之前搜索的字词进行填充。您甚至可以通过添加用户字段并过滤掉不是来自特定用户的结果来个性化这一点。
需要记住的是ElasticSearch可以用作主数据存储和辅助数据存储。我总是建议你只保留你愿意丢失的数据(比如搜索历史记录)作为主数据。将您的系统关键数据保存在更传统的数据存储(如SQL)中,这样一来,如果出现任何问题,备份和恢复都很容易!
相关问题
- 1. 最佳搜索查询
- 2. 在rom中搜索的最佳方式
- 3. 过滤搜索查询的最佳方式是什么 - PHP MySQL
- 4. 在CloudBoost中保存当前用户数据的最佳方式
- 5. 用户搜索输入的最佳lucene查询
- 6. 搜索模糊查询 - Elasticsearch
- 7. 在iPhone上保存用户登录信息的最佳方式
- 8. 最佳方式查询
- 9. 执行搜索的最佳方式
- 10. 在本地存储中保存用户最新搜索
- 11. 在Mongo中存储/查询`last_read`的最佳方式是什么?
- 12. elasticsearch查询最新索引
- 13. 在python/django中保存用户可用性的最佳方法
- 14. 什么是保存用户名和高分的最佳方式
- 15. 在ElasticSearch中重新索引多个索引的最佳方法
- 16. 允许用户搜索MySQL数据库时处理不同SQL搜索查询的最佳方法
- 17. 使用elasticsearch搜索用户
- 18. Kindle - 保存图像的最佳方式
- 19. 通过elasticsearch中的缓存搜索查询进行分页
- 20. 在搜索引擎中搜索Ruby语法的最佳方法
- 21. 排除查询集中的查询集的最佳方式
- 22. 在Android中实现搜索的最佳方式是什么?
- 23. 在Rails中实现简单排序/搜索的最佳方式
- 24. 在NOSQL数据库中搜索GPS点的最佳方式
- 25. 在Rails中按日期搜索的最佳方式是什么?
- 26. 为10k +用户保存用户数据的最佳方法
- 27. 索引/存储用于搜索/检索的代码(脚本,查询)的最佳高效方法是什么?
- 28. 在C#中查询XML的最佳方式 - 使用LINQ等
- 29. 在MySQL中存储用户“收藏夹”的最佳方式
- 30. 在Android中存储用户数据的最佳方式