3

我正在考虑在我的应用程序启动时创建一个 HBase 表,并在我的应用程序运行时将其保持打开状态。我的应用程序可能会无限期运行。

如果我从不关闭 HBase 表会怎样?

  • 在需要重新初始化之前,连接可以打开/空闲的最长时间吗?
  • 如果系统崩溃,连接如何关闭?

我有HBase The Definitive Guide,但我没有在其中找到我正在寻找的信息。如果有任何在线参考,请提供。

4

2 回答 2

2

这是从“HBase in Action”第 25 页中提取的:

“完成后关闭表允许将底层连接资源返回到池中。”

于 2013-07-31T22:54:08.753 回答
0

这篇博文是关于 HBase 中的超时。一般来说,有很多:

  • ZK 会话超时 (zookeeper.session.timeout)
  • RPC 超时 (hbase.rpc.timeout)
  • RecoverableZookeeper 重试计数和重试等待(zookeeper.recovery.retry,zookeeper.recovery.retry.intervalmill)
  • 客户端重试计数和等待 (hbase.client.retries.number, hbase.client.pause)

您可以尝试将它们提高一点,并为重试计数设置一个非常高的值。这可以使您的会话在很长一段时间内保持活跃。

当 HBase 客户端系统崩溃时,连接超时关闭。

于 2013-07-31T07:47:50.987 回答