Hbase 元表

Hbase 元表,hbase,Hbase,我对Hbase-ROOT-table和.META-table的位置有疑问。我已经了解到Hbase-ROOT-table驻留在zookeeper的znode中,因此当客户端查询-ROOT时,会找到托管.META的服务器的信息。我的疑问是.META是否驻留在一台服务器中。如果是这样,如果服务器崩溃,.META表的信息将丢失。还是我错了?谁能帮忙吗 这是我的参考:zookeeper存储托管的RegionServer的位置-ROOT- 扫描than-ROOT,以查找.META的位置。 通过扫描,梅塔。您

我对Hbase-ROOT-table和.META-table的位置有疑问。我已经了解到Hbase-ROOT-table驻留在zookeeper的znode中,因此当客户端查询-ROOT时,会找到托管.META的服务器的信息。我的疑问是.META是否驻留在一台服务器中。如果是这样,如果服务器崩溃,.META表的信息将丢失。还是我错了?谁能帮忙吗


这是我的参考:

zookeeper存储托管的RegionServer的位置-ROOT- 扫描than-ROOT,以查找.META的位置。 通过扫描,梅塔。您可以找到数据的托管位置

梅塔先生。和-ROOT-是表/区域,与表/区域相同。 所以如果机器托管.META。或者-根-下降 他们将被重新分配到另一台机器,并在这段时间内 正在尝试扫描-ROOT-或.META的新客户端连接。将得到一个错误 没有数据丢失,它将不可用,直到-ROOT-表中提到的重新分配被删除,因为HBase 0.96.0和.META表的位置当前存储在Zookeeper中,并且其名称成为HBase:META

目前元数据驻留在一台服务器上,但有一种方法可以复制hbase:Meta的区域

但是,HBase提供了一些方法来克服这一不足:

  • 当发生故障时,使元联机的优先级更高
  • 有关hbase:meta的信息由客户端缓存以供将来交互,并且仅当它认为应该与之交互的节点上不存在基于该信息的区域时,才会刷新该信息。(from:3.3.2如何查找我的区域?),因此,如果元区域脱机,则仅请求.Meta。失败

  • 对于元表高可用性,请按照给定的步骤执行以下操作:在服务器端,将hbase.META.replica.count设置为您希望在群集中拥有的元副本数(默认值为1)。hbase.regionserver。meta.storefile.refresh.period应以毫秒为单位设置为非零数字-大约30000(默认为0)。在客户端/用户端,将hbase.meta.replicas.use设置为true.current release,hbase 2.x,仅一个主元区域,有关详细信息,请参阅。在支持区域复制之后,元区域可以有@Ruba提到的复制区域。