了解hbase如何使用hdfs

nwwlzxa7  于 2021-06-02  发布在  Hadoop
关注(0)|答案(1)|浏览(393)

我试图理解hbase如何使用hdfs。
以下是我的理解(如果我错了,请纠正我):
我知道hbase使用hdfs来存储数据,并且数据被分为多个区域,并且每个区域服务器为我的多个区域服务,因此我猜一个区域(独占)可能与多个数据节点通信以获取和放置数据,因此如果这是正确的,那么如果该区域服务器发生故障,那么存储在这些数据节点中的数据将不再可访问
提前感谢:)

5vf7fwbs

5vf7fwbs1#

通常,regionserver在datanode上运行。
由于hdfs的工作方式,regionserver将在可能的情况下执行对本地datanode的读写操作,然后hdfs将确保数据复制到另外两个随机datanode上。因此,该regionserver写入的数据始终存储在hdfs中的3个节点上。
当regionserver为某个区域提供服务时,只有它会读/写该区域的数据,但是如果regionserver进程崩溃,hbase主机将选择另一个区域来为该区域提供服务。数据将在几分钟内不可用,但hbase将快速恢复。
如果整个主机出现故障,那么由于hdfs确保数据被写入其他两个节点,情况是相同的—主服务器将选择一个新的regionserver来打开故障区域,并且数据不会丢失。

相关问题