目前的索引流程为:
这样确实可以保证全量。但是前提是不重启,或者重启的间隔很短。 毕竟binlog显然不可能是永久的(所占空间太大了),如果在最后一个 binlog 文件和 position失效前,并没有重新更新备份和位置,那检索系统重启监听时不就缺失消息了吗?
我个人的改进想法:
1.备份时肯定是记录bin最后一个 binlog 文件和 position ,更新机制我有两种想法:
- 法一:定时任务,每隔一段时间备份一次(类似转储点)
- 法二:懒加载。每次读取全量索引前会先严重binlog位置信息是否过期,如果过期,就清除。
我的思路是否可靠?是否有更好的改进?目前工业界是如何进行处理的呢?希望能得到您的解答。