bulk write hbase 时遇到下面的错误:

19/03/20 02:16:02 ERROR LoadIncrementalHFiles: IOException during splitting
java.util.concurrent.ExecutionException: java.io.IOException: The endkey of one region for table ap:users_v2 is not equal to the startkey of the next region in hbase:meta.Please use hbck tool to fix it first.
at java.util.concurrent.FutureTask.report(FutureTask.java:122)
at java.util.concurrent.FutureTask.get(FutureTask.java:192)
at org.apache.hadoop.hbase.mapreduce.LoadIncrementalHFiles.groupOrSplitPhase(LoadIncrementalHFiles.java:558)
at org.apache.hadoop.hbase.mapreduce.LoadIncrementalHFiles.doBulkLoad(LoadIncrementalHFiles.java:414)
at com.hotstar.ap.ingest.batch.tool.bulkload.BulkloadHelper$.bulkloadWrite(BulkloadHelper.scala:55)
at com.hotstar.ap.ingest.batch.tool.HBaseWriterHelper$.writeToHBase(HBaseWriterHelper.scala:57)
at com.hotstar.ap.ingest.batch.ingester.v2.VirtualBatchIngester.runOffline(VirtualBatchIngester.scala:20)
at com.hotstar.ap.ingest.batch.ingester.VirtualIngester.run(VirtualIngester.scala:12)
at com.hotstar.ap.ingest.batch.Main$$anonfun$1.apply(Main.scala:52)
at com.hotstar.ap.ingest.batch.Main$$anonfun$1.apply(Main.scala:52)
at scala.collection.immutable.List.foreach(List.scala:381)
at com.hotstar.ap.ingest.batch.Main$.delayedEndpoint$com$hotstar$ap$ingest$batch$Main$1(Main.scala:52)
at com.hotstar.ap.ingest.batch.Main$delayedInit$body.apply(Main.scala:14)
at scala.Function0$class.apply$mcV$sp(Function0.scala:34)
at scala.runtime.AbstractFunction0.apply$mcV$sp(AbstractFunction0.scala:12)
at scala.App$$anonfun$main$1.apply(App.scala:76)
at scala.App$$anonfun$main$1.apply(App.scala:76)
at scala.collection.immutable.List.foreach(List.scala:381)
at scala.collection.generic.TraversableForwarder$class.foreach(TraversableForwarder.scala:35)
at scala.App$class.main(App.scala:76)
at com.hotstar.ap.ingest.batch.Main$.main(Main.scala:14)
at com.hotstar.ap.ingest.batch.Main.main(Main.scala)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.apache.spark.deploy.yarn.ApplicationMaster$$anon$4.run(ApplicationMaster.scala:721)
Caused by: java.io.IOException: The endkey of one region for table ap:users_v2 is not equal to the startkey of the next region in hbase:meta.Please use hbck tool to fix it first.
at org.apache.hadoop.hbase.mapreduce.LoadIncrementalHFiles.groupOrSplit(LoadIncrementalHFiles.java:682)
at org.apache.hadoop.hbase.mapreduce.LoadIncrementalHFiles$3.call(LoadIncrementalHFiles.java:548)
at org.apache.hadoop.hbase.mapreduce.LoadIncrementalHFiles$3.call(LoadIncrementalHFiles.java:545)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
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)

sudo -u hbase hbase hbck 检查,存在 inconsistence,其中表 ap:users_v2 有错误,但显示为

Table ap:users_v2 is okay.
Number of regions: 201
Deployed on: ip-10-10-240-127.ec2.internal,16020,1552903865915 ip-10-10-240-145.ec2.internal,16020,1552903928202 ip-10-10-240-48.ec2.internal,16020,1552903982881 ip-10-10-241-65.ec2.internal,16020,1552904038213 ip-10-10-243-103.ec2.internal,16020,1552904093359 ip-10-10-243-116.ec2.internal,16020,1552904166150

sudo -u hbase hbase hbck -repair 修复,解决了 inconsistence,结果显示为

Table ap:users_v2 is okay.
Number of regions: 202
Deployed on: ip-10-10-240-127.ec2.internal,16020,1552903865915 ip-10-10-240-145.ec2.internal,16020,1552903928202 ip-10-10-240-48.ec2.internal,16020,1552903982881 ip-10-10-241-65.ec2.internal,16020,1552904038213 ip-10-10-243-103.ec2.internal,16020,1552904093359 ip-10-10-243-116.ec2.internal,16020,1552904166150

  

  

