创建hbase表
create 'vehicle_temp', 'temperature'
预分区
create 'vehicle_temp', 'temperature', SPLITS => ['10', '20', '30', '40']
[root@bigdata16 ~]# hadoop fs -cat /monitor/18-01-25/gps.1516856411173 > temp.gps.1516856411173
mosquitto_pub -h 127.0.0.1 -p 1883 -t vxfszc/fixedColdChain -q 1 -m "hello mqtt 7"
[root@bigdata5 ~]# echo "scan 'vehicle_orbit',{COLUMNS=>['position'],LIMIT=>10,STARTROW=>'7_HAM09505_1513051250000'}" |hbase shell |uniq -w 25|awk '{print $1}' > rowkey.txt
echo "deleteall 'vehicle_orbit','6_HAM25467_1516925723372'"|hbase shell
echo "get 'vehicle_orbit','6_HAM25467_1516925723372'"|hbase shell
echo "6_HAM29819_1516926490986" |xargs -I {} echo "get 'vehicle_orbit','{}'"|hbase shell
获取iccid
cat ICCID* |sort |uniq -c -w 13 > iccid.txt
燃油车日志油耗
cat gps.log |grep 'id.:.HAM.\{5\}'|awk -F '[{]' '{for(i=3;i<=NF;i++) print $i }'|awk -F '[,]' '{print $7, $10, $12}'
线上目前有日志的车辆
cat gps.log |grep 'id.:.HAM.\{5\}'|awk -F '[{]' '{for(i=3;i<=NF;i++) print $i }'|awk -F '[,]' '{print $7}'|sort|uniq -c|wc -l
hbase 查询轨迹
scan 'vehicle_orbit',{COLUMNS=>['position'],LIMIT=>10,STARTROW=>'7_HAM09505_1513051250000'}
[root@node176 bin]# echo "scan 'vehicle_orbit',{COLUMNS=>['position'],LIMIT=>10,STARTROW=>'7_HAM09505_1513051250000'}" |hbase shell |grep column=position:odo|sort -rn -k1|uniq -w 10
前缀查询,很慢
hbase(main):003:0> scan 'vehicle_orbit',{COLUMNS=>['position'],LIMIT=>1000,FILTER=>org.apache.hadoop.hbase.filter.PrefixFilter.new(org.apache.hadoop.hbase.util.Bytes.toBytes('7_HAM')) }
[root@node176 bin]# echo "scan 'vehicle_orbit',{COLUMNS=>['position'],FILTER=>org.apache.hadoop.hbase.filter.PrefixFilter.new(org.apache.hadoop.hbase.util.Bytes.toBytes('7_HAM')) } " |hbase shell |grep column=position:odo > odo.txt
[root@node176 bin]# cat odo.txt |sort -rn -k1|uniq -w 10
[root@node176 bin]# echo "scan 'vehicle_orbit',{COLUMNS=>['position'],FILTER=>org.apache.hadoop.hbase.filter.PrefixFilter.new(org.apache.hadoop.hbase.util.Bytes.toBytes('7_HAM')) } " |hbase shell |grep column=position:odo|sort -rn -k1|uniq -w 10 > maxodo.txt
hbase(main):005:0> scan 'vehicle_orbit',{COLUMNS=>['position'],FILTER=>"(PrefixFilter('7_HAM')) AND ( TimestampsFilter(1512957600000,1512986400000) )" }
线上统计设备数量
[root@9e4cad8f8366 g7]# cat gps.log |awk -F '[{]' '{for(i=3;i<=NF;i++) print $i }'|awk -F '[,]' '{print $6}'|sort|uniq -c|wc -l
查找tbox 总油耗小于10000ml的设备
[loguser@1-13JUMA monitor-server]$ tail -fn 555 report.log |grep 'id.:.H.\{12\}' |awk -F '[{]' '{for(i=3;i<=NF;i++) print $i }'|awk -F '[,]' '{print $11, $5, $8, $10}'|awk -F '[:]' '{if($NF<10000) print $0}'
查找tbox 总油耗=0ml的设备 结果分组
[loguser@1-13JUMA monitor-server]$ cat report.log |grep 'id.:.H.\{12\}' |awk -F '[{]' '{for(i=3;i<=NF;i++) print $i }'|awk -F '[,]' '{print $11, $5, $8, $10}'|awk -F '[:]' '{if($NF==0) print $0}'|awk '{a[$1" "$2" "$3" "$4]+=$NF}END{for(i in a)print i,a[i] | "sort"}'
按设备号分组统计个数
[loguser@1-13JUMA monitor-server]$ cat report.log |grep 'id.:.H.\{12\}' |awk -F '[{]' '{for(i=3;i<=NF;i++) print $i }'|awk -F '[,]' '{print $5, $8, $10}'|awk -F '[:]' '{if($NF<1000) print $0}'|awk '{a[$1]+=1}END{for(i in a)print i,a[i] | "sort"}'
[loguser@1-13JUMA monitor-server]$ cat report.log |grep 'id.:.H.\{12\}' |awk -F '[{]' '{for(i=3;i<=NF;i++) print $i }'|awk -F '[,]' '{print $5, $8, $10}'|awk -F '[:]' '{if($NF<10) print $2}'|awk -F'[ ]' '{print $1}'|sort|uniq -c
线上查看油耗
[root@iZwz99s9aw5u2b8ifo644oZ tbox-server]# cat export.log |grep 'id.:.H.\{12\}'|awk -F '[{]' '{for(i=3;i<=NF;i++) print $i }'|awk -F '[,]' '{print $5, $8, $10}'|awk -F '[: ]' '{if($NF<200) print $2,$NF}'|sort|uniq -c
306 "H101170440211" 11.0
969 "H101170440212" 11.0
408 "H101170440224" 10.0