我有这个 MySQL 表
id | description | tags |
1 hi man tag1;tag2;tag3
2 hi woman tag0;tag2;tag9
我想知道建立一个简单的搜索引擎的最佳实践是什么?是否可以仅使用 MySQL 查询来获得搜索关键字优先级,或者需要更复杂的东西,例如 elasticsearch、lucene、sphinx 等.. ??
我有这个 MySQL 表
id | description | tags |
1 hi man tag1;tag2;tag3
2 hi woman tag0;tag2;tag9
我想知道建立一个简单的搜索引擎的最佳实践是什么?是否可以仅使用 MySQL 查询来获得搜索关键字优先级,或者需要更复杂的东西,例如 elasticsearch、lucene、sphinx 等.. ??
只是用空格分隔标签,而不是用分号。然后将 FULLTEXT 索引添加到您的表中。
极客资源:http ://dev.mysql.com/doc/refman/5.0/en/fulltext-search.html
更友好的资源:http ://www.artfulcode.net/articles/full-text-searching-mysql/
您可以使用 MySQL 进行全文搜索
请参阅示例:- http://devzone.zend.com/26/using-mysql-full-text-searching/
但作为一种性能,与 elasticsearch、lucene、sphinx 等相比,全文搜索是一种慢速搜索。
因此,如果您想要非常快的性能,请使用 elasticsearch、lucene、sphinx 等。对于正常速度,您可以使用简单的全文搜索