码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • Redis从入门到精通(三)-高阶篇


    文章目录

    • 0. 前言
      • [【高阶篇】3.1 Redis协议(RESP )详解](https://blog.csdn.net/wangshuai6707/article/details/132742584)
      • [【高阶篇】3.3 Redis之底层数据结构简单动态字符串(SDS)详解](https://blog.csdn.net/wangshuai6707/article/details/131101404)
      • [【高阶篇】3.4 Redis之底层数据结构快表QuickList详解](https://blog.csdn.net/wangshuai6707/article/details/131168288)
      • [【高阶篇】3.5 Redis之底层数据结构字典(Dictionary)详解](https://blog.csdn.net/wangshuai6707/article/details/131198192)
      • [【高阶篇】3.6 Redis之底层数据结构整数集(IntSet)详解](https://blog.csdn.net/wangshuai6707/article/details/131214895)
      • [【高阶篇】3.7 Redis之底层数据结构跳表(SkipList)](https://blog.csdn.net/wangshuai6707/article/details/131230425)
      • [【高阶篇】3.8 Redis之底层数据结构链表包(listpacks)详解](https://blog.csdn.net/wangshuai6707/article/details/131255097)
      • [【高阶篇】3.9 Redis之底层数据结构压缩列表(ZipList)详解](https://blog.csdn.net/wangshuai6707/article/details/131081955)

    0. 前言

    欢迎来到 Redis从入门到精通博客专栏索引的第三部分!在前两部分的内容中,我们一起探索了Redis的基础知识、数据结构和常用命令等。在本专栏的第三部分,我们将继续深入研究Redis的高级功能和最佳实践。为了方便大家查看,我把之前高阶部分的文章汇集成了一个索引。大家也可以根据Redis从入门到精通的思维导图进行查看。

    在之前的文章中,我们详细介绍了 Redis 中的一些底层数据结构,如简单动态字符串(SDS)、快表(QuickList)、字典(Dictionary)、整数集(IntSet)、跳表(SkipList)和链表包(listpacks)。这些底层数据结构在 Redis 中扮演着重要的角色,用于实现不同的功能和数据类型。本文将进一步详细介绍这些底层数据结构,包括它们的内部实现原理、优势以及在 Redis 中的应用。

    当我们谈论 Redis 时,我们通常会讨论其用于存储和检索数据的各种数据结构。但是,这些操作必须通过一定的协议来执行,这个协议就是 Redis 协议(RESP)。RESP 是一个简单而强大的协议,设计得非常易于理解和实现,几乎可以说是目前中间件中最简单的一种协议。这也是 Redis 受到广泛欢迎的一部分原因。

    Redis博客专栏思维导图
    https://www.processon.com/view/link/6555e2c1c4d6c1491ae416d0
    在这里插入图片描述

    • 【高阶篇】3.1 Redis协议(RESP )详解

      当我们谈论 Redis 时,一般来说,我们讨论的核心是它用来存储和检索数据的多种数据结构:字符串、列表(Lists)、集合(Sets)、有序集合(Sorted Sets)和散列表(Hashes)等。但是,这些操作必须通过一定的协议来执行,这个协议就是Redis协议 (RESP, Redis Serialization Protocol)。RESP 是一个简单而强大的协议,设计得非常易于理解和实现,几乎可以说是目前中间件中最简单的一种协议。这也是 Redis 受到广泛欢迎的一部分原因。

    • 【高阶篇】3.3 Redis之底层数据结构简单动态字符串(SDS)详解

      Redis是一个快速、开源、内存数据库,它是一个基于键值对的存储系统,由Salvatore Sanfilippo开发。Redis支持多种数据结构,其中字符串(String)是最常用的一种数据结构之一。在Redis中,字符串是由简单动态字符串(SDS)实现的。本文将详细介绍SDS的内部实现原理、优势以及在Redis中的应用。

    • 【高阶篇】3.4 Redis之底层数据结构快表QuickList详解

      Redis中的快表(QuickList)是一种特殊的数据结构,用于存储一系列的连续节点,每个节点可以是一个整数或一个字节数组。快表是Redis中的底层数据结构之一,常用于存储有序集合(Sorted Set)等数据类型的底层实现。在本文中,我们将深入了解Redis中的快表,包括快表的结构和操作等。

    • 【高阶篇】3.5 Redis之底层数据结构字典(Dictionary)详解

      上个篇章回顾,我们上个章节,讲了Redis中的快表(QuickList),它是一种特殊的数据结构,用于存储一系列的连续节点,每个节点可以是一个整数或一个字节数组。快表是Redis中的底层数据结构之一,常用于存储有序集合(Sorted Set)等数据类型的底层实现。那么本章讲解Redis中的底层数据结构中的字典(Dictionary)也称为哈希表(Hash Table)。字典(Dictionary)是一种高效的数据结构,用于存储键值对,常用于实现哈希表。

    • 【高阶篇】3.6 Redis之底层数据结构整数集(IntSet)详解

      上个篇章我们从源码层了解字典是一种以键值对(key-value)形式存储数据的数据结构。在 Redis 中,字典使用哈希表来实现。哈希表是一种以常数时间复杂度 O(1) 进行插入、删除和查找的数据结构。了解到在 Redis 中,字典被广泛应用于实现哈希表和集合等数据结构。本章节,我们详细了解一下Redis底层数据结构整数集(IntSet),它是用于存储整型数据,是一种紧凑的、高效的数据结构,可以用来实现集合等功能。

    • 【高阶篇】3.7 Redis之底层数据结构跳表(SkipList)

      本章节,我们详细了解一下在Redis又一个底层数据结构跳表(SkipList),它是一种基于链表的数据结构,用于快速地插入、删除和查找元素。跳表通过多层级的指针数组来实现快速的操作,时间复杂度为O(log n),其中n为跳表中元素的个数。Redis中的有序集合(Sorted Set 也叫ZSet 它们讲的是同一个)就是通过跳表来实现的。。

    • 【高阶篇】3.8 Redis之底层数据结构链表包(listpacks)详解

      本文将Redis底层数据结构 listpacks(链表包)详解,它用于实现列表数据类型。listpacks是一种紧凑的连续内存块,其设计目标是减少内存的占用,通过紧凑的内存布局和多种数据类型的编码方式,提供了高效的插入和删除操作。| zlbytes | 4字节,列表总字节数| zltail | 4字节,列表尾节点偏移量| zllen | 2字节,列表节点数量。

    • 【高阶篇】3.9 Redis之底层数据结构压缩列表(ZipList)详解

      本文详细介绍了Redis中的压缩列表(ZipList),包括ZipList的结构和操作等。压缩列表是Redis中的底层数据结构之一,常用于存储列表和哈希表等数据类型的底层实现。压缩列表具有紧凑的存储结构、支持动态增加和删除节点、支持快速的节点访问和遍历等优点,但也有节点大小不固定、不支持快速的节点插入和删除操作等缺点。在实际应用中,需要根据具体的需求选择合适的数据结构来存储数据。

    在这里插入图片描述

  • 相关阅读:
    css------div标签中居中的方式
    python爬虫常用的库
    ESP32-C3入门教程 IoT篇⑥——微软云 Microsoft Azure 物联网 IoT Central EspAzureIoT 实战
    JSD-2204-HTML-CSS-JavaScript-Day04
    钢建筑模板和木建筑模板的优缺点?
    贪心(区间问题 Huffman树 排序不等式 绝对值不等式 推公式)
    SQL-正则表达式和约束
    【英语:基础进阶_语法进阶提升】F3.被动语态
    数字化经济的前沿:深入了解 Web3 的商业模式
    BBAVectors斜框检测网络更换轻量型主干网络
  • 原文地址:https://blog.csdn.net/wangshuai6707/article/details/134506492
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号