HBase MemStore
MemStore是一个写缓冲区,在此缓冲区中,HBase在永久写入之前会在内存中累积数据。
当MemStore填满时,其内容将刷新到磁盘以形成HFile。
它不会写入现有的HFile,而是在每次刷新时形成一个新文件。
HFile是HBase的基础存储格式。
HFiles属于列族(每个列族一个MemStore)。列族可以有多个HFile,但事实并非如此。
MeliStore的size在名为hbase.hregion.memstore.flush.size的hbase-site.xml中定义。
当托管尚未刷新的MemStore的服务器崩溃时,会发生什么情况?
HBase群集中的每个服务器都会保留一个WAL来记录更改。 WAL是基础文件系统上的文件。只有成功写入新的WAL条目后,写入才会被认为是成功的,这可以保证持久性。还可以通过重播WAL来恢复尚未从MemStore刷新到HFile的文件,由Hbase框架负责。