下面是异常信息:

2018-11-08 16:55:52,361 INFO [main] org.apache.hadoop.hbase.mapreduce.TableRecordReaderImpl: recovered from org.apache.hadoop.hbase.client.RetriesExhaustedException: Failed after attempts=36, exceptions:

Thu Nov 08 16:55:52 CST 2018, null, java.net.SocketTimeoutException: callTimeout=180000, callDuration=180111: row '120180358862' on table 'ubas:stats_job_user_analysis' at region=ubas:stats_job_user_analysis,1\x11201803\x1158862,1536809361468.aa5027e279ba39d6505d8b507c6aa3a0., hostname=foxlog02.engine.wx,16020,1538805121280, seqNum=61831

at org.apache.hadoop.hbase.client.RpcRetryingCallerWithReadReplicas.throwEnrichedException(RpcRetryingCallerWithReadReplicas.java:276)

at org.apache.hadoop.hbase.client.ScannerCallableWithReplicas.call(ScannerCallableWithReplicas.java:210)

at org.apache.hadoop.hbase.client.ScannerCallableWithReplicas.call(ScannerCallableWithReplicas.java:60)

at org.apache.hadoop.hbase.client.RpcRetryingCaller.callWithoutRetries(RpcRetryingCaller.java:210)

at org.apache.hadoop.hbase.client.ClientScanner.call(ClientScanner.java:327)

at org.apache.hadoop.hbase.client.ClientScanner.loadCache(ClientScanner.java:413)

at org.apache.hadoop.hbase.client.ClientScanner.next(ClientScanner.java:371)

at org.apache.hadoop.hbase.mapreduce.TableRecordReaderImpl.nextKeyValue(TableRecordReaderImpl.java:210)

at org.apache.hadoop.hbase.mapreduce.TableRecordReader.nextKeyValue(TableRecordReader.java:147)

at org.apache.hadoop.hbase.mapreduce.TableInputFormatBase$1.nextKeyValue(TableInputFormatBase.java:216)

at org.apache.hadoop.mapred.MapTask$NewTrackingRecordReader.nextKeyValue(MapTask.java:556)

at org.apache.hadoop.mapreduce.task.MapContextImpl.nextKeyValue(MapContextImpl.java:80)

at org.apache.hadoop.mapreduce.lib.map.WrappedMapper$Context.nextKeyValue(WrappedMapper.java:91)

at org.apache.hadoop.mapreduce.Mapper.run(Mapper.java:145)

at org.apache.hadoop.mapred.MapTask.runNewMapper(MapTask.java:787)

at org.apache.hadoop.mapred.MapTask.run(MapTask.java:341)

at org.apache.hadoop.mapred.YarnChild$2.run(YarnChild.java:164)

at java.security.AccessController.doPrivileged(Native Method)

at javax.security.auth.Subject.doAs(Subject.java:422)

at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1758)

at org.apache.hadoop.mapred.YarnChild.main(YarnChild.java:158)

Caused by: java.net.SocketTimeoutException: callTimeout=180000, callDuration=180111: row '120180358862' on table 'ubas:stats_job_user_analysis' at region=ubas:stats_job_user_analysis,1\x11201803\x1158862,1536809361468.aa5027e279ba39d6505d8b507c6aa3a0., hostname=foxlog02.engine.wx,16020,1538805121280, seqNum=61831

at org.apache.hadoop.hbase.client.RpcRetryingCaller.callWithRetries(RpcRetryingCaller.java:169)

at org.apache.hadoop.hbase.client.ResultBoundedCompletionService$QueueingFuture.run(ResultBoundedCompletionService.java:65)

at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)

at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)

at java.lang.Thread.run(Thread.java:748)

Caused by: java.io.IOException: Call to FoxLog02.engine.wx/192.168.202.2:16020 failed on local exception: org.apache.hadoop.hbase.ipc.CallTimeoutException: Call id=2, waitTime=180001, operationTimeout=180000 expired.

at org.apache.hadoop.hbase.ipc.AbstractRpcClient.wrapException(AbstractRpcClient.java:292)

at org.apache.hadoop.hbase.ipc.RpcClientImpl.call(RpcClientImpl.java:1271)

at org.apache.hadoop.hbase.ipc.AbstractRpcClient.callBlockingMethod(AbstractRpcClient.java:227)

