
hbase
文章平均质量分 92
zxfBdd
这个作者很懒,什么都没留下…
展开
-
05. HBase WAL解析
什么是预写日志WAL(Write-Ahead-Log)?HBase的Write Ahead Log (WAL)提供了一种高并发、持久化的日志保存与回放机制。每一个业务数据的写入操作(PUT / DELETE)执行前,都会记账在WAL中。image.pngWAL最重要的作用是灾难恢复。和MySQL 的BIN log类似,它记录所有的数据改动。一旦服务器崩溃,通过重放log,我们可以恢复崩溃之前的数据。这也意味如果写入WAL失败,整个操作将认为失败。我们先看看HBase是如何做到的。首先...转载 2021-02-16 13:26:05 · 666 阅读 · 1 评论 -
HBase统计表行数(RowCount)的四种方法
背景:对于其他数据存储系统来说,统计表的行数是再基本不过的操作了,一般实现都非常简单;但对于HBase这种key-value存储结构的列式数据库,统计 RowCount 的方法却有好几种不同的花样,并且执行效率差别巨大!下面来研究下吧~测试集群:HBase1.2.0 - CDH5.13.0 四台服务器注:以下4种方法效率依次提高一、hbase-shell的count命令这是最简单直接的操作,但是执行效率非常低,适用于百万级以下的小表RowCount统计!hbase> coun..转载 2020-07-10 15:22:37 · 2215 阅读 · 0 评论 -
HBASE的备份策略(数据迁移)
1.利用hbase本身提供的接口执行导出表操作导出操作:./hbase org.apache.hadoop.hbase.mapreduce.Driver export表名"hdfs://192.168.x.x:9000/111" 本地路径或者hdfs的路径导入操作:./hbase org.apache.hadoop.hbase.mapreduce.Driver import表名(已经...转载 2020-05-08 15:51:02 · 496 阅读 · 0 评论 -
HBase跨集群数据迁移的一种方法
从源hbase集群中复制出HBase数据库表到本地目录hadoop fs -get scp到目的集群 hadoop fs -put 到目的集群HDFS亦可使用distcp将集群复制至目标集群具体办法参考:DistCp修复.META.表和重新分配数据到各RegionServer在.META.表没修复时执行重新分配,会报错#hbase hbck -fixAssignme...转载 2020-05-08 15:43:06 · 410 阅读 · 0 评论 -
hadoop distcp hftp hdfs跨集群拷贝常见问题归总
在工作中遇到部门间数据合作,需跨不同版本集群拷贝数据,从hadoop 2.6.0-cdh5.7.0 拷贝数据到hadoop 2.7.1, 记录所碰到的问题及解决方案。distcp基础用法比如拷贝A集群(src集群)的A1目录到B集群(dest集群)的B1目录,1.同版本集群拷贝(hdfs协议):在dest集群(目标集群)运行命令:hadoop distcp hdfs:...转载 2020-05-08 15:36:38 · 1358 阅读 · 0 评论 -
关于hbase的数据迁移
场景:一套自己编译的Hbase集群 A一套自己通过cloudera平台搭建的Hbase集群 B注意:( 我的两套集群是同一个网段的)方式1:通过快照方式进行数据迁移(不需要提前建表)1):首先现在老集群A上进行快照制作(hbase命令行)hbase> snapshot '要快照的表名tableA' , '快照名称snapA'查看快照:list_snapsh...转载 2020-05-08 11:49:28 · 216 阅读 · 0 评论 -
HBase 四种数据迁移方案
一、前言HBase数据迁移是很常见的操作,目前业界主要的迁移方式主要分为以下几类:图1.HBase数据迁移方案从上面图中可看出,目前的方案主要有四类,Hadoop层有一类,HBase层有三类。下面分别介绍一下。二、Hadoop层数据迁移2.1 方案介绍Hadoop层的数据迁移主要用到DistCp(Distributed Copy)...转载 2020-05-07 18:23:22 · 945 阅读 · 0 评论 -
Hbase错误解析: Call queue is full on /0.0.0.0:60020, too many items queued ?
完整错误日志如下:2020-02-15 09:21:19,659 INFO org.apache.hadoop.hbase.client.AsyncProcess - , tableName=bd_push_device2020-02-15 09:21:39,795 INFO org.apache.hadoop.hbase.client.AsyncPr...原创 2020-04-28 11:17:18 · 6342 阅读 · 0 评论 -
hbase 基本的JavaApi 数据操作及数据过滤(filter)
本文主要是hbase的表操作、数据操作、数据查询过滤等,如果对JDBC或ADO有了解,容易理解HBASE API。hbase版本是2.0。1、为了方便先贴helper的部分代码(文末git上有完整的测试代码),主要是为了复用Connection。public class HBaseHelper implements Closeable { private Config...转载 2020-01-03 17:16:23 · 1069 阅读 · 0 评论 -
hbase shell及 java api的过滤器操作
一. hbase shell的filter操作1. 不设置过滤器,全表扫描 scan '表名' //查询出某个表格内全部的数据记录 举例 : scan 'upos_city_qh_yushu:tb_detail_userloc_outdoor_22180822' 查询结果如下(截取了其中一个行键的内容) :因为hbase的shell脚本操作十分不方便,并且不支持查...转载 2020-01-03 17:14:32 · 298 阅读 · 0 评论 -
HBase shell 中的十六进制数值表示
在使用Hbase shell 进行get 或scan操作时,时不时会看到一些数值被转成了16进制, 就像下面那样value=W\x5C5\x80那么这个值具体等于多少? 查阅资料后发现算法如下W -> W的ASCII码16进制 为 0x57\x5C -> 就是16进制不变 0x5C5 -> 5的ASCII码16进制 为 0x35\x80 ->...转载 2019-12-24 18:35:11 · 1739 阅读 · 0 评论 -
HBASE中文转换
/**2 * HBASE中文转换3 */4 @Test5 public void testHbaseStr() throws Exception {6 // Hbase UTF8编码7 String content = “\xE7\x83\xA6”;8 char[] chars = content.toCharArray();9 StringBuffer sb = new Stri...转载 2019-12-24 18:04:07 · 748 阅读 · 0 评论