在EMR-5.6.0及以后版本和EMR-3.40.0及以后版本中使用HBase时,您可以存储HBase的数据在OSS上。本文为您介绍HBase on OSS架构,以及如何使用OSS作为HBase的底层存储。
背景信息
HBase on OSS的架构如下图所示。
说明 从架构图可以看到,本文不包含启用JindoData读缓存的相关配置,HBase是通过JindoSDK来实现访问OSS。
HBase on OSS架构优势如下:
- 简化了数据迁移和恢复
HBase的数据文件和表的元数据持久存储在集群外部的OSS上,HBase数据迁移和恢复时无需再使用快照等复杂的方式。
- 方便扩容
目前基于Core Node扩容HBase计算时会同步扩容HDFS,但是本文中的HDFS集群本身只用于存储WAL(Write Ahead Log),需要的存储空间较少,所以实际是能够通过计算需求而非存储需求来调整EMR集群大小,同时OSS作为云存储服务,扩容操作也比较简单。
使用限制
为了保证新集群可以从OSS恢复成功,新集群的HBase内核版本必需和旧集群HBase版本保持一致。