我有一个问题。我使用Java程序在HBase中写入数据。我有HTable对象,我调用以下方法(伪代码):
// creates a Put object with new data
Put put = createNewPutObject();
htable.put(put);
htable.flushCommits();
clearBufferOnFail设置为true:
this.htable.setAutoFlush(false, true);
一遍又一遍地调用代码的第一部分。我们做一些事情,创建一个Put对象,刷新htable,做更多事情,创建一个Put对象......等等。
如果我的HTable对象丢失了与HBase的连接会怎样?这是内部处理的吗?或者我需要关闭我的HTable对象并打开一个新的HTable对象呢? 到目前为止,我认为连接是在内部使用连接池从HTable对象处理的,所以我必须做任何事情。我认为捕获异常然后重试就足够了。由于clearBufferOnFail设置为true,因此不会写入重复数据。
但是,有太多连接以某种方式打开会发生吗?或者这一切都处理好了吗?
感谢您的回答: - )