关系型数据库SQL 和 非关系型数据库NoSQL 的区别?
SQL | NoSQL | |
存储结构 | 二维表格结构 | 不是二维表格结构,不同的NoSQL采用不同的存储方式(比如键值对、文档、索引、图形结构、时间序列等) |
扩展方式 | 纵向扩展(提升单机的硬件性能) | 横向扩展(增加服务器节点数量) |
事务支持 | 基于ACID原则,对事务控制更稳定,细粒度更高 | 基于BASE原则,对事务控制的稳定性和细粒度不如SQL |
典型代表 | MySQL Oracle PostgreSQL SQL-Server | Redis Memcached MongDB ElasticSearch Prometheus |
Redis 是 用C语言开发的,开源的,基于内存运行的NoSQL
存储结构:键值对(Key/Value KV)
数据类型:五大基础数据类型 string(字符串) list(列表) hash(哈希/散列) set(集合/无序集合)
zset/sorted set(有序集合)
三种特殊的数据类型 HyperLogLogs(基数统计) Bitmaps(位图) geospatial(地理位置)
端口号:TCP/6379
Redis 为什么那么快?
1)redis是基于内存运行,数据的读写都是在内存中完成的
2)数据结构简单,可以直接使用 键值对 的方式存储数据
3)数据读写采用单线程模型,避免了多线程切换带来的CPU性能损耗,同时也不用考虑各种锁的
影响
4)采用IO多路复用模型,非阻塞IO可以使网络线程处理更多的网络连接请求,提高了网络并发能
力
//Redis 具有以下几个优点:
(1)具有极高的数据读写速度:数据读取的速度最高可达到 110000 次/s,数据写入速度最高可
达到 81000 次/s。
(2)支持丰富的数据类型:支持 key-value、Strings、Lists、Hashes、Sets 及 Sorted Sets 等数
据类型操作。
(3)支持数据的持久化:可以将内存中的数据保存在磁盘中,重启的时候可以再次加载进行使
用。
(4)原子性:Redis 所有操作都是原子性的。
(5)支持数据备份:即 master-salve 模式的数据备份。
Redis 安装部署
初始化
修改内核参数
上传解压软件包
复制文件
创建用户
配置文件
登录
请求测试性能
汇总结果
Redis 数据库常用命令
set:存放数据,命令格式为 set key value
get:获取数据,命令格式为 get key
查看数据库中的键
查看键类型
查看键是否存在
1:在
0:不在
键的过期时间
-2:已过期
-1:永不过期
创建键并设置过期时间
给键改名并覆盖以存在的键
统计键
修改密码
Redis 多数据库常用命令
默认16个数据库