at org.apache.hadoop.hbase.ipc.AbstractRpcClient$BlockingRpcChannelImplementation.callBlockingMethod(AbstractRpcClient.java:336)

at org.apache.hadoop.hbase.protobuf.generated.ClientProtos$ClientService$BlockingStub.scan(ClientProtos.java:34094)

at org.apache.hadoop.hbase.client.ScannerCallable.call(ScannerCallable.java:220)

at org.apache.hadoop.hbase.client.ScannerCallable.call(ScannerCallable.java:65)

at org.apache.hadoop.hbase.client.RpcRetryingCaller.callWithoutRetries(RpcRetryingCaller.java:210)

at org.apache.hadoop.hbase.client.ScannerCallableWithReplicas$RetryingRPC.call(ScannerCallableWithReplicas.java:364)

at org.apache.hadoop.hbase.client.ScannerCallableWithReplicas$RetryingRPC.call(ScannerCallableWithReplicas.java:338)

at org.apache.hadoop.hbase.client.RpcRetryingCaller.callWithRetries(RpcRetryingCaller.java:136)

... 4 more

Caused by: org.apache.hadoop.hbase.ipc.CallTimeoutException: Call id=2, waitTime=180001, operationTimeout=180000 expired.

at org.apache.hadoop.hbase.ipc.Call.checkAndSetTimeout(Call.java:73)

at org.apache.hadoop.hbase.ipc.RpcClientImpl.call(RpcClientImpl.java:1245)

... 13 more

2018-11-08 16:55:52,362 WARN [main] org.apache.hadoop.hbase.mapreduce.TableRecordReaderImpl: We are restarting the first next() invocation, if your mapper has restarted a few other times like this then you should consider killing this job and investigate why it's taking so long.

2018-11-08 17:01:45,893 INFO [main] com.tracker.offline.business.job.user.JobAnalMonthTopMR: count :0

2018-11-08 17:01:45,893 INFO [main] com.tracker.offline.business.job.user.JobAnalMonthTopMR: tablename execute end :ubas:stats_job_user_analysis

2018-11-08 17:04:45,896 WARN [main] org.apache.hadoop.hbase.client.ScannerCallable: Ignore, probably already closed

代码设置参数:

Scan scan = newScan();

scan.setAttribute(Scan.SCAN_ATTRIBUTES_TABLE_NAME, tablename.getBytes());

scan.setCaching(2000);

scan.setCacheBlocks(false);

FilterList filter= newFilterList(FilterList.Operator.MUST_PASS_ONE);for(int i = 0 ; i

filter.addFilter(new PrefixFilter(Bytes.toBytes(j+RowUtil.ROW_SPLIT +monthsList.get(i))));

}

scan.setFilter(filter);

}

HbaseMapReduce mr_1= new HbaseMapReduce(JobAnalMonthTopMR.class, JobMonthMapper.class, Text.class, Text.class, trackerconfig, outputPath + "/01");

mr_1.setReducerClass(JobMonthReducer.class)

.setScan(scan).setParameter("hbase.client.scanner.timeout.period", "180000")

.setParameter("hbase.rpc.timeout", "180000").setJarName("JobAnalMonthTopMR-statistic");

mr_1.waitForCompletion();

代码的基本设置和出现的场景:

1-超时时长180s;

2-缓存条数2000条,每条三列,值为Long型;

3-被扫描表大小,54G;

4-有一个过滤器,使用的前缀查询;

5-刚迁移集群,以前是MapReduc和Hbase在同一个集群上。迁移后,Hbase和MapReduce不再同一个集群上;

排查原因:

1-查看表有没有被破坏,参考命令hbase hbck;

2-超时时长解决方法:

(1)-增加超时时长;(2)-减少缓存条数;  但问题不再此处,因为取的每条数据很小,总的两千条也不会暂用很多的内存;

3-前缀过滤器原因:因为时过滤查询和前缀查询的速度比较慢。所以在扫描的块中分布的合格的条数比例很小时。

会很难再短时间内读取2000条数据,解决方法,用范围查询代替前缀查询。

