hadoop hive hbase shell小贴

纯笔记,勿看

 

集群迁移

 

hadoop distcp -D mapreduce.job.queuename=rtb  -D dfs.checksum.type=CRC32  hdfs://mycluster/hbase/data/default/table hdfs://ip161:8020/user/dirkzhang > report.log   2>&1 &

 

hadoop distcp hftp://nn.xxx.xx.com:50070/user/nlp/warehouse/t_m_user_key_action    /user/nlp/warehouse/dw1

 

hadoop hive 分区建立

alter table xxxx drop partition (logday='20150909',hour='12');

 

ALTER TABLE xxxx ADD IF NOT EXISTS PARTITION (day_id='20150908', hour_id='23') location 'hdfs://mycluster/data/stg/emaruser/20150908/23'; 

 

 

hadoop第三方jar包,多个

conf.set("tmpjars", "json-simple-1.1.1.jar,json-lib-2.4-jdk15.jar,ezmorph-1.0.6.jar");

 

hbase添加节点

1.修改环境变量,/etc/hosts文件,改变系统线程数,文件数
2.所有应用上加/etc/hosts文件
3.修改配置,修改hdfs-site.xml,改成本地数据磁盘
4.修改所有机子上slaves,和regionservers

 

 

删除zk日志的频率和保留几个文件

#clean freques
autopurge.purgeInterval=12
#clean size
autopurge.snapRetainCount=12

 

tachyon 启动 format

如果不想每次启动Tachyon都挂载一次RamFS,可以先使用命令 bin/tachyon-mount.sh Mount workers 或 bin/tachyon-mount.sh SudoMount workers 挂载好所有RamFS,然后使用 bin/tachyon-start.sh all NoMount 命令启动Tachyon。
		spark1.5对应版本tachyon0.7.1
		bin/tachyon format
		bin/tachyon-mount.sh SudoMount workers
		bin/tachyon-start.sh all NoMount
		bin/tachyon-stop.sh

 

 

linux jps显示不了进程

以下文件权限有误

/tmp/hsperfdata_userName

 

hadoop查看文件大小

hadoop fs -du -h

 

hive在建表的时候有时出现

Display all XXX possibilities? (y or n)

是因为tab键太多造成的

 

hbase创建表

create 'hotdog_adr_base', { NAME => 'cf', COMPRESSION => 'GZ'},{SPLITS => ['A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z',

'a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z']}  

 

shell判断是否有参数

if [ $# -lt 2 ] ; then

  echo "期待2个参数"

  exit 1

fi

echo $1

echo $2

 

mysql命令

mysql -N -hl-an7.wap.cn6.qunar.com -P3306 -umobstat -p'xH!dmobstatsa!oSX' -e "

  use mobiledcs_ad;

  load data local infile '${BASE_PATH}/xxx_${logdate}.tmp' into table datatable(id,name,count)

" || exit

 

linux统计行数(上海出现多少次)

cat test2.txt | grep '上海' | wc -l

hhh出现行数

grep -c 'hhh' test.txt

 

 linux处理文件列awk

awk '{print $6}' test.txt 

 awk求和awk '{total+=$6}END{print total}' test.txt 

awk分组求和(按照$1分组,$6求和)awk '{a[$1]+=$6}END{for(i in a)print(i,a[i])}' test.txt 

 

linux测试本地机子是否可以连接 ip port

nc -z -v 192.168.44.37 80

 

 shell换行

echo -e  '\n'

 

linux 查看域名ip

nslookup l-rtools1.ops.cn8

 

hbase 执行命令

sudo -u hadoop echo "scan 'hbase:meta',{LIMIT=>1}"| hbase shell &> dump.txt

 

 python ide

pycrust

 

linux 进程

ps -ef | grep report

 

 linux 杀死一批相同类型的进程(grep -v grep是除了grep进程,$2就是pid)

kill -9 $(ps -ef|grep -E 'report|runrp'|grep -v grep|awk '{print $2}')

 

ps -ef|grep rolling-restart.sh | grep -v "grep" | awk -F " " '{print $2}' | xargs kill -9

 

 

 hadoop 指定集群拿数据

 sudo -uxxxxxx hadoop fs -fs ip:8020 -ls

 

shell在线编译sed

 sed -i '3 s/user/dirk/' td.txt  修改第三行 将user改为dirk ( -i是在当前文档上修改 )

 

 sed -n '3p' td.txt  打印第三行

 

获取第三行,第三列内容,用/隔开(cut 和 awk都可以获取列)

sed -n '3p' td.txt | cut -d "/" -f3 

sed -n '3p' td.txt | awk -F "/" '{print$3}'

awk -F "/" '{if(NR==3) print $3}' td.txt

 

 hbase shell建立分区表

create 'tb_splits', {NAME => 'cf', VERSIONS=> 3},{SPLITS => ['a','b','c']}

 

hive shell dll

 alter table dirktest add columns(nc string); 增加列

 alter table dirktest replace columns(aa string,bb string,order_count bigint); 删除列 

 

linux shell

获取父Pid 为$PPID

写入文件

_pp=$PPID

echo $_pp >>  /test/dirk.txt

 

hive shell

  1. MSCK REPAIR TABLE table_name;  

该命令会把没添加进partition的数据,都增加对应的partition。同步源数据信息metadata。

 

 linux 查看文件夹大小

du -h --max-depth=1 home/data

 

hadoop添加classpath

HADOOP_CLASSPATH=/home/hadoop-cdh/app/hbase-0.98.1-cdh5.1.0/lib/* hadoop jar  /home/hadoop-cdh/imgDownload/imgHbase.jar com.emar.nbt.hbase.mr.ImgDownloadTuanMR testProduct

 

 

linux shell 查看socket数

socket上线

ulimit -n

 socket使用

cat /proc/net/sockstat

 

linux 线程启动时间:

ps axo pid,ppid,comm,pmem,lstart | grep 4740

 

 

linux shell赋值

#if HBASE_HOME not empty,use HBASE_HOME,else use later one

#HBASE_HOME="${HBASE_HOME:-/home/hadoop-cdh/app/hbase-0.98.1-cdh5.1.0}"

 

mysql shell

授权 把mysqldb库的查询和更新权限赋给hadoopuser,hadoopuser的密码是hadooppwd

grant select,update on mysqldb.* to hadoopuser@localhost identified by 'hadooppwd';

grant all on testdb.* to common_user@'%'

 

 

linux中远程连接(如SSH)出现someone could be eavesdropping on you right now的解决办法

今天用SSH连接我的远程主机,出现了以下错误:

IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!

Someone could be eavesdropping on you right now (man-in-the-middle attack)!

网上查了一下,用

rm -rf .ssh/known_hosts

删除主机列表就行了。

 

观察进行gc情况

 jstat -gc pid

 jstat -gcutil pid 1000

 

zk命令

sh bin/zkServer.sh start

sh bin/zkServer.sh status

sh bin/zkServer.sh stop

sh bin/zkServer.sh restart

 

sh bin/zkCli.sh -server hostxxx:2181

 

sh bin/zkServer.sh status

 

-------------------------------------

hbase balance

sh $HADOOP_HOME/bin/start-balancer.sh –t 10%

 

linux启动时间

date -d "$(awk -F. '{print $1}' /proc/uptime) second ago" +"%Y-%m-%d %H:%M:%S"

who -b

 

 dns文件

 /etc/resolv.conf
vim替换
:%s/aaa/bbb/g

 

shell if判断是否为空

para1=
if [ ! -n $para1 ]; then
  echo "IS NULL"
else
  echo "NOT NULL"
fi 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值