Java面试题更新 2026-08-03

请说明使用 HBase 的 Java API 实现对一张表执行数据插入、查询、更新和删除的具体步骤,并提及涉及的类或接口。

考察说明

考查对 HBase Java API 基本操作流程和常用类的掌握程度

回答思路

  1. 【回答框架 1】HBase 提供 Table 接口来执行数据操作。通常先通过 ConnectionFactory 创建 Connection,再调用 getTable(TableName) 获得 Table 实例。所有操作均基于 Put、Get、Delete 等类。
  2. 【回答框架 2】插入数据:构造 Put 对象,指定行键,通过 addColumn 添加列族、列限定符和值,然后调用 table.put(put)。批量插入可使用 table.put(List<Put>)。
  3. 【回答框架 3】查询数据:使用 Get 对象指定行键,可设置要取回的列,通过 table.get(get) 得到 Result,再使用 Result 的 getValue 或遍历 Cell 获取数据。扫描多行则使用 Scan 和 ResultScanner。
  4. 【回答框架 4】更新数据:本质上仍是 Put 操作,使用相同行键和列限定符再次写入即可覆盖旧值,注意版本保留。
  5. 【回答框架 5】删除数据:构造 Delete 对象,指定行键,可调用 addColumn 删除特定列或 addFamily 删除整个列族,然后 table.delete(delete)。
  6. 【关键点 1】使用 ConnectionFactory 创建连接,并用 getTable 获取 Table 实例
  7. 【关键点 2】Put、Get、Delete 分别对应插入、查询、删除操作
  8. 【关键点 3】更新数据通过 Put 覆盖实现,删除时注意使用 addColumn 或 addFamily 控制范围
  9. 【易错点 1】没有关闭 Connection 和 Table 导致资源泄漏
  10. 【易错点 2】Put 的 addColumn 需指定列族,列族必须预先存在
  11. 【易错点 3】删除操作若不指定列会删除整行,需谨慎