闲聊Kvrocks中List结构
版权声明 本站原创文章 由 萌叔 发表 转载请注明 萌叔 | http://vearne.cc 1. List 结构 List中的数据会被存储在2个列族中 1) list metadata +----------+------------+-----------+-----------+-----------+-----------+ key => | flags | expire | version | size | head | tail | | (1byte) | (Ebyte) | (8byte) | (Sbyte) | (8byte) | (8byte) | +----------+------------+-----------+-----------+-----------+-----------+ 2) list sub keys-values +---------------+ key|version|index => | value | +---------------+ head和tail的初始值是UINT64_MAX / 2 redis_metadata.cc ListMetadata::ListMetadata(bool generate_version) : Metadata(kRedisList, generate_version) { head = UINT64_MAX / 2; tail = head; } 2. 使用 2.1 使用 LPUSH LPUSH mylist "A" subKey的序列如下 ...