一.HBase之CallQueueTooBigException
查看RpcServer.java【路径:hbase-2.1.0-src\hbase-2.1.0\hbase-server\src\main\java\org\apache\hadoop\hbase\ipc】源代码可知,报CallQueueTooBigException异常的原因是,RPC队列过大!具体到此处的原因是:Spark升级到2.x版本后,性能大幅提升,同时因HBase升级大2.1导致使用Spark往HBase同步数据的效率大幅增加,进而增加了对HBase RPC的负担。Spark同步HBase是使用RPC【远程过程调用】,因此RPC的queue大小对大数据环境这种高并发的情况来说就是息息相关了!源代码注释信息如下:
* Maximum size in bytes of the currently queued and running Calls. If a new Call puts us over
* this size, then we will reject the call (after parsing it though