You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@kylin.apache.org by 姚中强 <al...@163.com> on 2017/10/16 12:32:25 UTC

hbase configed with fixed value

Hi, I use the kylin2.1. When I start the kylin, I encountered hbase rpc timeout error, so that kylin can't get metadata and  build cube.
I try to configure the parameter in hbase-site.xml, such as hbase.client.scanner.timeout.period and hbase.rpc.timeout, but it didn't work.
Finally, I found that kylin  has configured with fixed parameters in HBaseResourceStore, as follows. I want to know why you do that? Thanks!


private StorageURL buildMetadataUrl(KylinConfig kylinConfig) throws IOException {
    StorageURL url = kylinConfig.getMetadataUrl();
if (!url.getScheme().equals("hbase"))
throw new IOException("Cannot create HBaseResourceStore. Url not match. Url: " + url);

// control timeout for prompt error report
Map<String, String> newParams = new LinkedHashMap<>();
newParams.put("hbase.client.scanner.timeout.period", "10000");
newParams.put("hbase.rpc.timeout", "5000");
newParams.put("hbase.client.retries.number", "3");
newParams.putAll(url.getAllParameters());

return url.copy(newParams);
}






Re: hbase configed with fixed value

Posted by 姚中强 <al...@163.com>.
I understand, thank you very much.
There is a hbase call timeout problem. I will set a slightly larger value.


On 10/16/2017 21:19,ShaoFeng Shi<sh...@apache.org> wrote:
Hi Zhongqiang,

Setting a big timeout is not recommended; It will hide the problem and
slowdown Kylin overall performance when HBase is unhealthy or the network
is slow.

2017-10-16 20:32 GMT+08:00 姚中强 <al...@163.com>:

> Hi, I use the kylin2.1. When I start the kylin, I encountered hbase rpc
> timeout error, so that kylin can't get metadata and  build cube.
> I try to configure the parameter in hbase-site.xml, such as
> hbase.client.scanner.timeout.period and hbase.rpc.timeout, but it didn't
> work.
> Finally, I found that kylin  has configured with fixed parameters in
> HBaseResourceStore, as follows. I want to know why you do that? Thanks!
>
>
> private StorageURL buildMetadataUrl(KylinConfig kylinConfig) throws
> IOException {
>     StorageURL url = kylinConfig.getMetadataUrl();
> if (!url.getScheme().equals("hbase"))
> throw new IOException("Cannot create HBaseResourceStore. Url not match.
> Url: " + url);
>
> // control timeout for prompt error report
> Map<String, String> newParams = new LinkedHashMap<>();
> newParams.put("hbase.client.scanner.timeout.period", "10000");
> newParams.put("hbase.rpc.timeout", "5000");
> newParams.put("hbase.client.retries.number", "3");
> newParams.putAll(url.getAllParameters());
>
> return url.copy(newParams);
> }
>
>
>
>
>
>


-- 
Best regards,

Shaofeng Shi 史少锋

Re: hbase configed with fixed value

Posted by ShaoFeng Shi <sh...@apache.org>.
Hi Zhongqiang,

Setting a big timeout is not recommended; It will hide the problem and
slowdown Kylin overall performance when HBase is unhealthy or the network
is slow.

2017-10-16 20:32 GMT+08:00 姚中强 <al...@163.com>:

> Hi, I use the kylin2.1. When I start the kylin, I encountered hbase rpc
> timeout error, so that kylin can't get metadata and  build cube.
> I try to configure the parameter in hbase-site.xml, such as
> hbase.client.scanner.timeout.period and hbase.rpc.timeout, but it didn't
> work.
> Finally, I found that kylin  has configured with fixed parameters in
> HBaseResourceStore, as follows. I want to know why you do that? Thanks!
>
>
> private StorageURL buildMetadataUrl(KylinConfig kylinConfig) throws
> IOException {
>     StorageURL url = kylinConfig.getMetadataUrl();
> if (!url.getScheme().equals("hbase"))
> throw new IOException("Cannot create HBaseResourceStore. Url not match.
> Url: " + url);
>
> // control timeout for prompt error report
> Map<String, String> newParams = new LinkedHashMap<>();
> newParams.put("hbase.client.scanner.timeout.period", "10000");
> newParams.put("hbase.rpc.timeout", "5000");
> newParams.put("hbase.client.retries.number", "3");
> newParams.putAll(url.getAllParameters());
>
> return url.copy(newParams);
> }
>
>
>
>
>
>


-- 
Best regards,

Shaofeng Shi 史少锋