hbase scan超时设置_hbase scan超时问题相关推荐

  1. nginx中的超时设置,请求超时、响应等待超时等

    nginx比较强大,可以针对单个域名请求做出单个连接超时的配置. 比如些动态解释和静态解释可以根据业务的需求配置 proxy_connect_timeout :后端服务器连接的超时时间_发起握手等候响 ...

  2. hbase scan超时设置_HBase学习之路 (六)过滤器

    点击上方蓝字  关注我们 HBase学习之路 (六)过滤器 过滤器(Filter) 基础API中的查询操作在面对大量数据的时候是非常苍白的,这里Hbase提供了高级的查询方法:Filter.Filte ...

  3. c mysql 查询超时设置_MySQL查询超时的设置方法

    欢迎进入Linux社区论坛,与200万技术人员互动交流 >>进入 这里顺带解释一下什么是non-interactive connection Non-Interactive Command ...

  4. httpwebrequest超时时间timeout设置无效_【SpringBoot WEB 系列】RestTemplate 之超时设置...

    [SpringBoot WEB 系列]RestTemplate 之超时设置 一般来讲我们访问外部资源时,需要做一个保护,比如最常见的添加一个超时设置,避免一直被阻塞,RestTemplate 可以通过 ...

  5. C socket: 关于connect超时设置

    使用阻塞的socket, 可以设置读写超时, struct timeval tv_timeout; tv_timeout.tv_sec = 60; tv_timeout.tv_usec = 0; if ...

  6. hbase scan超时设置_深入浅出HBase系列(二)

    今天来讲讲HBase读的过程: 1.HBase读过程详解 2.1影响HBase读取命令的参数 HBase读包含两种命令:get ,基于确切的RowKey去获取一行数据,通常被称之为随机点查:scan, ...

  7. python爬虫网络请求超时_6、web爬虫讲解2—urllib库爬虫—基础使用—超时设置—自动模拟http请求...

    利用python系统自带的urllib库写简单爬虫 urlopen()获取一个URL的html源码 read()读出html源码内容 decode("utf-8")将字节转化成字符 ...

  8. RPC的超时设置,一不小心就是线上事故

    来自:IT人的职场进阶 上面这张监控图,对于服务端的研发同学来说再熟悉不过了.在日常的系统维护中,『服务超时』应该属于监控报警最多的一类问题. 尤其在微服务架构下,一次请求可能要经过一条很长的链路,跨 ...

  9. Confluence 6 配置 HTTP 超时设置

    当宏,例如 RSS Macro 进行 HTTP 请求的时候,有可能因为请求的时间比较长,而导致超时.你可以通过设置系统参数来避免这个问题. 配置 HTTP 超时设置: 在屏幕的右上角单击 控制台按钮  ...

最新文章

  1. 智能车竞赛第十六届比赛参赛同学提问-环境参数-5月15
  2. 2021-01-28 粒子群优化算法-Python版本和Matlab函数 particleswarm 调用
  3. MySQL清理注册表
  4. 如何判断三极管好坏?
  5. SiameseRPN详解
  6. 论文浅尝 | 知识图谱问答中的层次类型约束主题实体识别
  7. 机器学习领域有哪一些值得关注的人
  8. 亚马逊上海人工智能研究院:深度图模型实习生
  9. PostgreSQL pg_hba.conf 文件简析
  10. ndarray是什么_python数据分析用什么软件?
  11. 【电子书分享】决战大数据-驾驭未来商业的利器.pdf(附下载链接)
  12. Gradle Eclipse插件教程
  13. 个人简历模板(网页版)
  14. 六行shell脚本实现Android手机自动刷抖音极速版
  15. 使用MATLAB Mapping工具箱创建和编辑地图
  16. 莱维特LEWITT声卡驱动安装设置方法
  17. 个人社区(博客)项目Romantic——功能模块划分
  18. openstack删除僵尸卷
  19. 我写过的软件之TSE-工作流程和实现
  20. 购买完域名之后能干什么事儿?

热门文章

  1. Android AIDL通信Service死亡监听
  2. Splash安装和使用
  3. mysql delete join语法_mysql之delete语法
  4. 入门图形学:VR畸变后处理
  5. etag php,Http 1.1 Etag 与 Last-Modified提高php效率
  6. 产品思考 - 当当老用户历史订单记录无法找回的迷雾
  7. 服务器添加广告信息服务,在客户端上插入广告
  8. 使用flex进行网易云音乐界面构建和布局解析(2)
  9. 【C语言】dlsym提示sympol not found
  10. 部分ADSL路由器默认帐号密码