hbase - org.apache.hadoop.hbase.client.RpcRetryingCaller.callWithRetries(RpcRetryingCaller.java:157)
问题描述
我有 flink 应用程序,它可以将数据读取和写入 Hbase。每个事件都会读取和写入 Hbase。结果对 hbase table 的调用太多。当负载很高时,see lag 得到构建,并且日志显示以下异常。我应该使用哪些参数来避免 Hbase 上的此类异常
org.apache.hadoop.hbase.client.RetriesExhaustedException:尝试=3 后失败,异常:2021 年 5 月 17 日星期一 03:28:41 CDT 2021,RpcRetryingCaller{globalStartTime=1621240111355,pause=1000,retries=3},java.io。 IOException:调用 XXXXXXXXXX1:16020 在本地异常上失败:org.apache.hadoop.hbase.ipc.CallTimeoutException:调用 id=23,waitTime=10001,operationTimeout=10000 已过期。2021 年 5 月 17 日星期一 03:28:52 CDT,RpcRetryingCaller{globalStartTime=1621240111355,pause=1000,重试=3},java.io.IOException:调用 XXXXXXXXX:16020 因本地异常失败:org.apache.hadoop.hbase。 ipc.CallTimeoutException:呼叫 id=25,waitTime=10002,operationTimeout=10000 已过期。2021 年 5 月 17 日星期一 03:29:04 CDT,RpcRetryingCaller{globalStartTime=1621240111355,pause=1000,重试=3},java.io.IOException:调用 XXXXXXXX:16020 本地异常失败:org.apache.hadoop。
at org.apache.hadoop.hbase.client.RpcRetryingCaller.callWithRetries(RpcRetryingCaller.java:157)
at org.apache.hadoop.hbase.client.HTable.get(HTable.java:865)
at org.apache.hadoop.hbase.client.HTable.get(HTable.java:831)
at XXXXXXXXX org.apache.flink.streaming.api.operators.KeyedProcessOperator.processElement(KeyedProcessOperator.java:85)
at org.apache.flink.streaming.runtime.tasks.OneInputStreamTask$StreamTaskNetworkOutput.emitRecord(OneInputStreamTask.java:161)
at org.apache.flink.streaming.runtime.io.StreamTaskNetworkInput.processElement(StreamTaskNetworkInput.java:178)
at org.apache.flink.streaming.runtime.io.StreamTaskNetworkInput.emitNext(StreamTaskNetworkInput.java:153)
at org.apache.flink.streaming.runtime.io.StreamOneInputProcessor.processInput(StreamOneInputProcessor.java:67)
at org.apache.flink.streaming.runtime.tasks.StreamTask.processInput(StreamTask.java:351)
at org.apache.flink.streaming.runtime.tasks.mailbox.MailboxProcessor.runMailboxLoop(MailboxProcessor.java:185)
at org.apache.flink.streaming.runtime.tasks.StreamTask.runMailboxLoop(StreamTask.java:569)
at org.apache.flink.streaming.runtime.tasks.StreamTask.invoke(StreamTask.java:534)
at org.apache.flink.runtime.taskmanager.Task.doRun(Task.java:721)
at org.apache.flink.runtime.taskmanager.Task.run(Task.java:546)
at java.lang.Thread.run(Thread.java:748)
原因:java.io.IOException:调用 brdn6328.target.com/10.66.223.21:16020 在本地异常上失败:org.apache.hadoop.hbase.ipc.CallTimeoutException:调用 id=27,waitTime=10001,operationTimeout= 10000 已过期。在 org.apache.hadoop.hbase.ipc.AbstractRpcClient.wrapException(AbstractRpcClient.java:292) 在 org.apache.hadoop.hbase.ipc.RpcClientImpl.call(RpcClientImpl.java:1271) 在 org.apache.hadoop.hbase .ipc.AbstractRpcClient.callBlockingMethod(AbstractRpcClient.java:227) 在 org.apache.hadoop.hbase.ipc.AbstractRpcClient$BlockingRpcChannelImplementation.callBlockingMethod(AbstractRpcClient.java:336) 在 org.apache.hadoop.hbase.protobuf.generated.ClientProtos $ClientService$BlockingStub.get(ClientProtos.java:34070) at org.apache.hadoop.hbase.client.HTable$3.call(HTable.java:857) at org.apache.hadoop.hbase.client.HTable$3.call (HTable.java:848) 在 org. apache.hadoop.hbase.client.RpcRetryingCaller.callWithRetries(RpcRetryingCaller.java:136) ... 19 更多原因:org.apache.hadoop.hbase.ipc.CallTimeoutException: Call id=27, waitTime=10001, operationTimeout=10000已到期。在 org.apache.hadoop.hbase.ipc.Call.checkAndSetTimeout(Call.java:73) 在 org.apache.hadoop.hbase.ipc.RpcClientImpl.call(RpcClientImpl.java:1245) ... 还有 25 个
解决方案
推荐阅读
- javascript - 我如何让旋转的元素占据他们新的真实空间?
- docker - 如何使用 terraform 将 docker 容器部署到 heroku?
- javascript - 在外包导航上引导 js-scroll-trigger
- android - 如何在 Mockito3.x 中使用 PowerMock?
- assembly - 原始计算器(+、-、*、/)。添加以十六进制表示法工作的能力
- jquery - 在控制器中点击 url 时出现 ajax 错误
- reactjs - formik-material-ui 不适用于 TogglleButtonGroup 组件
- java - java中的最佳验证结构
- c# - Polly Retry 总是抛出 System.AggregateException 而不是自定义异常
- rxjs - 使用两个传入的可观察流之一以角度过滤数据