redis
文章平均质量分 58
大数据面壁者
大数据相关知识分享,框架底层原理机制,生产学习中遇到的相关问题分享,共同学习,共同进步。
展开
-
实时日活数据分析
1. 代码思路1)消费Kafka中的数据;2)利用Redis过滤当日已经计入的日活设备;3)把每批次新增的当日日活信息保存到HBase中;4)从HBase中查询出数据,发布成数据接口,通可视化工程调用。2. 配置相关1)config.properties# Kafka配置kafka.broker.list=hadoop102:9092,hadoop103:9092,hadoop104:9092# Redis配置redis.host=hadoop102redis.port=63792原创 2021-02-02 20:35:01 · 1550 阅读 · 0 评论 -
Redis集群优缺点
Redis集群优缺点1. 引入集群问题:容量不够,redis如何进行扩容?并发写操作, redis如何分摊?什么是集群:Redis 集群实现了对Redis的水平扩容,即启动N个redis节点,将整个数据库分布存储在这N个节点中,每个节点存储总数据的1/N。Redis 集群通过分区(partition)来提供一定程度的可用性(availability): 即使集群中有一部分节点失效或者无法进行通讯, 集群也可以继续处理命令请求。2. 集群的优缺点优点:实现扩容分摊压力无中心原创 2021-01-26 22:18:27 · 1566 阅读 · 1 评论 -
Redis集群中故障恢复
Redis集群中故障恢复问题1:如果主节点下线?从节点能否自动升为主节点?答:主节点下线,从节点自动升为主节点。问题2:主节点恢复后,主从关系会如何?主节点恢复后,主节点变为从节点!问题3:如果所有某一段插槽的主从节点都宕掉,redis服务是否还能继续?答:服务是否继续,可以通过redis.conf中的cluster-require-full-coverage参数(默认关闭)进行控制。主从都宕掉,意味着有一片数据,会变成真空,没法再访问了!如果无法访问的数据,是连续的业务数据,我们需要停原创 2021-01-26 22:15:42 · 1493 阅读 · 0 评论 -
Redis集群中读取数据
Redis集群中读取数据CLUSTER KEYSLOT 计算键 key 应该被放置在哪个槽上CLUSTER COUNTKEYSINSLOT 返回槽 slot 目前包含的键值对数量CLUSTER KEYSLOT :计算key应该放在哪个槽CLUSTER GETKEYSINSLOT 返回 count 个 slot 槽中的键。...原创 2021-01-26 22:14:08 · 1335 阅读 · 0 评论 -
向Redis集群中写入数据
2.6 集群中写入数据2.6.1 客户端重定向①在redis-cli每次录入、查询键值,redis都会计算出该key应该送往的插槽,如果不是该客户端对应服务器插槽,redis会报错,并告知应前往的redis实例地址和端口。②redis-cli客户端提供了 –c 参数实现自动重定向。如 redis-cli -c –p 6379 登入后,再录入、查询键值对可以自动重定向。③每个slot可以存储一批键值对。2.6.2 如何多键操作采用哈希算法后,会自动地分配slot,而 不在一个slot下的键值,原创 2021-01-26 22:11:47 · 2359 阅读 · 0 评论 -
Redis之主从复制与哨兵模式
Redis之主从复制与哨兵模式1. 主从简介配置多台Redis服务器,以主机和备机的身份分开。主机数据更新后,根据配置和策略,自动同步到备机的master/salver机制,Master以写为主,Slave以读为主,二者之间自动同步数据。目的:读写分离提高Redis性能;避免单点故障,容灾快速恢复原理:每次从机联通后,都会给主机发送sync指令,主机立刻进行存盘操作,发送RDB文件,给从机从机收到RDB文件后,进行全盘加载。之后每次主机的写操作命令,都会立刻发送给从机,从机执行相同的命令来保原创 2021-01-26 22:09:39 · 569 阅读 · 0 评论 -
Redis中 锁的机制
Redis中 锁的机制1. 悲观锁执行操作前假设当前的操作肯定(或有很大几率)会被打断(悲观)。基于这个假设,我们在做操作前就会把相关资源锁定,不允许自己执行期间有其他操作干扰。Redis不支持悲观锁。Redis作为缓存服务器使用时,以读操作为主,很少写操作,相应的操作被打断的几率较少。不采用悲观锁是为了防止降低性能。悲观锁: 适合多写少读的场景! 只写不读的场景!2. 乐观锁执行操作前假设当前操作不会被打断(乐观)。基于这个假设,我们在做操作前不会锁定资源,万一发生了其他操作的干扰,那么本原创 2021-01-26 21:25:26 · 910 阅读 · 0 评论 -
Redis中的事务机制
Redis中的事务机制1. 事务简介Redis中事务,不同于传统的关系型数据库中的事务。Redis中的事务指的是一个单独的隔离操作。Redis的事务中的所有命令都会序列化、按顺序地执行且不会被其他客户端发送来的命令请求所打断。Redis事务的主要作用是串联多个命令防止别的命令插队2. 事务常用命令MULTI标记一个事务块的开始EXEC执行事务中所有在排队等待的指令并将链接状态恢复到正常 当使用WATCH 时,只有当被监视的键没有被修改,且允许检查设定机制时,EXEC会原创 2021-01-26 20:53:01 · 230 阅读 · 1 评论 -
使用Java连接Redis进行操作
使用Java连接Redis进行操作一、pom依赖<dependency> <groupId>redis.clients</groupId> <artifactId>jedis</artifactId> <version>2.9.0</version></dependency><dependency> <groupId>org.apache.comm原创 2021-01-26 20:37:09 · 272 阅读 · 0 评论 -
Redis基本常用操作命令
Redis基本操作1. 数据库连接操作2. key的操作Redis中的数据以键值对(key-value)为基本存储方式,其中key都是字符串。3. 常用五大数据类型Redis中的数据以键值对(key-value)为基本存储方式,其中key都是字符串,这里探讨数据类型都是探讨value的类型。...原创 2021-01-26 19:55:22 · 2527 阅读 · 0 评论 -
Redis的持久化操作
Redis的持久化操作一、持久化的目的 将内存中的数据,备份到磁盘!二、RDB2.1 原理RDB: 快照备份,默认自动开启备份: 将内存中的数据,全部(全量)以快照(dump文件)的形式持久化到磁盘!恢复: redis服务在每次启动时,会自动根据配置的dump文件的路径,加载所有的dump文件到内存!过程: 主动备份: ①save (阻塞主进程)/ bgsave (不会阻塞服务端进程,在备份依然可以接收客户端的请求) ②shutdown ③flushall,将flus原创 2021-01-25 23:42:52 · 215 阅读 · 0 评论 -
Redis简介与使用
一、Redis简介Redis:Remote Dictionary Server(远程字典服务器)二、Redis特点使用 C语言开发 ,直接面向操作系统底层短小精悍 ,整个redis一共5w行代码,核心代码只有2w行,性能强劲基于内存单线程(一次只能执行一条命令),多路IO复用(读写速度快)NoSql,没有模式,所有数据都是K-V存储 K(string) - V (8中类型,常用的5种string,list,set,hash,zset(sorted原创 2021-01-25 23:34:25 · 137 阅读 · 0 评论 -
互联网项目架构演变历史
互联网项目架构演变目录互联网项目架构演变一、起源--单机版项目二、改进版本1--Memcache缓存三、改进版本2--MySQL主从读写分离四、改进版本3--MySQL集群五、目前互联网常用架构六、目前互联网的新要求:3V和3高一、起源–单机版项目二、改进版本1–Memcache缓存着访问量上升,大部分使用MySQL架构的网站在数据库上都开始出现性能问题,Web程序不能再仅仅专注在功能上,同时也在追求性能。开始使用缓存技术缓解数据库压力,优化数据库的结构和索引。刚开始时比较流行的是通过文件缓存原创 2021-01-25 23:29:16 · 293 阅读 · 0 评论