请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

正在回答

1回答

同学你好:

    这里是两个点:第一,文件中保存的是什么?第二,为什么要从文件中加载全量索引?

    第一个问题:文件中保存的是预先存储的广告数据,可以以任意序列化的方式存储到文件中。课程中使用的是 JSON 序列化的方式保存,且放到了本地文件系统中的某一个目录下面。在多实例的情况下,这份文件是放到公共的分布式文件系统上的,例如:NFS 或 HDFS。

    第二个问题:对于之后的增量索引,即对数据库中的表做了增删改操作,检索服务可以直接监听 Binlog 实现增量更新索引。但是,对于之前的数据内容怎么办呢?当然是直接读取之前保存的那份文件。但是,为什么不直接读取数据库,而是加载文件呢?这是因为,多个实例部署的时候,同时从 MySQL 中读取这一份数据,会给 MySQL 带来很大的压力。所以,才会从文件中加载全量索引。


    欢迎来 QQ 群随时交流、讨论,也非常感谢同学的支持! 

6 回复 有任何疑惑可以回复我~
  • 提问者 慕雪7212599 #1
    老师, 全量同步索引的时候, 如果有增删该查的话, 是否只是记录在binlog 里面, 等全量后 , 再进行增量
    回复 有任何疑惑可以回复我~ 2019-02-02 19:30:22
  • 张勤一 回复 提问者 慕雪7212599 #2
    同学你好:是的,先全量,再增量。如果方便的话,且符合预期,能把问题标记为正确答案吗?
    回复 有任何疑惑可以回复我~ 2019-02-02 19:32:26
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信