HBASE操作:(一般先合并region然后再压缩)

一 、Region合并: merge_region   'regionname1','regionname2' ,'true'  --true代表强制合并,一般要加上

一般要是将小文件根据配置的最大上限进行合并,合并后最好清理一下hdfs

二、Region 压缩:

我们以test表为例:

我们先创建一张不含任何压缩格式的test表,并且向其导入10多G的数据
$ hadoop fs -du -h /hbase/data/default/    --查询region的文件大小
12.2 G /hbase/data/default/test

我们可以看到,在未压缩之前,test表的数据在hdfs上一共占用了12.2G的磁盘空间。
1. disable test表:

hbase> disable 'test'

修改压缩格式:

2. hbase> alter 'test', NAME => 'c', COMPRESSION => 'snappy'
需要注意的是,修改压缩格式时,必须一个列族一个列族的改。

3. enable test表:

hbase> enable 'test'

enable之后,还需要做一次大合并才能让压缩格式生效:

4.  hbase> major_compact 'test'
需要注意的是,千万不要在表繁忙期间执行大合并操作。
describe test表看一下有没有生效

还是很可观的大概可以减少原来两倍左右的空间占用

      

hbase优化之region合并和压缩的更多相关文章

  1. HBase Region合并分析

    1.概述 HBase中表的基本单位是Region,日常在调用HBase API操作一个表时,交互的数据也会以Region的形式进行呈现.一个表可以有若干个Region,今天笔者就来和大家分享一下Reg ...

  2. Spark读Hbase优化 --手动划分region提高并行数

    一. Hbase的region 我们先简单介绍下Hbase的架构和Hbase的region: 从物理集群的角度看,Hbase集群中,由一个Hmaster管理多个HRegionServer,其中每个HR ...

  3. 前端性能优化成神之路—资源合并与压缩减少HTTP请求

    资源合并与压缩减少HTTP请求的概要 资源合并与压缩减少HTTP请求主要的两个优化点是减少HTTP请求的数量和减少请求资源的大小 http协议是无状态的应用层协议,意味着每次http请求都需要建立通信 ...

  4. 优化RequireJS项目(合并与压缩)

    关于RequireJS已经有很多文章介绍过了.这个工具可以将你的JavaScript代码轻易的分割成苦 干个模块(module)并且保持你的代码模块化与易维护性.这样,你将获得一些具有互相依赖关系的J ...

  5. 优化 RequireJS 项目(合并与压缩) 【已翻译100%】

    英文原文:Optimize (Concatenate and Minify) RequireJS Projects 标签: RequireJS Node.js 参与翻译 (1人) : 裴宝亮 本文将演 ...

  6. Hbase Region合并

    业务场景: Kafka+SparkStreaming+Hbase由于数据大量的迁移,再加上业务的改动,新增了很多表,导致rerigon总数接近4万(36个节点) 组件版本: Kafka:2.1.1 S ...

  7. HBase优化相关

    1.HBase预分区 HBase在创建表时,默认会自动创建一个Region分区.在导入数据时,所有客户端都向这个Region写数据,直到这个Region足够大才进行切分.这样在大量数据并行写入时,容易 ...

  8. 大数据技术之_11_HBase学习_02_HBase API 操作 + HBase 与 Hive 集成 + HBase 优化

    第6章 HBase API 操作6.1 环境准备6.2 HBase API6.2.1 判断表是否存在6.2.2 抽取获取 Configuration.Connection.Admin 对象的方法以及关 ...

  9. Hbase­优化方案

    1.预分区设计 真正存储数据的是region要维护一个区间段的rowkey startRow~endRowkey ->手动设置预分区 create 'user_p','info','partit ...

随机推荐

  1. 关于eclipse 与OpenCV 配置频繁报错的问题总结Program "C:/SDK/android-ndk-xxx/ndk-build.cmd" is not found in PATH报错的解决!

    2018-01-3116:58:12 Program "C:/SDK/android-ndk-r8/ndk-build.cmd" is not found in PATH 今天这一 ...

  2. scrapy_开发环境

    scrapy开发所具备的环境 IDE         pycharm 数据库           mysql, redis 开发环境       python 3.5

  3. junit4X系列源码--Junit4 Runner以及test case执行顺序和源代码理解

    原文出处:http://www.cnblogs.com/caoyuanzhanlang/p/3534846.html.感谢作者的无私分享. 前一篇文章我们总体介绍了Junit4的用法以及一些简单的测试 ...

  4. linkin大话数据结构--Queue

    链表(Linked list)是一种常见的基础数据结构,是一种线性表,但是并不会按线性的顺序存储数据,而是在每一个节点里存到下一个节点的指针(Pointer).由于不必按顺序存储,所以插入和删除速度超 ...

  5. MySQL存储过程中declare和set定义变量的区别

    在存储过程中常看到declare定义的变量和@set定义的变量.简单的来说,declare定义的类似是局部变量,@set定义的类似全局变量. 1.declare定义的变量类似java类中的局部变量,仅 ...

  6. PHP7.1 报错 Warning Illegal string offset

    报错如下: Warning: Illegal string offset '阿根廷' in F:\wnmp\www\test.php on line 24 Warning: Illegal strin ...

  7. SSMS 2005 连接 SQL SERVER 2008问题

    用本机的 Microsoft SQL Server Management Studio 2005 客户端连接数据库服务器时报错:"This version of Microsoft SQL ...

  8. PHP如何读取json数据

    1的 <?php $json = '{"a":1,"b":2,"c":3,"d":4,"e": ...

  9. 【转】Linux 服务器安全配置

    第一部分:RedHat Linux篇1.概述 Linux服务器版本:RedHat Linux AS 2.1 对于开放式的操作系统---Linux,系统的安全设定包括系统服务最小化.限制远程存取.隐藏重 ...

  10. MySQL复制相关变量

    server_id是必须设置在master和每个slave上的唯一标识ID,其取值范围 是1~4294967295之间,且同一个复制组之内不能重复 server_uuid:server_uuid会在G ...