hbase遇到的坑及解决办法

1.通过连接池建立连接,然后再较短的时间内多次插入或者读取数据的时候会报错:broken pipe.

Broken pipe往往是因为客户端和服务器的TCP连接断开引起的,hbase thrift server有一个超时的配置hbase.thrift.server.socket.read.timeout,该值默认为60秒,即当客户端和服务器的连接超过该值没有收到消息的时候,该连接会被断开。

原因:利用happybase创建连接池后,在with完成后connection并没有close,直接返回到连接池当中。

问题就出现在这里,返回到连接池中的connection在60秒后没有使用,被断开了连接,当下一次再拿这个connection去请求资源就会出现Broken pipe的异常。

解决方案:方法1.配置hbase.thrift.server.socket.read.timeout,增加超时时间;

     方法2.在使用connection后关闭连接。

              你现在的气质里,隐藏着你读过的书,走过的路,爱过的人...

你可能感兴趣的:(hbase遇到的坑及解决办法)