为啥 HBase 需要 HDFS?

Posted

技术标签:

【中文标题】为啥 HBase 需要 HDFS?【英文标题】:Why HDFS is necessary for HBase ?为什么 HBase 需要 HDFS? 【发布时间】:2015-07-10 21:19:59 【问题描述】:

今天我想到了这个关于 HBase 和 HDFS 的问题。

为什么只有 HDFS 作为 HBase 的存储,为什么不是 linux 文件系统。

感谢您的回复。

谢谢

【问题讨论】:

因为它是分布式文件系统 【参考方案1】:

HBase 使用 HDFS 的可靠性。当 HBase 将任何数据块保存到磁盘时,它依赖于 HDFS 将其复制到其他节点(默认为 3 个)这一事实。它使用来自其他节点的通知,即他们在确认写入之前已收到数据。当 HBase 需要重新分配一个区域时,它将再次依赖 HDFS 来获取数据的本地副本(如果该区域在本地不可用,它将远程读取它,但它会尝试获取本地副本)等等。

【讨论】:

【参考方案2】:

这是因为HDFS 提供了可扩展性和可靠性(通过将数据块复制到不同的机器)。而HBase 充分利用了这些功能。

如果HBase 不使用HDFS 作为底层文件系统,则无论如何都需要内置“类似于HDFS 的东西”。

【讨论】:

以上是关于为啥 HBase 需要 HDFS?的主要内容,如果未能解决你的问题,请参考以下文章

科普 | HDFS和HBase: 所有你需要知道的都在这里

2018-08-12期 Hbase本地模式安装部署

HBase集群基于HDFS

2018-08-13期 Hbase伪分布模式安装部署

Hbase/HDFS存储扩容实践

基础组件11hdfs与hbase