mapr初始get调用需要时间

ibps3vxo  于 2021-06-10  发布在  Hbase
关注(0)|答案(1)|浏览(275)

我需要优化多线程分布式环境中mapr分发的get操作所用的时间-
1) 数据服务正在多个jvm上运行。2) 我使用的是htablepool(必须使用不支持connectionfactory的客户端版本),在分析性能时发现,使用connection.gettable()会引入热点。
问题-初始请求需要大约1秒(我认为这是因为客户端没有缓存的资源来定位区域等),它需要额外的时间。通常响应时间为几毫秒。
我需要澄清我对-1)的理解是,每次我们得到一个新的池htableinterface时,创建客户端缓存以定位区域服务器都会有延迟。2) 如果客户机空闲(创建了池但没有活动),我观察到再次执行get调用需要大约1秒。有没有可能我让已经缓存的区域位置一直可用。
是否有任何客户端设置,我应该探讨始终保持响应时间小于200毫秒。
谢谢

xxb16uws

xxb16uws1#

为了克服连接过时的问题,在core-site.xml的属性下面添加了
fs.mapr.rpc.timeout=>400
不是每次都使用connection.gettable,而是创建一次htable并与多个线程一起使用。
htable for mapr实现是线程安全的。

相关问题