Redis7

这篇具有很好参考价值的文章主要介绍了Redis7。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Redis之父安特雷兹

Redis7概述

  • Redis:Remote Dictionary Server(远程字典服务)是完全开源的,使用ANSIC语言编写遵守BSD协议,是一个高性能的Key-Value数据库提供了丰富的数据结构,例如String、Hash、List、Set、SortedSet等等。数据是存在内存中的,同时Redis支持事务、持久化、LUA脚本、发布/订阅、缓存淘汰、流技术等多种功能特性提供了主从模式、Redis Sentinel和Redis Cluster集群架构方案

跟Mysql的区别

与传统数据库关系(mysql)
Redis是key-value数据库(NoSQL一种),mysql是关系数据库
Redis数据操作主要在内存,而mysql主要存储在磁盘
Redis在某一些场景使用中要明显优于mysql,比如计数器、排行榜等方面
Redis通常用于一些特定场景,需要与Mysql一起配合使用
两者并不是相互替换和竞争关系,而是共用和配合使用

里程碑式的重要版本

Redis7

核心新特性

Redis Functions

Redis7

Client-eviction

Redis7

Multi-part AOF

Redis7

ACL V2

Redis7

新增加命令

Redis7
listpack 是用来替代 ziplist 的新数据结构,在 7.0 版本已经没有 ziplist 的配置了(6.0版本仅部分数据类型作为过渡阶段在使用)
Redis7

底层性能提升

Redis7

Redis10大类型之总体

String(字符串)

string是redis最基本的类型,一个key对应一个value。
string类型是二进制安全的,意思是redis的string可以包含任何数据,比如jpg图片或者序列化的对象 。
string类型是Redis最基本的数据类型,一个redis中字符串value最多可以是512M

List(列表)

Redis列表是简单的字符串列表,按照插入顺序排序。你可以添加一个元素到列表的头部(左边)或者尾部(右边)
它的底层实际是个双端链表,最多可以包含 2^32 - 1 个元素 (4294967295, 每个列表超过40亿个元素)

hash

hash 是一个 string 类型的 field(字段) 和 value(值) 的映射表,hash 特别适合用于存储对象。
Redis 中每个 hash 可以存储 2^32 - 1 键值对(40多亿)

Set(集合)

Redis 的 Set 是 String 类型的无序集合。集合成员是唯一的,这就意味着集合中不能出现重复的数据,集合对象的编码可以是 intset 或者 hashtable。
Redis 中Set集合是通过哈希表实现的,所以添加,删除,查找的复杂度都是 O(1)。
集合中最大的成员数为 2^32 - 1 (4294967295, 每个集合可存储40多亿个成员)

zset(sorted set:有序集合)

Redis zset 和 set 一样也是string类型元素的集合,且不允许重复的成员。
不同的是每个元素都会关联一个double类型的分数,redis正是通过分数来为集合中的成员进行从小到大的排序。
zset的成员是唯一的,但分数(score)却可以重复。
zset集合是通过哈希表实现的,所以添加,删除,查找的复杂度都是 O(1)。 集合中最大的成员数为 2^32 - 1

GEO

GEO主要用于存储地理位置信息,并对存储的信息进行操作,包括
添加地理位置的坐标。
获取地理位置的坐标。
计算两个位置之间的距离。
根据用户给定的经纬度坐标来获取指定范围内的地理位置集合

HyperLogLog

HyperLogLog 是用来做基数统计的算法,HyperLogLog 的优点是,在输入元素的数量或者体积非常非常大时,计算基数所需的空间总是固定且是很小的。
在 Redis 里面,每个 HyperLogLog 键只需要花费 12 KB 内存,就可以计算接近 2^64 个不同元素的基 数。这和计算基数时,元素越多耗费内存就越多的集合形成鲜明对比。
但是,因为 HyperLogLog 只会根据输入元素来计算基数,而不会储存输入元素本身,所以 HyperLogLog 不能像集合那样,返回输入的各个元素。

Bitmap

Redis7

由0和1状态表现的二进制位的bit数组

bitfield

通过bitfield命令可以一次性操作多个比特位域(指的是连续的多个比特位),它会执行一系列操作并返回一个响应数组,这个数组中的元素对应参数列表中的相应操作的执行结果。
说白了就是通过bitfield命令我们可以一次性对多个比特位域进行操作。

Stream

