zoukankan      html  css  js  c++  java
  • Hbase 手动执行MajorCompation

    说明:

    Major Compaction 的作用:

    1.将一个Region下的所有StoreFile合并成一个StoreFile文件

    2.对于删除、过期、多余版本的数据进行清除

    由于MajorCompation期间对集群的磁盘IO占和带宽占用较大,所以线上系统一般会禁用此功能,在集群负载较低时手动执行

    操作:

    方式1:

    (Hbase shell)major_compact  'tablename'

    方式2:

    通过代码合并

    import org.apache.hadoop.conf.Configuration;
    import org.apache.hadoop.hbase.HBaseConfiguration;
    import org.apache.hadoop.hbase.TableName;
    import org.apache.hadoop.hbase.client.Admin;
    import org.apache.hadoop.hbase.client.Connection;
    import org.apache.hadoop.hbase.client.ConnectionFactory;
    import java.io.IOException;

    /**
    * majorCompact
    */
    public class MajorCompact {
    public static void main(String[] args) throws IOException {
    String[] tableList = {
    "tablename1",
    "tablename2"
    };

    Configuration conf = HBaseConfiguration.create();
    conf.set("hbase.zookeeper.quorum", "zk1,zk2,zk3");

    Connection connection = ConnectionFactory.createConnection(conf);
    Admin admin = connection.getAdmin();

    for (String table : tableList) {
    TableName table_name = TableName.valueOf(table);
    if (admin.tableExists(table_name)) {
    admin.majorCompact(table_name);
    System.out.println("[------]major compact " + table_name.getNameAsString());
    }
    }
    admin.close();
    connection.close();
    }
    }

  • 相关阅读:
    两种代理模式(JDK和Cglib)实例
    打印1到最大的n位数
    二叉树的构建以及先中后序遍历
    二维数组的查找
    斐波那契递归和非递归俩种算法实例
    淘宝tairKV分布式
    OSI七层模型详解
    Spring事务配置的五种方式
    linux中cat、more、less、tail、head命令的区别
    跨域的理解与实现
  • 原文地址:https://www.cnblogs.com/changsblogs/p/11890949.html
Copyright © 2011-2022 走看看