查询分离简介

查询分离即每次写数据时保存一份数据到其他的存储系统里,用户查询数据时直接从中获取数据。

何种场景下使用查询分离

当在实际业务中遇到以下情形时,就可以考虑使用查询分离:

  • 数据量大

  • 查询数据的响应效率很低:因为表数据量大,或者关联查询太过复杂,导致查询很慢的情况。

  • 所有写数据请求的响应效率尚可:虽然查询慢,但是写操作的响应速度还可以接受的情况。

  • 所有数据任何时候都可能被修改和查询:这一点是针对冷热分离的,因为如果有些数据走入终态就不再用到,就可以归档到冷数据库了,不一定要用查询分离这个方案。

查询分离的实现思路

查询分离的实现思路如下:

  1. 如何触发查询分离?

  2. 如何实现查询分离?

  3. 查询数据如何存储

  4. 查询数据如何使用

  5. 历史数据如何迁移?