上一页 1 2 3 4 5 6 ··· 8 下一页
摘要: 一、HyperLogLog HyperLogLog是用来做基数统计的。 其可以非常省内存的去统计各种计数,比如注册ip数、每日访问IP数、页面实时UV(PV肯定字符串就搞定了)、在线用户数等在对准确性不是很重要的应用场景。 HyperLogLog的优点是: 在输入元素的数量或者体积非常非常大时,计算 阅读全文
posted @ 2017-06-26 18:27 三石雨 阅读(2581) 评论(0) 推荐(0) 编辑
摘要: 本文摘抄于《Redis内部数据结构详解-skiplist》 一、skiplist的由来 skiplist,顾名思义,首先它是一个list。实际上,它是在有序链表的基础上发展起来的。 我们先来看一个有序链表,如下图(最左侧的灰色节点表示一个空的头结点): 在这样一个链表中,如果我们要查找某个数据,那么 阅读全文
posted @ 2017-06-26 11:48 三石雨 阅读(416) 评论(0) 推荐(0) 编辑
摘要: 本文及后续文章,Redis版本均是v3.2.8 我们会经常选择使用sorted set数据结构,是由于其提供的操作非常丰富,可以满足非常多的应用场景。sorted set数据结构是由skiplist(跳跃列表)、ziplist和dict实现的。 skiplist本质上是一种查找数据据结构,即根据给定 阅读全文
posted @ 2017-06-26 11:35 三石雨 阅读(1349) 评论(0) 推荐(0) 编辑
摘要: 本文及后续文章,Redis版本均是v3.2.8 我们在使用Redis对外暴露的list数据结构时,给我们带来极大的便利性。其底层实现所依赖的内部数据结构就是quicklist。 我们先来回忆下list这种数据结构的特点: 表list是一个能维持数据项先后顺序的双向链表 在表list的两端追加和删除数 阅读全文
posted @ 2017-06-18 15:02 三石雨 阅读(2229) 评论(2) 推荐(0) 编辑
摘要: 本文及后续文章,Redis版本均是v3.2.8 本篇文章我们来分析下一种特殊编码的双向链表-ziplist(压缩列表),这种数据结构的功能是将一系列数据与其编码信息存储在一块连续的内存区域,这块内存物理上是连续的,逻辑上被分为多个组成部分,其目的是在一定可控的时间复杂读条件下尽可能的减少不必要的内存 阅读全文
posted @ 2017-06-17 17:22 三石雨 阅读(2900) 评论(0) 推荐(0) 编辑
摘要: 本文及后续文章,Redis版本均是v3.2.8 上文我们说到intset整型集合的数据结构定义即元素的添加和查询操作,本文我们来看下Redis暴露给外面使用的Set集合,先通过一些基本的命令回顾下set 一、set底层数据结构 我们查阅Redis Set命令文档知道: sadd用于分别向集合 mys 阅读全文
posted @ 2017-06-12 15:11 三石雨 阅读(1317) 评论(0) 推荐(0) 编辑
摘要: 本文及后续文章,Redis版本均是v3.2.8 上篇文章《Redis数据结构之robj》,我们说到redis object数据结构,其有5中数据类型:OBJ_STRING,OBJ_LIST, OBJ_SET,OBJ_ZSET,OBJ_HASH。集合对象set有着广泛的实际业务应用场景,它包含的元素无 阅读全文
posted @ 2017-06-11 16:35 三石雨 阅读(646) 评论(0) 推荐(0) 编辑
摘要: 本文及后续文章,Redis版本均是v3.2.8 我们知道一个database内的这个映射关系是用一个dict来维护的。dict的key固定用一种数据结构来表达,这这数据结构就是动态字符串sds。而value则比较复杂,为了在同一个dict内能够存储不同类型的value,这就需要一个通用的数据结构。针 阅读全文
posted @ 2017-06-03 17:56 三石雨 阅读(1663) 评论(0) 推荐(0) 编辑
摘要: 本文及后续文章,Redis版本均是v3.2.8 本篇文章讲解sds基本操作函数,我们从源码角度来进一步理解。 一、sds创建函数和销毁 sds创建函数 /* Create a new sds string with the content specified by the 'init' pointe 阅读全文
posted @ 2017-05-30 22:53 三石雨 阅读(1490) 评论(0) 推荐(0) 编辑
摘要: 本文及后续文章,Redis版本均是v3.2.8 在文章《Redis 数据结构之dict》《Redis 数据结构之dict(2)》中,从代码层面做了简单理解。总感觉思路的不够条理性,特开一篇文章把哈希表中几个知识点串联下。 一、先来回顾下哈希表结构定义 /** * 哈希表 */ typedef str 阅读全文
posted @ 2017-05-22 10:30 三石雨 阅读(1368) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 ··· 8 下一页