百度健康实习一面20230824
- 实习mongodb迁移mysql
第二阶段,dts完成存量数据全部迁移后,才执行第三个阶段
mongo更新的数据不会更新mysql,mysql会更新自己的数据
网上的架构: 异构数据库迁移 (opens new window)
canal是什么
dts底层原理怎么实现的。怎么做binlog数据迁移,原理是什么,怎么解析binlog
如何保证mysql和mongo写都成功。例如一条数据,mysql写成功了,但是mongo写失败了,流程是怎么样的,怎么处理这一条数据。 参考:如果两边的写操作有失败,都按照mongo的逻辑为准,mongo失败则失败。
第四个阶段,数据库迁移成功后,什么叫做没有问题,有什么对照吗? 写一个定时脚本定时检测抽样数据,检查一致性。当数据不一致时,采用mongo数据覆盖mysql数据
http和rpc区别,为什么会选择使用rpc rpc一个消息传递相比http的一次调用,占据的大小更小,因为对于http的消息头,使用的是key/value键值对,且是明文传输,占据了很大的空间【极端情况就是body没有·传输任何信息,消息头却占用了大量的空间】 而对于rpc来说,通信的双方可以自定义定制一些双方理解的协议,然后对消息中的消息头和消息体都进行压缩编码,在安全性上有一定的保障,且数据占用空间更小。
grpc、thrift底层原理。grpc实现原理
mysql数据库一张表一般可以存储多少条数据,怎么计算出来。 网上只有简单的计算,忽略了很多东西。建议后续看更权威的资料
mysql中一页会存哪些数据。 页的结构: File Header: 文件头,表示页的信息 Page Header: 页头,表示页的状态信息 Infimum+supremum:两个虚拟的伪记录,分别表示页中的最小记录和最大记录。 User Records: 存储行记录的内容 Free Space: 页中还没被用使用的空间 Page Directory: 存储用户记录的相对位置,对记录起到索引作用 File Taller:校验页的完整性
mysql对哪些字段建立索引,为什么建立的索引需要有差别性。
mysql支持哪些级别的事务。说一下读提交和可重复度的区别。
什么是undolog,redolog和undolog区别
一条update语句过程
多条语句组成一个事务,原子性是怎么实现的。与undolog无关,用于回滚的。与bufferpool结构有关“其中有组的概念,一组成功一组失败” 答:网上查了资料,原子性是由undolog保证的
算法:1->2->3->4->5 反转2,4 得到1->4->3->2->5