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 EC2 和 Amazon EC2 。

B.9。操作

如何管理 HBase 群集?

参见 Apache HBase 运营管理。

如何备份 HBase 群集?

参见 HBase Backup 。

B.10。 HBase 在行动

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

参见关于 HBase 的其他信息。