redis实现数据一致性 redis数据一致性面试题

redis┃面试官问我redis事务和mysql事务的区别,我mysql和redis因为需求的不同 , 一般都是配合使用 。
redis是一个支持网络、可基于内存亦可持久化的日志型、Key-Value数据库 。可以认为redis比mysql简化很多 。mysql支持集群 。
类型不同 MySQL是关系型数据库;而Redis是非关系型数据库 。作用不同 mysql用于持久化的存储数据到硬盘,功能强大,但是速度较慢 。redis用于存储使用较为频繁的数据到缓存中 , 读取速度快 。
存储数据的方法不同:mysql作为关系型数据库,是用二维表来存储数据,redis作为非关系型数据库,使用key_value键值对来存储数据 。作用不同:mysql主要是用来存储数据用的,因为用表存数据方便查询,统计,管理 。
redis集群主数据都是一致的吗为什么?主节点和从节点保存的数据是相同的 , 但是因为同步,从节点的数据会有一点延迟 。但是主从模式的高可用会有问题 。因为主节点挂了之后是没有自动选主机制的,需要人工干预来指定一个从节点作为主节点 。
针对完整的重同步的缺陷,Redis提供了部分的重同步功能 。
Redis 集群是通过在不同的节点之间分配数据来实现的 。每个节点都有自己的数据子集,其中一些是主节点,而另一些是从节点 。当需要更多存储空间或更多的处理能力时,可以通过向集群添加更多的节点来实现扩展 。
传统的Redis集群采用的主从复制模式,一般为一主多从 , 主节点有读写权限,但是从节点只有读的权限 。主节点会定期将数据同步到从节点中 , 保证数据一致性的问题 。
会对响应 和 指令吞吐量有影响 。Redis 提供 6 种内存淘汰机制:在 0 后增加了两种模式:有这样一种场景,应用1 向主节点写数据,并且设置失效时间 。
redis面试之数据结构【redis实现数据一致性 redis数据一致性面试题】1、redis数据结构有哪些?推荐:《redis视频教程》字符串(strings):存储整数(比如计数器)和字符串(废话 。
2、Redis中的链表结构主要是List 。Redis的List数据结构实际上是一个双向链表,这意味着我们可以在链表中的任何位置进行插入或者删除操作 。
3、string是redis的最基本的数据类型 。string类型是二进制安全的,也就是说string里可以包含任何的数据类型 。
4、一个key对应一个value,其上支持的操作与Memcached的操作类似 。但它的功能更丰富 。二 list(双向链表)list是一个链表结构,主要功能是push、pop、获取一个范围的所有值等等 。

    推荐阅读