B.1。一般

我什么时候应该使用 HBase?

请参阅架构章节中的概述

还有其他 HBase 常见问题吗?

请参阅维基上的常见问题解答, HBase Wiki 常见问题解答

HBase 是否支持 SQL?

并不是的。通过 Hive 对 HBase 的 SQL-ish 支持正在开发中,但是 Hive 基于 MapReduce,它通常不适用于低延迟请求。有关 HBase 客户端的示例,请参见数据模型部分。

如何找到 NoSQL / HBase 的示例?

请参阅关于 HBase 的其他信息以及其他文章中 BigTable 论文的链接。

HBase 的历史是什么?

hbase.history

为什么 HBase 不建议使用 10MB 以上的电池?

大细胞不适合 HBase 缓冲数据的方法。首先,大单元在写入时绕过 MemStoreLAB。然后,在读取操作期间,它们不能缓存在 L2 块缓存中。相反,HBase 每次都必须为它们分配堆内存。这可能会对 RegionServer 进程中的垃圾收集器产生重大影响。

B.2。升级

如何将 Maven 管理的项目从 HBase 0.94 升级到 HBase 0.96+?

在 HBase 0.96 中,项目转移到模块化结构。调整项目的依赖关系以依赖hbase-client模块或其他模块,而不是单个 JAR。您可以根据您的目标 HBase 版本,在以下之一之后为 Maven 依赖建模。有关更多信息,请参见第 3.5 节“从 0.94.x 升级到 0.96.x”或第 3.3 节“从 0.96.x 升级到 0.98.x”。

Maven 对 HBase 的依赖性为 0.98

<dependency>
  <groupId>org.apache.hbase</groupId>
  <artifactId>hbase-client</artifactId>
  <version>0.98.5-hadoop2</version>
</dependency> 

Maven 对 HBase 的依赖性为 0.96

<dependency>
  <groupId>org.apache.hbase</groupId>
  <artifactId>hbase-client</artifactId>
  <version>0.96.2-hadoop2</version>
</dependency> 

Maven 对 HBase 的依赖性为 0.94

<dependency>
  <groupId>org.apache.hbase</groupId>
  <artifactId>hbase</artifactId>
  <version>0.94.3</version>
</dependency> 

B.3。建筑

HBase 如何处理 Region-RegionServer 分配和位置?

区域

B.4。组态

我怎样才能开始使用我的第一个集群?

参见快速入门 - 独立 HBase

我在哪里可以了解其他配置选项?

请参见 Apache HBase 配置

B.5。架构设计/数据访问

我应该如何在 HBase 中设计我的架构?

参见数据模型HBase 和模式设计

如何在 HBase 中存储(填空)?

请参见支持的数据类型

如何处理 HBase 中的二级索引?

请参见辅助索引和备用查询路径

我可以更改表的 rowkeys 吗?

这是一个非常常见的问题。你不能。参见 Rowkeys 的不变性。

HBase 支持哪些 API?

参见数据模型客户端Apache HBase 外部 API

B.6。 MapReduce 的

如何将 MapReduce 与 HBase 一起使用?

参见 HBase 和 MapReduce

B.7。性能和故障排除

如何提高 HBase 集群性能?

参见 Apache HBase 性能调优

如何解决 HBase 群集问题?

请参阅疑难解答和调试 Apache HBase

B.8。亚马逊 EC2

我在 Amazon EC2 上运行 HBase 并且......

EC2 问题是一个特例。参见 Amazon EC2Amazon EC2

B.9。操作

如何管理 HBase 群集?

参见 Apache HBase 运营管理

如何备份 HBase 群集?

参见 HBase Backup

B.10。 HBase 在行动

我在哪里可以找到有关 HBase 的有趣视频和演示文稿?

参见关于 HBase 的其他信息。