重启 HBase 时 HBase 块缓存是否被丢弃?

Is HBase block cache dropped when restart HBase?

我目前对 HBase 块缓存感到困惑。

我已经意识到HBase块缓存的存在,它是为了读取性能。问题是,如果我通过命令停止 HBase,

stop-hbase.sh

通过命令重启 HBase,

start-hbase.sh

会不会导致HBase的block caches全部drop,block caches变空?

谢谢大家的提前。

是的,没错。 HBase BlockCache 在区域服务器启动时实例化,并在进程的整个生命周期内保留。

如果您重新启动守护进程,由于区域服务器被再次创建,您将拥有一个空的块缓存。一直保存的数据就是HFiles中保存的数据。

是 Block cache是​​读缓存,保存在内存中,rs重启时不会恢复