hbase meta中分区信息错误的记录的更多相关文章

  1. hbase meta表的结构

    下面看下hbase:meta 表的结构,hbase:meta表中,保存了每个表的region地址,还有一些其他信息,例如region的名字,HRegionInfo,服务器的信息.hbase:meta表 ...

  2. SpringBoot+SpringSecurity+Thymeleaf认证失败返回错误信息踩坑记录

    Spring boot +Spring Security + Thymeleaf认证失败返回错误信息踩坑记录 步入8102年,现在企业开发追求快速,Springboot以多种优秀特性引领潮流,在众多使 ...

  3. 项目一:第十四天 1.在realm中动态授权 2.Shiro整合ehcache 缓存realm中授权信息 3.动态展示菜单数据 4.Quartz定时任务调度框架—Spring整合javamail发送邮件 5.基于poi实现分区导出

    1 Shiro整合ehCache缓存授权信息 当需要进行权限校验时候:四种方式url拦截.注解.页面标签.代码级别,当需要验证权限会调用realm中的授权方法   Shiro框架内部整合好缓存管理器, ...

  4. 收集计算机分区信息,去除列中的重复值(Excel)(空行)

    收集计算机分区信息 $servers = gc D:\serverlist.txt $result = $results = $null $results = @() foreach ($server ...

  5. asp.net Web项目中使用Log4Net进行错误日志记录

      使用log4net可以很方便地为应用添加日志功能.应用Log4net,开发者可以很精确地控制日志信息的输出,减少了多余信息,提高了日志记录性能.同时,通过外部配置文件,用户可以不用重新编译程序就能 ...

  6. HBase之五:hbase的region分区

    一.Region 概念 Region是表获取和分布的基本元素,由每个列族的一个Store组成.对象层级图如下: Table (HBase table) Region (Regions for the ...

  7. 【转帖】HBase之五:hbase的region分区

    HBase之五:hbase的region分区 https://www.cnblogs.com/duanxz/p/3154487.html 一.Region 概念 Region是表获取和分布的基本元素, ...

  8. 【转】hbase meta表修复

    [From]https://www.iteye.com/blog/blackproof-2052898 meta表修复一 查看hbasemeta情况 hbase hbck .重新修复hbase met ...

  9. Hbase meta 表异常修复

    Hbase meta表异常修复 标签(空格分隔): Hbase 一,Hbase meta元数据表 1.1 背景 线上Hbase 因为在hbase shell中清空 truncate 'table'一张 ...

随机推荐

  1. (Java多线程系列九)线程池

    线程池 1.什么是线程池 线程池是指在初始化一个多线程应用程序过程中创建一个线程集合,然后在需要执行新的任务时重用这些线程而不是新建一个线程.线程池中线程的数量通常取决于可用内存数量和应用程序的需求. ...

  2. Python基础(一) Python3环境搭建

    转载清注明原文地址,谢谢. OS:Windows 10 第一步,从Python官方下载安装包 Windows端下载地址:https://www.python.org/downloads/windows ...

  3. python opencv:使用鼠标当做画笔

    鼠标事件 import cv2 events=[i for i in dir(cv2) if 'EVENT'in i] print events 双击画圆圈 import cv2 import num ...

  4. Spring Boot 定时任务 Quartz 使用教程

    Quartz是一个完全由java编写的开源作业调度框架,他使用非常简单.本章主要讲解 Quartz在Spring Boot 中的使用. 快速集成 Quartz 介绍 Quartz 几个主要技术点 Qu ...

  5. idea2018.3.6,离线使用maven的方法

    (1)想办法拷贝联网电脑上已经下载好的仓库文件夹mavenRepository到离线环境的电脑上: (2)idea中按照如下图中配置: (3)打开 User settings file中设置的sett ...

  6. Update(stage3):第1节 redis组件:10、redis集群

    10.redis集群 1.redis集群的介绍 Redis 集群是一个提供在多个Redis节点之间共享数据的程序集. Redis 集群并不支持同时处理多个键的 Redis 命令,因为这需要在多个节点间 ...

  7. stm32 串口发送字符串丢失第一个字节

    使用stm32f103调试串口通讯时,上电后发送的字符串的第一个字节丢失. 发送数据GpuSend("SPG(2);"); 接收端收到的数据为:PG(2);,第一个字符丢失. 出现 ...

  8. layui弹窗全屏显示

    var index =layer.open({ id: 'id', type: 2, area: ['100%', '100%'], fix: false, maxmin: true, shadeCl ...

  9. 自定义 directive pagination

    学习angular过程中,对directive 不是很了解,很有必要自己写一个,以便知道它的各方面的处理方式. directive 中 scope 与 controller 交互,有三种定义策略 &q ...

  10. oracle的concat、convert、listagg函数(字符串拼接和类型转换)

    ORACLE几种常用的方法(2) 1.concat常见的用法 : 格式:concat(String1,String2) 说明:concat函数用于将两个字符串连接起来,形成一个单一的字符串 实例: s ...