是否可以从 MySQL 中的 Redis 获取数据(使用 native 函数或其他机制)?我希望能够在 ORDER BY 语句中使用此信息以使用 LIMIT 进行分页。否则我将不得不从 MySQL 获取所有数据,从 Redis 获取每一行的附加数据,在我的应用程序中排序并保留我需要的页面。
如果 MySQL 可以为每一行调用一个函数以从 Redis 获取数据,进行排序并只向我发送我需要的页面,那将会更有效率。
最佳答案
即使这是可能的(有了开源,技术上一切皆有可能),它也不太可能比在您的应用程序中使用更简洁的排序方法来提高性能。如果您的数据集很小,返回所有内容不是问题。如果您的数据集很大,您可能需要按索引列排序以获得 sql 的良好性能,并且您不能索引函数。
另外,如果结果集不是很大,主要的性能问题通常是延迟,而不是处理或数据传输。一个来自 sql 的查询和一个来自 redis 的 mget 应该相当快。
如果在查看页面时您真的只需要一个查询,您将需要在一个地方同时记录和排序数据 - 将来自 Redis 的数据添加为 sql 中的一列,或者将您的查询缓存在 Redis 列表中。
关于mysql - 是否可以从 MySQL 中调用 Redis?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4588466/