hadoop - 重新启动 HBase 时是否会丢弃 HBase 块缓存?
问题描述
我目前对 HBase 块缓存感到困惑。
我已经意识到 HBase 块缓存的存在,它是为了读取性能。问题是,如果我通过命令停止 HBase,
stop-hbase.sh
并通过命令重启HBase,
start-hbase.sh
它会导致丢弃HBase的所有块缓存并且块缓存变空吗?
谢谢大家提前。
解决方案
是的,这是正确的。HBase BlockCache 在区域服务器启动时实例化,并在进程的整个生命周期中保留。
如果您重新启动守护进程,您将有一个空的块缓存,因为区域服务器会再次创建。始终保存的数据是存储在 HFiles 中的数据。
推荐阅读
- css - CSS 网格,网格单元的自动填充和自动调整大小
- c# - 使用 PasswordChar True 在文本框上显示文本
- sql - SQL 错误:ROW_NUMBER() OVER (PARTITION
- vue.js - NativeScript-Vue 找不到模块
- ios - UITableViewCell contentView 具有 autoResizingMask 约束“UIView-Encapsulated-Layout-Height”与自动调整大小的自动布局冲突
- c++ - 虚拟“默认”析构函数和显式空析构函数有什么区别?
- c - 线性搜索没有返回正确的索引
- python-3.x - sklearn 决策树分类器:如何控制每个拆分的最大分支数
- javascript - 为什么在事件处理函数外部定义的函数需要保存在事件处理函数内部的新变量中?
- c++ - C++ 双向链表:如何显示 Destructor 已正确实现