|NO.Z.00061|——————————|BigDataEnd|——|Hadoop&Redis.V06|——|Redis.v06|RedisDB结构.v06|结构7种type.v04|
一、流对象
### --- 流对象
~~~     stream主要由:消息、生产者、消费者和消费组构成。
~~~     Redis Stream的底层主要使用了listpack(紧凑列表)和Rax树(基数树)。
### --- listpack
~~~     listpack表示一个字符串列表的序列化,listpack可用于存储字符串或整数。
~~~     用于存储stream的消息内容。二、结构如下图:

### --- Rax树
~~~     Rax 是一个有序字典树 (基数树 Radix Tree)按照 
~~~     key 的字典序排列支持快速地定位插入和删除操作。
~~~     Rax 被用在 Redis Stream 结构里面用于存储消息队列,
~~~     在 Stream 里面消息 ID 的前缀是时间戳 + 序号,这样的消息可以理解为时间序列消息。
~~~     使用 Rax 结构 进行存储就可以快速地根据消息 ID 定位到具体的消息,
~~~     然后继续遍历指定消息 之后的所有消息。### --- 应用场景:
~~~     stream的底层实现

Walter Savage Landor:strove with none,for none was worth my strife.Nature I loved and, next to Nature, Art:I warm'd both hands before the fire of life.It sinks, and I am ready to depart
                                                                                                                                                   ——W.S.Landor
 
                    
                 
                
            
         浙公网安备 33010602011771号
浙公网安备 33010602011771号