seq 0 7 | awk '{printf("\\x%02x\\x%02x\n", $1/256, $1%256);}' | sort -R |head -3

create 'msgbox', '0', {SPLITS_FILE => 'splits.txt'}
create 't', {NAME => 'fww', VERSIONS => 1, COMPRESSION => 'SNAPPY', SPLITS => ['10','20','30']}

1:mkSplit.sh
#!/bin/sh
let step=65535/500
let i=1
let ret=0
while(( $i<=500 ))
do
        let ret=ret+step
        echo $ret
        let i=i+1
done

2: showSplit.sh

#!/bin/sh
sh mkSplit.sh | awk '{printf("\\x%02x\\x%02x\n", $1/256, $1%256);}'

3:使用

sh showSplit.sh >> split_500.txt

create 'rela_user_acct_relation', {MAX_FILESIZE => '10737418240',SPLITS_FILE => '/home/hdp/preSplit/split_500.txt'}, {NAME => 'd',  BLOOMFILTER => 'ROW',  VERSIONS => '1', COMPRESSION => 'LZO', MIN_VERSIONS => '0',  BLOCKSIZE => '65536', IN_MEMORY => 'false', BLOCKCACHE => 'true'}

分区算法的接口是SplitAlgorithm,

实现类是HexStringSplit和UniformSplit。

创建表使用预分区的时候可以参照这两个类的split(int numRegions)方法。可以设定first key 和last key。

bin/hbase org.apache.hadoop.hbase.util.RegionSplitter -c 60 -f f:d myTable HexStringSplit

其中f和d是family

HBase预分区的更多相关文章

  1. Hbase预分区种子生成

    提前生成Hbase预分区种子,在创建Hbase表时也进行相应的预分区,同时设置预分区的个数,预分区的范围对应Hbase监控页面的Region Server的start key与End key,从而使数 ...

  2. 大数据量场景下storm自定义分组与Hbase预分区完美结合大幅度节省内存空间

    前言:在系统中向hbase中插入数据时,常常通过设置region的预分区来防止大数据量插入的热点问题,提高数据插入的效率,同时可以减少当数据猛增时由于Region split带来的资源消耗.大量的预分 ...

  3. hbase 预分区与自动分区

    我们知道,HBASE在创建表的时候,会自动为表分配一个Region,当一个Region过大达到默认的阈值时(默认10GB大小),HBase中该Region将会进行split,分裂为2个Region,以 ...

  4. storm自定义分组与Hbase预分区结合节省内存消耗

    Hbas预分区 在系统中向hbase中插入数据时,常常通过设置region的预分区来防止大数据量插入的热点问题,提高数据插入的效率,同时可以减少当数据猛增时由于Region split带来的资源消耗. ...

  5. hbase 预分区

    转载 http://www.cnblogs.com/bdifn/p/3801737.html

  6. HBase 热点问题——rowkey散列和预分区设计

    热点发生在大量的client直接访问集群的一个或极少数个节点(访问可能是读,写或者其他操作).大量访问会使热点region所在的单个机器超出自身承受能力,引起性能下降甚至region不可用,这也会影响 ...

  7. HBase表预分区与压缩

    1.建立HBase预分区表.sql语句如下: create 'buyer_calllogs_info_ts', 'record', {SPLITS_FILE => 'hbase_calllogs ...

  8. 关于Hbase的预分区,解决热点问题

    Hbase默认建表是只有一个分区的,开始的时候所有的数据都会查询这个分区,当这个分区达到一定大小的时候,就会进行做split操作: 因此为了确保regionserver的稳定和高效,应该尽量避免reg ...

  9. HBase Rowkey的散列与预分区设计

    转自:http://www.cnblogs.com/bdifn/p/3801737.html 问题导读:1.如何防止热点?2.如何预分区?扩展:为什么会产生热点存储? HBase中,表会被划分为1.. ...

随机推荐

  1. Android ORMapping库

    自己用Java的注解实现了Android SQLite的ORM库,之前写过XML的,不过感觉不是很稳定,效率.鲁棒性各方面都不太好,今天花了一下午的时间,补全了所有的注解.注释,生成了javadoc, ...

  2. pickle序列化

    通过pickle来序列化: # -*- coding: utf-8 -*- import pickle #-------------------序列化--------------------- zoo ...

  3. delphi locate多字段查询

    简单格式: IF MSQ_NewBillQuantity.Locate('FStockID;FMarchID', VarArrayOf([FStockID, FMarchID]), []) = Fal ...

  4. Hibernate5.2之反向工程

                                                          Hibernate5.2之反向工程 一.描述 可能很多人在使用Hibernate进行项目开发 ...

  5. 使用git新建分支以及管理分支

    在进行分支相关的操作前, 我们需要保持主分支干净, 所谓的干净就是没有任何改变(所有更改都已经commit 并 push),那么你可以在任何时候从你的主分支创建一个新分支. 为了方便代码管理,我们应该 ...

  6. Vmware workstation 11 安装 RedHat 9 时 第二个iso文件 出现光盘无法被挂载

    通过虚拟机装linux系统,RedHat 9有3个iso文件,安装第一个iso文件时很顺利,安装完成第一个iso文件后,提示请插入光盘 需要继续安装第二个和第三个iso文件,点击菜单栏——虚拟机——设 ...

  7. [C#对Oracle操作]C#操作调用Orcale存储过程有参数

    /// <summary> /// 获取ERP固定资产计提数据 /// </summary> /// <param name="strCompanyCode&q ...

  8. Linux下搭建SVN服务器及自动更新项目文件到web目录(www)的方法

    首先搭建SVN服务器 1,安装SVN服务端 直接用apt-get或yum安装subversion即可(当然也可以自己去官方下载安装) sudo apt-get install subversion   ...

  9. php SimpleXML 例子

    $txt = GetRemoteText($url); if(strlen($txt) > 0) { $xml = simplexml_load_string($txt); //获取xml if ...

  10. Jmeter组件8. BeanShell Sampler

    BeanShell是一个小巧免费的JAVA源码解释器,支持对象式的脚本语言特性,亦可嵌入到JAVA源代码中,能动态执行JAVA源代码并为其扩展了脚本语言的一些特性,像JavaScript和perl那样 ...