
数据库
理会拾光
这个作者很懒,什么都没留下…
展开
-
后端开发都应该掌握的Redis基础
Redis的数据结构Redis支持多种不同的数据结构,包括5种基础数据结构和几种比较复杂的数据,这些数据结构可以满足不同的应用场景。五种基础数据结构String:字符串,是构建其他数据结构的基础Hash:哈希列表List:列表Set:集合,在哈希列表的基础上实现Sort Set:有序集合复杂的数据结构Bitmaps:位图,在string的基础上进行位操作,可以实现节省空间的数据结构。Hyperloglog:用于估计一个 set 中元素数量的概率性的数据结构。Geo:geospat原创 2020-08-03 09:01:02 · 199 阅读 · 0 评论 -
缓存
一.缓存粒度控制通俗来讲,缓存粒度问题就是我们在使用缓存时,是将所有数据缓存还是缓存部分数据? 数据类型 通用性 空间占用(内存空间+网络码率) 代码维护 全部数据 高 大 简单 部分数据 低 小 较为复杂 缓存粒度问题是一个容易被忽视的问题,如果使用不当,可能会造成很多无用空间的浪费,可能会造成网络带宽的浪费,可能会造成代码通用性较差等情况,必须学会综合数据通用性、空间占用比、代码维护性 三点评估取舍因素权衡使用。二.缓存穿透问题原创 2020-07-24 14:35:56 · 116 阅读 · 0 评论 -
Redis数据结构扩展
GEOGEOADD locations 116.419217 39.921133 beijinGEOPOS locations beijinGEODIST locations tianjin beijin km 计算距离GEORADIUSBYMEMBER locations beijin 150 km 通过距离计算城市注意:没有删除命令 它的本质是zset (type locations)所以可以使用zrem key member 删除元素zrange key 0 -1 表示所原创 2020-07-24 14:02:49 · 183 阅读 · 0 评论 -
Redis集群演变过程
1.单机版核心技术:持久化持久化是最简单的高可用方法(有时甚至不被归为高可用的手段),主要作用是数据备份,即将数据存储在硬盘,保证数据不会因进程退出而丢失。2.主从复制复制是高可用Redis的基础,哨兵和集群都是在复制基础上实现高可用的。复制主要实现了数据的多机备份,以及对于读操作的负载均衡和简单的故障恢复。缺陷是故障恢复无法自动化;写操作无法负载均衡;存储能力受到单机的限制。3.哨兵在复制的基础上,哨兵实现了自动化的故障恢复。缺陷是写操作无法负载均衡;存储能力受到单机的限制。4.集群通过集原创 2020-07-24 13:56:26 · 218 阅读 · 0 评论 -
Redis Cluster高可用集群
一.redis cluster集群是什么?redis cluster集群是一个由多个主从节点群组成的分布式服务器群,它具有复制、高可用和分片特性。Redis cluster集群不需要sentinel哨兵也能完成节点移除和故障转移的功能。需要将每个节点设置成集群模式,这种集群模式没有中心节点,可水平扩展,据官方文档称可以线性扩展到1000节点。redis cluster集群的性能和高可用性均优于之前版本的哨兵模式,且集群配置非常简单二.redis cluster集群搭建/usr/local/bin/re原创 2020-07-24 13:49:59 · 213 阅读 · 0 评论 -
Redis哨兵模式
一.是什么,能干嘛?在Redis 2.8版本开始引入。哨兵的核心功能是主节点的自动故障转移。通俗来讲哨兵模式的出现是就是为了解决我们主从复制模式中需要我们人为操作的东西变为自动版,并且它比人为要更及时二.哨兵主要功能(做了哪些事)监控(Monitoring):哨兵会不断地检查主节点和从节点是否运作正常。自动故障转移(Automatic Failover):当主节点不能正常工作时,哨兵会开始自动故障转移操作,它会将失效主节点的其中一个从节点升级为新的主节点,并让其他从节点改为复制新的主节点。原创 2020-07-24 12:47:43 · 104 阅读 · 0 评论 -
Redis主从复制
一、是什么1.单机有什么问题:单机故障容量瓶颈qps瓶颈主机数据更新后根据配置和策略,自动同步到备机的master/slaver机制,mester已写为主,slaver已读为主2.能干嘛1.读写分离2.容灾备份3.怎么玩玩法原则:1.配从不配主2.使用命令 SLAVEOF 动态指定主从关系 ,如果设置了密码,关联后使用 config set masterauth 密码3.配置文件和命令混合使用时,如果混合使用,动态指定了主从,请注意一定要修改对应的配置文件1.新建原创 2020-07-24 11:48:41 · 150 阅读 · 0 评论 -
Redis的持久化机制
redis的持久化机制说白了,就是在指定的时间间隔内,将内存当中的数据集快照写入磁盘,它恢复时是将快照文件直接读到内存什么意思呢?我们都知道,内存当中的数据,如果我们一断电,那么数据必然会丢失,但是玩过redis的同学应该都知道,我们一关机之后再启动的时候数据是还在的,所以它必然是在redis启动的时候重新去加载了持久化的文件redis提供两种方式进行持久化,一种是RDB持久化默认,另外一种是AOF(append only file)持久化。一.RDB是什么?原理是redis会单独创建(原创 2020-07-24 11:24:10 · 138 阅读 · 0 评论 -
Redis逐出算法
相关配置:maxmemory: 最大可使用内存,占用物理内存的比例,默认值为0,,表示不限制。生产环境一般根据需求设置,通常50%以上maxmemory-policy: 达到最大内存后,对挑选出来的数据进行删除策略maxmemory-samples: 每次选取待删除数据的个数,选取数据时并不会全库扫描,采用随机获取数据的方式作为待检测删除数据...原创 2020-07-24 11:13:39 · 86 阅读 · 0 评论 -
Redis删除策略
定时删除–>以CPU内存换redis内存惰性删除–>以redis内存换CPU内存定期删除redis使用:惰性删除+定期删除redis在启动的时候读取配置文件hz的值,默认为10每秒执行hz次serverCron()–>databasesCron()—>actveEXpireCyle()actveEXpireCyle()对每个expires[*]进行逐一检测,每次执行250ms/hz对某个expires[* ]检测时,随机挑选N个key检查如果key超时原创 2020-07-24 11:11:38 · 86 阅读 · 0 评论 -
Redis发布订阅
publish: 发布消息 语法:publish channel名称 “消息内存”subscribe: 订阅消息 语法:subscribe channel名称subscribe: 使用通配符订阅消息 语法: pubscribe channel*名称punsubscribe: 使用通配符退订消息。语法:punsubscribe channel*名称unsubscribe : 退订消息 语法:unsubscribe channel名称...原创 2020-07-24 11:07:50 · 86 阅读 · 0 评论 -
Redis事务
redis事务什么是redis的事务?redis事务就是一个命令执行的队列,将一系列预定义命令包装成一个整体,就是一个队列。当执行的时候,一次性按照添加顺序依次执行,中间不会被打断或者干扰。能干嘛?一个队列中,一次性,顺序性,排他性的执行一系列命令redis事务基本操作开启事务:multi 设置事务的开始位置,这个指令开启后,后面所有的指令都会加入事务中执行事务: exec 设置事务的结束位置,同时执行事务,与multi成对出现,成对使用取消事务:discard 终止当前事原创 2020-07-23 16:01:28 · 121 阅读 · 0 评论 -
Solr(一)
一.认识Solr1.Solr是Apache下的一款全文检索服务器. 也可以把它理解成是一个数据库.2.Solr是基于Lucene开发的. Lucene中只做了部分全文检索的实现.3.Solr是用于提高系统中数据的查询效率的, 同时, 还可以对查询结果做更多的操作, 例如拆词(分词), 高亮显示关键字, 分页显示查询结果, 查询结果过滤, …4.Solr会将数据建立索引(倒排索引), 极大的提升数据检索的效率.5.官网: http://lucene.apache.org/solr/6.solr的工原创 2020-07-21 16:43:15 · 182 阅读 · 0 评论 -
Redis
一.Redis简介Redis是一个内存型的NoSQL数据库.1.NoSQL数据库和关系型数据库关系型数据库, 数据是通过关系的形式进行存储和管理的.NoSQL数据库, 泛指非关系型数据库. Redis, MongDB, …2.Redis概述 1.Redis: Remote DIrectory Server. 远程字典服务. 在内存中通过k-v结构存放数据. 2.Redis官网: https://redis.io/, 中文网站: http://redis.cn/3.Redis的版本: 奇数版表原创 2020-07-21 16:33:06 · 103 阅读 · 0 评论 -
Mysql数据库主要的存储引擎
从Mysql5.5之后,默认内置存储引擎是InnoDB,它的特点:原创 2020-04-12 20:31:48 · 99 阅读 · 0 评论 -
PLSQL显示密码错误
在oracle安装路径下—>NETWORK—>ADMIN—>加一个tnsnames.ora原创 2020-07-07 09:05:04 · 1420 阅读 · 0 评论