2023-01-24
一、NoSQL数据库
1、NoSQL数据库的简介
NoSQL(NoSQL=Not Only SQL),即“不仅仅是SQL”,泛指非关系型的数据库。NosQL不依赖业务逻辑方式存储,而以简单的key-value模式存储。因此大大的增加了数据库的扩展能力。
(1)不遵循SQL标准
(2)不支持ACID。(原子、一致、隔离、持久)
(3)远超于SQL的性能
2、NoSQL适用场景
(1)对数据高并发的读写
(2)海量数据的读写
(3)对数据高可扩展的
3、NoSQL不适用场景
(1)需要事务支持
(2)基于sql的结构化查询存储,处理复杂的关系。
4、非关系型数据库
(1)Memcache
①不支持持久化
②支持类型单一
③一般是作为缓存数据库辅助持久化的数据库
(2)Redis
①支持持久化
②支持多种数据结构的存储,比如list、set、hash、zset
③一般是作为缓存数据库辅助持久化的数据库
(3)MongDB
①高性能、开源、模式自由的文档型数据库
②数据都在内存中,如果内存不足,吧不常用的数据保存到硬盘
③虽然是key-value模式,但是对value(尤其是json)提供了丰富的查询功能
④支持二进制数据及大型对象
⑤可以根据数据的特点替代RDBMS,成为独立的数据库。或者配合RDBMS,存储特定的数据。
2023-01-25
一、Redis概述
1、Redis概述
(1)Redis是一个开源的key-value存储系统。
(2)Redis(Remote Dictionary Service):远程字典服务,Redis是一个开源的使用ANSIC语言编写、支持网络、可基于内存亦可持久化的日志型、key-value数据库(NoSQL),并提供多种语言的API。实际开发中,主要时用来做缓存,加快查询效率。
(3)支持存储的value类型相对更多,包括string(字符串)、list(列表)、set(集合)、zset(有序集合)和hash(哈希类型)
(4)这些数据类型都支持push/pop、add/remove及取交集并集和差集及更丰富的操作,而且这些操作都是原子性的。
(5)在此基础上,Redis支持各种不同方式的排序。
(6)为了保证效率,数据都是缓存在内存中。
(7)redis会周期性的把更新的数据写入磁盘或者把修改操作写入追加的记录文件。
(8)并且在此基础上实现了master-slave(主从)同步。
2、Redis的下载路径二、redis中常用的数据类型
1、Redis键(key)
(1)查看当前库所有key(2)判断某个key是否存在(3)查看存储的key是什么类型(4)删除指定的key数据(5)根据value选择非阻塞删除
仅将keys从keyspace元数据中删除,真正的删除会在后续异步操作(6)为给定的key设置过期时间(单位是秒)(7)查看还有多少秒过期,-1表示永不过期,-2表示已过期(8)命令切换数据库(9)查看当前数据库的key的数量(10)清空当前库(11)通杀全部库2、Redis字符串(String)
String类型是二进制安全的。即redis中的string可以包含任何数据。
string类型是redis最基本的数据类型,一个redis中字符串value最多可以是512M。
(1)将字符串值value关联到key(2)查询对应键值(3)将给定的value值追加到原值的末尾(4)获得值的长度(5)只有在key不存在时,设置key的值(6)将key中储存的数字值增1。只能对数字值操作,如果为空,新增值为1。(7)将key中储存的数字值减1。只能对数字值操作,如果为空,新增值为-1。(8)将key中储存的数字值增减。自定义步长。(9)同时设置一个或多个key-value对- mset key1 value1 key2 value2 ...
复制代码 (9)同时获取一个或多个value(10)同时设置一个或多个key-value对,当且仅当所有给定key都不存在- msetnx key1 value1 key2 value2 ...
复制代码 (11)获得值的范围,类似于java中的substring ,前包,后包
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作! |