Redis Stream 是 Redis 5.0 版本新增加的数据结构。
Redis Stream 主要用于消息队列(MQ,Message Queue),Redis 本身是有一个 Redis 发布订阅 (pub/sub) 来实现消息队列的功能,但它有个缺点就是消息无法持久化,如果出现网络断开、Redis 宕机等,消息就会被丢弃。
简单来说发布订阅 (pub/sub) 可以分发消息,但无法记录历史消息。
而 Redis Stream 提供了消息的持久化和主备复制功能,可以让任何客户端访问任何时刻的数据,并且能记住每一个客户端的访问位置,还能保证消息不丢失文章来源地址https://www.toymoban.com/news/detail-420910.html

到了这里,关于Redis7的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Redis7笔记(完结)

    源码分析个人认为现在不需要看,需要了解的可以看看。

    2023年04月20日
    浏览(44)
  • 【Redis7学习日记】—— Redis持久化

    Redis 的持久化是它的一大特性,可以将内存中的数据写入到硬盘中 主要分为 RDB 和 AOF 两种,接下来我们将展开叙述 RDB持久化方式能够在指定的时间间隔能对你的数据进行 快照 存储 AOF持久化方式记录每次对服务器写的操作,当服务器重启的时候会重新执行这些命令来恢复原始

    2023年04月09日
    浏览(45)
  • Redis7笔记(未完结)

    源码分析个人认为现在不需要看,需要了解的可以看看。

    2023年04月16日
    浏览(33)
  • Redis7之介绍(一)

    Redis:REmote Dictionary Server(远程字典服务器) Remote Dictionary Server( 远程字典服务 )是完全开源的,使用ANSIC语言编写遵守BSD协议,是一个高性能的Key-Value数据库提供了丰富的数据结构,例如String、Hash、List、Set、SortedSet等等。数据是存在内存中的,同时Redis支持事务、持久化、LUA脚

    2024年02月11日
    浏览(35)
  • Redis7学习笔记01

    ①、适合对象,从小白到熟手,一套全包圆 ②、Redis专题-大厂面试题,含100道+ ③、Redis专题-真实需求生产真实案例 ④、Redis7新特性 ①、面试题 ②、专题 Remote Dictionary Server(远程字典服务)是完全开源的,使用ANSIC语言编写遵守BSD协议,是一个高性能的Key-Value数据库提供了丰

    2024年02月15日
    浏览(46)
  • 在Linux上安装redis7

    1.1 bit检测命令: getconf LONG_BIT (建议使用64bit做开发) 1.2 gcc环境检测: gcc -v 如果不具备gcc环境,则使用 yum -y install gcc- c++ 命令进行c++环境的安装 2.1 下载redis: 进入官网找到下载地址 https://redis.io/download 我下载的是7.0.11版本,属于稳定版本 2.2 然后解压到当前目录: 解压成

    2023年04月25日
    浏览(43)
  • Redis7之linux安装(二)

    这里是Redis7.0.9版本 下载地址:https://redis.io/download/ 这里以linux下载: 首先判断我们的centos 7是多少位的,使用64位切记 Linux安装Redis必须先具备gcc编译环境 下载redis7.0.9.tar.gz后放入Linux目录/opt 安装完后回到/opt/redis7.0.9/ 修改/myredis目录下redis7.conf配置文件做初始化设置 redis.co

    2023年04月20日
    浏览(44)
  • 【Redis7学习日记】——复制、哨兵、集群

    设置多个 Redis 数据库, master 以写为主, slave 以读为主 当 master 数据库发生变化时,自动将新数据以异步的方式同步到与它关联的 slave 数据库中 功能概述: 实现了读写分离、容灾恢复、数据备份,以及通过水平扩容来支持高并发 那我们如何来使用呢? 通过配置 slave 从库来

    2023年04月08日
    浏览(45)
  • 动力节点最新Redis7笔记-第七章Redis缓存

    7.1.1 Jedis简介 Jedis是一个基于java的Redis客户端连接工具,旨在提升性能与易用性。 7.1.2 创建工程 首先创建一个普通的Maven工程01-jedis,然后在POM文件中添加Jedis与Junit依赖。 7.1.3 使用Jedis实例 Jedis基本使用十分简单,其提供了非常丰富的操作Redis的方法,而这些方法名几乎与R

    2024年02月07日
    浏览(73)
  • 动力节点Redis7笔记-第六章Redis分布式系统

    Redis分布式系统,官方称为Redis Cluster,Redis集群,其是Redis 3.0开始推出的分布式解决方案。其可以很好地解决不同Redis节点存放不同数据,并将用户请求方便地路由到不同Redis的问题。 分布式数据库系统会根据不同的数据分区算法,将数据分散存储到不同的数据库服务器节点上

    2024年02月07日
    浏览(40)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包