Redis
是一个开源的, 使用C语言编写的, 将数据缓存到内存中(程序使用时,可以缓存数据,具有临时性和速度快的特点), key–value(键值对的方式存储)的一种非关系型数据库(严格来说不是一种数据库,只是一种数据存储结构),它支持多种数据类型存储(例如: String 字符 Hash 哈希 List 列表 Set 集合 zset 有序集合 ).
关系型数据库和非关系型数据库
关系型:
采用关系模型来组织数据的数据库,表与表,列与列,和字段之间的关系存储数据的
优点:
容易理解
使用方便(有通用的sql语句)
易于维护,丰富的完整性,极大的降低了数据的冗余和数据不一致概率缺点
缺点:
磁盘I/O是并发的瓶颈
由于大量的数据导致查询效率降低
横向扩展困难,无法简单的通过硬件和服务节点来扩展性能和负载能力
当需要对数据库进行升级和扩展时,需要停机和数据迁移(工作量增加)
因为要保证数据的安全性,所以 事务控制+锁 导致性能降低
非关系型:
分布式,不遵循ACID原则的数据存储系统.键值对存储,结构不稳定
优点:
根据所需要的字段直接添加,不需要考虑多表关系.仅取对应的vlue,可以说不是数据库,而是一种数据结构化存储方法的集合
缺点:
只适合存储一些较为简单的数据
不适合复杂查询的数据
不适合持久存储数据
Redis数据类型
String(字符串)
是redis最基本的数据类型,一个k