Rocksdb prefix Bloomfilter
简介
● 默认的bloom filter:
○ 是根据写入的完整的key构造bloom filter的;
● prefix_bloom_filter:
○ 使用:需要设置prefix_extractor,来标识每次取key的前N位,根据写入key的前N位来构造bloom filter;
○ 内存占用:
■ memtable:有对应的prefix_bloom_; 这部分通过下面表格中参数控制;
■ sst的bloom filter也是根据prefix构造bloom filter;这部分控制参数和默认bloom filter一样
●
○ 设置prefix_extractor示例
■ prefix_extractor=fixed:12 固定12位——nebula的使用方式
■ prefix_extractor=capped:12 最大12位
参数参数
memtable_prefix_bloom_size_ratio
含义
memtable 的prefix_bloom_占用内存大小公式=write_buffer_size*memtable_prefix_bloom_size_ratio*8
限制:最大0.25
if (result.memtable_prefix_bloom_size_ratio > 0.25) {
result.memtable_prefix_bloom_size_ratio = 0.25;
memtable 的 prefix bloom 的reset触发条件
// use bloom_filter_ for both whole key and prefix bloom filter
if ((prefix_extractor_ || moptions_.memtable_whole_key_filtering) &&
moptions_.memtable_prefix_bloom_bits > 0) {
bloom_filter_.reset(
new DynamicBloom(&arena_, moptions_.memtable_prefix_bloom_bits,
6 /* hard coded 6 probes */,
moptions_.memtable_huge_page_size, ioptions.info_log));
}
Rocksdb prefix Bloomfilter相关推荐
- RocksDB学习记录
文章目录 待学习的博客 待学习的论文 RocksDB零基础学习 (一) What's RocksDB 设计思想:冷热分离 Performance B Tree B+ Tree B树与B+树比较 LSM ...
- MyRocks: 为facebool 的社交图谱服务的LSM-tree存储引擎
文章目录 概览 1. UDB 架构 2. UDB 表格式 3. Rocksdb:针对flash存储优化过的第三方库 3.1 Rocksdb架构 3.2 为什么选择Rocksdb 4. MyRocks ...
- Tair LDB基于Prefixkey的范围查找性能优化项目中期总结
"Tair LDB基于Prefixkey的范围查找性能优化"这个项目刚好进行了一个月,这一个月主要是熟悉项目.掌握项目和提出设计方案的过程,下面从几个方面总结下个人在该项目上所做的 ...
- Tair LDB基于Prefixkey的范围查找性能优化项目提议方案
基于prefix bloomfilter的过滤思想和get_range接口数据的特点,在导师的指导下,提出如下的简单方案,对get_range接口的范围查找过程进行优化,使得能够根据prefix进行过 ...
- Tair LDB基于Prefixkey的范围查找性能优化项目测试及完成总结报告
项目这周就截止了,这算是我第一个有导师指导的真正意义上的C++项目,项目基本完成,想要实现的功能也已经实现,并做了大量的性能测试.不过这对于业界来说,可能完成的还不够成熟,还有许多待改进的地方,还不能 ...
- struts2+spring3+hibernate4
//web.xml<?xml version="1.0" encoding="UTF-8"?><web-app xmlns:xsi=" ...
- RocksDB系列二:RocksDB Option
RocksDB用户可以通过Options类将配置信息传入引擎,除此之外,还可以以下其他方法设置,分别为: 通过option file生成一个option class 从option string中获 ...
- LSM-Tree 与 RocksDB
冥冥之中,接触到了不同于关系数据库的NoSQL Key-Value存储引擎RocksDB,懵懵懂懂.充满好奇,google一点,满眼皆是LSM-Tree,头晕眼花.若即若离,便有了这篇文章,一起与大家 ...
- Rocksdb iterator 的 Forward-scan 和 Reverse-scan 的性能差异
前言 最近在读 MyRocks 存储引擎2020年的论文,因为这个存储引擎是在Rocksdb之上进行封装的,并且作为Facebook 内部MySQL的底层引擎,用来解决Innodb的空间利用率低下 和 ...
最新文章
- 如何在UIAlertView中显示进度条
- go linux环境搭建,Linux 下 Go 环境搭建以及 Gin 安装
- java设计模式懒汉_java设计模式-懒汉设计模式
- 嵊州职教中心计算机多少分数,嵊州中考考试分数线
- YznCMS 后台开发框架
- 抢注“哔哩哔哩”商标卖成人用品?A站回应:不符合价值观 已申请注销
- Linux文件夹操作
- 第十五周项目3-在OJ上玩指针
- XILINX FPGA数字信号处理——10、重定时信号原理及实现
- Win10安装CUDA
- 联想服务器重装系统后usb无法启动,联想启天装win7系统的详细教程完美解决USB不能用的问题...
- AI机器人AI源码营销机器人电销机器人智能电话机器人拨号机器人语音机器人空号识别FreeSWITCH呼叫中心中间ipbxIPBX科大识别阿里识别语音识别语音翻译
- 2019 Namesilo 购买域名 解析域名 图文教程
- cmd命令快速切换电源模式-平衡模式和卓越模式
- MySQL水平分区表初体验总结
- Andromeda 源码解析 (同步获取服务)
- 【PS】61款中国风古典背景水墨山水古风韵味PSD分层设计素材
- Synchronize between MPOS and Backoffice (Dynamics 365 for Operation)
- java code reviewer_Java Code Review
- 基于Android公交查询系统的设计与实现(论文+程序设计源码+数据库文件)
热门文章
- 海思官方SDK Hi3516EV200_SDK_V1.0.1.0的编译教程
- java opencv磨皮算法_美肤磨皮算法OpenCV3实现
- 做一套给三星手机用的导航栏图标(伪装Windows10移动版)
- thinkpad笔记本电脑怎么关闭触摸板
- 叭叭一下Servlet的虚拟路径的映射
- 小花经过春雨的一番滋润
- 编译原理学习(二)--终结符和非终结符
- 起枪还是ECO ? CSGO什么时候起长枪 CSGO超实用教学
- java 向下转型运行时错误_8.5.2 向下转型与运行类型异常
- Android通信安全之HTTPS