阿里一面问题

问到了两个没关注的问题,有老哥来在线解答一波嘛
1.多台服务器redis如何保证数据最终一致性(我觉得是和集群配置有关?)
2.索引的执行顺序(唯一,主键,联合的顺序,我觉得是主键,唯一,联合?)
#阿里巴巴##面试题目#
全部评论
数据研发嘛
点赞 回复 分享
发布于 2019-08-10 19:21
对于 InnoDB 这种聚簇索引,主键索引都是最后才执行的,先根据辅助索引(唯一索引、非唯一索引)查找到对应的主键索引,然后去主键索引找....当然如果直接在辅助索引的关键字就能获取到想要的值,也就是发生索引覆盖,就不需要去主键索引查询了。
2 回复 分享
发布于 2019-08-10 18:51
第二个问题有点摸不到头脑,他应该会给一个sql让你分析吧。单说执行顺序的话,一次语句只能使用一个索引,没有顺序这个概念啊。
点赞 回复 分享
发布于 2020-03-16 17:50
Redis 的全同步,半同步和异步 怎么设置
点赞 回复 分享
发布于 2019-08-10 22:47
强一致性参考zab,主节点先写日志,在同步从,主再提交,最终一致性的话如果是部分同步的话,会进行偏移量的校验,如果丢失,主会补发缺失的命令或者说字节流
点赞 回复 分享
发布于 2019-08-10 22:21
应该是主从复制吧,那么slave从如何获取到最新的数据,master会将命令进行缓存,发给slave,slave重做就可以保证,断开连接后,再连上可以断点续传
点赞 回复 分享
发布于 2019-08-10 20:01
还有一个一致性问题就是数据库与redis缓存的双写一致性,也就是经典的*** aside pattern,先删除缓存,然后更新数据库
点赞 回复 分享
发布于 2019-08-10 19:51
我觉得得问一下这个多台是指哪方面的。 redis集群的话,数据通过一定的哈希算法映射到不同的redis节点上,如果没有主从复制的话,每个redis节点存的数据都不一样的。 redis为了实现读写分离和防止单点故障,采用主从复制,从节点复制主节点的内容。然后在主节点故障后采用哨兵机制,所有哨兵节点共同订阅master节点的channel相互感知,主节点下线后哨兵通过raft***一个leader,leader从slave节点中选择一个作为新的master
点赞 回复 分享
发布于 2019-08-10 19:38
多台Redis服务器之间Redis是通过内部的分布式一致性协议raft算法来保证的。
点赞 回复 分享
发布于 2019-08-10 18:59
*** aside pattern
点赞 回复 分享
发布于 2019-08-10 18:51
马一下。。等大佬解答
点赞 回复 分享
发布于 2019-08-10 18:49
分布式锁?
点赞 回复 分享
发布于 2019-08-10 18:47

相关推荐

牛牛不会牛泪:脉脉太多这种了,纯水军
点赞 评论 收藏
分享
评论
点赞
52
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务