hbase region合并代码

hbase region合并代码,第1张

hbase region合并代码

备份环境上面hbase很不稳定,一起来过段时间就会挂

看了下因为region数太多了

总共大概有3万多的region,造成很多表都要下线掉,一上线就RIT.

这上面一个region大概5个T的大小,之前设计的时候估计没考虑到这个问题,而且官方推荐的region大小是10G,可是说是必踩的坑了.

如果让所有表可以都上线,那么就需要把region合并,但是手动执行太慢了,查了些资料写了个代码.

生成merge语句

#!/bin/bash
File_split=400
Master_ip=datanode-08
time=$(date "+%Y_%m_%d")
Region_Name=$1
Region_Name_File="$Region_Name"_"$time"
if [ ! -n "$1" ];then
  echo "Plase input your region!"
else
  echo "111"
  curl http://$Master_ip:60010/table.jsp?name=$Region_Name|grep  $Region_Name,|awk -F ',' '{print $NF}'|awk -F '.' '{print $2}' >region.txt
  echo "222"
  sed -r "s/(.*)/'1'/g" region.txt|sed ':a;N;s/n/,/;Ta' |sed -r "s/(.*)/merge_region 1/g" > $Region_Name_File
  sed -i '$d' $Region_Name_File
  rm -f region.txt
  split -l $File_split $Region_Name_File  spfile_$Region_Name_File.
  rm -f $Region_Name_File
fi

自动循环执行merge语句

#!/bin/bash

if [ $# -ne 1 ];then
  echo error.....
  exit 11
fi
IFS_old=$IFS
IFS=$'n'

file=


for i in `cat $file`;do
      echo  -e $i 
      echo "--------------------"
      echo -e $i |hbase shell
done
IFS=$IFS_old

region慢慢就被合并删除了了 

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5709626.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-17
下一篇 2022-12-17

发表评论

登录后才能评论

评论列表(0条)

保存