1.布隆过滤器
它实际上是一个很长的二进制向量和一系列随机
映射函数。布隆过滤器可以用于检索一个元素是否在一个集合中。
布隆过滤器判断一个元素不在,肯定不在
判断元素在的话,再数据库在进行查询。
实现原理:
布隆过滤器的实现原理和hash表的数据原理差不多。数据通过hash函数将数据映射到某个地址。如果有冲突会( 拉链法、开放地址法)出处理数据冲突的。
布隆过滤器主要是
数据通过通过映射函数映射到多个二进制位上。当某个数据映射到多个二进制位有一个不为1,说明不存在。数据通过映射函数判断存在可能有误判。因为数据可能同映射函数处理后相同。
2. Hlog和WAL机制
WAL意为Write Ahead Log,用来做灾难恢复之用。基本原理是在数据写入之前首先顺序写入日志,然后再写入缓存,等到缓存写满之后统一落盘。WAL将一次随机写转化为了一次顺序写加一次内存写。WAL可以保证数据的可靠性,即在任何情况下数据不丢失
3.hbase 写的快的原因
hbase的存储引擎用的是LSM树,LSM核心思想的核心就是放弃部分读能力,换取写入的最大化能力。先将最新的数据驻留在内存中,等到积累到最后多之后,再使用归并排序的方式将内存内的数据合并追加到磁盘队尾。