赛尔校园公共服务平台 Logo
平台使用
阿里云
百度云
移动云
智算服务
教育生态
登录 →
赛尔校园公共服务平台 Logo
平台使用 阿里云 百度云 移动云 智算服务 教育生态
登录
  1. 首页
  2. 阿里云
  3. 表格存储
  4. 操作指南
  5. HBase支持
  6. 如何兼容HBase 1.0以前的版本

如何兼容HBase 1.0以前的版本

  • HBase支持
  • 发布于 2025-04-22
  • 0 次阅读
文档编辑
文档编辑

Tablestore HBase Client目前支持HBase Client 1.0.0及以上版本的API。本文介绍Tablestore HBase Client如何兼容HBase 1.0以前的版本的API。

背景信息

HBase Client 1.0.0版本相对于之前版本有一些较大的变化,这些变化是不兼容的。

为了协助一些使用老版本HBase的用户能方便地使用表格存储,本文将介绍HBase 1.0相较于旧版本的一些较大变化以及如何使其兼容。

Connection接口

HBase 1.0.0及以上的版本中废除了HConnection接口,并推荐使用org.apache.hadoop.hbase.client.ConnectionFactory类,创建一个实现Connection接口的类,用ConnectionFactory取代已废弃的 ConnectionManager和HConnectionManager。

创建一个Connection的代价比较大,但Connection是线程安全的。使用时可以在程序中只生成一个Connection对象,多个线程可以共享该对象。

HBase 1.0.0及以上的版本中,您需要管理Connection的生命周期,并在使用完以后将其它close。

最新的代码如下所示:

Connection connection = ConnectionFactory.createConnection(config);
// ...
connection.close();

TableName类

在HBase 1.0.0之前的版本中,创建表时可以使用String类型的表名,但是HBase 1.0.0之后需要使用类 org.apache.hadoop.hbase.TableName。

最新的代码如下所示:

String tableName = "MyTable";
// or byte[] tableName = Bytes.toBytes("MyTable");
TableName tableNameObj = TableName.valueOf(tableName);

Table、BufferedMutator和RegionLocator接口

从HBase Client 1.0.0开始,HTable接口已废弃,取而代之的是Table、BufferedMutator和RegionLocator三个接口。具体接口说明请参见下表。

接口

说明

org.apache.hadoop.hbase.client.Table

用于操作单张表的读写等请求。

org.apache.hadoop.hbase.client.BufferedMutator

用于异步批量写,对应于旧版本 HTableInterface接口中的setAutoFlush(boolean)。

org.apache.hadoop.hbase.client.RegionLocator

表分区信息。

Table、BufferedMutator和RegionLocator三个接口均非线程安全的,但比较轻量,可以为每个线程创建一个对象。

Admin接口

从 HBase Client 1.0.0开始,新接口org.apache.hadoop.hbase.client.Admin取代了HBaseAdmin类。由于表格存储是一个云服务,大多数运维类接口都是自动处理的,所以Admin接口中的众多接口都不会被支持,具体区别请参见Tablestore HBase Client支持的功能。

通过Connection实例创建Admin实例的示例如下:

Admin admin = connection.getAdmin();
相关文章

Tablestore HBase Client介绍 2025-04-22 14:40

除了使用表格存储SDK以及Restful API来访问

Tablestore HBase Client快速入门 2025-04-22 14:40

本文介绍如何使用Tablestore HBase Client实现一个访问

Tablestore HBase Client支持的功能 2025-04-22 14:40

使用表格存储时,

从HBase Client迁移到Tablestore HBase Client 2025-04-22 14:40

Tablestore HBase Client是基于HBase Client的封装,使用方法和HBase Client基本一致,但仍存在一些差别。本文介绍

如何兼容HBase 1.0以前的版本 2025-04-22 14:40

Tablestore HBase Client目前支持HBase Client 1.0.0及以上版本的API。本文介绍

目录
Copyright © 2025 your company All Rights Reserved. Powered by 赛尔网络.
京ICP备14022346号-15
gongan beian 京公网安备11010802041014号