hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Hudson (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HBASE-12128) Cache configuration and RpcController selection for Table in Connection
Date Thu, 11 Dec 2014 05:20:13 GMT

    [ https://issues.apache.org/jira/browse/HBASE-12128?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14242165#comment-14242165
] 

Hudson commented on HBASE-12128:
--------------------------------

SUCCESS: Integrated in HBase-0.98 #734 (See [https://builds.apache.org/job/HBase-0.98/734/])
HBASE-12604 Backport HBASE-12128 (Cache configuration and RpcController selection for Table
in Connection) to 0.98 (apurtell: rev 4c1a31f289ca76a3196e5456108858e519e9c53e)
* hbase-client/src/main/java/org/apache/hadoop/hbase/client/HTable.java
* hbase-client/src/main/java/org/apache/hadoop/hbase/client/HConnectionManager.java
* hbase-client/src/main/java/org/apache/hadoop/hbase/client/TableConfiguration.java


> Cache configuration and RpcController selection for Table in Connection
> -----------------------------------------------------------------------
>
>                 Key: HBASE-12128
>                 URL: https://issues.apache.org/jira/browse/HBASE-12128
>             Project: HBase
>          Issue Type: Sub-task
>    Affects Versions: 1.0.0, 2.0.0
>            Reporter: Andrew Purtell
>            Assignee: Stephen Yuan Jiang
>             Fix For: 2.0.0, 0.99.2
>
>         Attachments: HBASE-12128.v1-1.0.patch, HBASE-12128.v1-2.0.patch, HBASE-12128.v2-2.0.patch
>
>   Original Estimate: 120h
>          Time Spent: 72h
>  Remaining Estimate: 48h
>
> Creating Table instances should be lightweight. Apps that manage their own Connections
are expected to create Tables on demand for each interaction. However we look up values from
Hadoop Configuration when constructing Table objects for storing to some of its fields. Configuration
is a heavyweight registry that does a lot of string operations and regex matching. Method
calls into Configuration account for 48.25% of CPU time when creating the HTable object in
0.98. Another ~48% of CPU is spent constructing the desired RpcController object via reflection
in 0.98. Together this can account for ~20% of total on-CPU time of the client. See parent
issue for more detail.
> We are using Connection like a factory for Table. We should cache configuration for Table
in Connection. We should also create by reflection once and cache the desired RpcController
object, and clone it for new Tables.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Mime
View raw message