Advertisement

RocksDB:一款强大的分布式NoSQL数据库

阅读量:

目录

RocksDB 简介

TiKV 架构

RocksDB 的内存占用

RocksDB 的空间占用

RocksDB 后台线程与 Compact

WriteStall

RocksDB 简介

当内存中的数据达到预设阈值时会触发磁盘刷新并生成 SST 文件 SST文件通常由多个层级构成 最大不超过6层 每一层次的数据量达到预设阈值后会提取一部分数据转移到下一层级 每一层次的数据量是前一层级的10倍 因此 最后一个层级存储了90%的数据

rocksdb 支持用户创建多个 columnfamily ,每个 columnfamily 独立拥有内存跳表以及 SST 文件,并共同使用同一个 wal 文件;这种设计使得可以根据应用需求为各个 columnfamily 设置不同的参数配置,并不会增加 wal 文件的写操作次数。

TiKV 架构

TiKV 的系统架构如下图所示:

TiKV 的主要存储引擎是 RocksDB。
该系统负责存储 Raft 日志和用户数据。
每个 TiKV 实例都配置有两个 RocksDB 实例。
其中一个专门用于存储 Raft 日志

全部评论 (0)

还没有任何评论哟~