目录
Redis简介
Redis,全称Remote Dictionary Server,是一个开源的、内存中的数据结构存储系统。它可以用作数据库、缓存和消息中间件,支持多种类型的数据结构,如字符串(string)、哈希(Hash)、列表(list)、集合(sets)、有序集合(sorted sets)等类型数据间的操作。由于其出色的性能表现,Redis已成为许多大型互联网公司和开源项目的重要组件。
起源
Redis的起源可以追溯到2008年,当时意大利的一家创业公司Merzia为了优化其基于MySQL的网站实时统计系统LLOOGG的性能,创始人Salvatore Sanfilippo决定亲自为该系统打造一个高效的数据库。2009年,Redis诞生,并在同年被Salvatore Sanfilippo开源发布。Redis以其高性能、丰富的数据结构和灵活的用法迅速获得了业界的广泛认可。
功能
- 高性能:Redis基于内存存储数据,读写速度极快,每秒可以处理超过10万次读写操作,是已知性能最快的Key-Value DB。同时,Redis支持多种数据结构和丰富的操作,能够满足各种复杂的数据存储和访问需求。
- 持久化:Redis支持两种持久化方式,AOF(Append Only File)和RDB(Redis DataBase),可以将内存中的数据保存到磁盘上,保证数据的安全性。
- 主从复制:Redis支持主从同步,数据可以从主服务器向任意数量的从服务器上同步,从而实现数据的备份和读写分离,提高系统的可用性和扩展性。
- 事务:Redis支持事务操作,确保多个操作在执行过程中的原子性,避免数据的不一致性。
- 其他功能:Redis还支持发布/订阅、Lua脚本、LRU驱动事件、多种集群方案等功能,为开发者提供了丰富的应用场景和灵活的使用方法。
redis存储的是key-value结构的数据,其中key是字符串类型,value有5种常用数据类型,本次将为大家详细介绍这5种常用数据类型。
1.字符串 string
普通字符串,和Java里面的字符串一样
2.哈希 hash
也叫散列,类似于Java中hashmap结构。
3.列表 list
按照插入顺序排序,可以有重复元素,类似于Java中的linkedList
4.集合 set
无序集合,没有重复元素,类似于Java中hashSet
5.有序集合 sorted set / zset
有序集合原理:集合中每个元素其实都关联着一个分数(score),集合中的元素根据分数升序排序,没有重复元素。(适合用于各种‘排行榜’功能)