自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(46)
  • 收藏
  • 关注

原创 hbase过滤器应用-and跟or的简单实现

1.运算符< LESS<= LESS_OR_EQUAL= EQUAL!= NOT_EQUAL>= GREATER_OR_EQUAL> GREATER排除所有 NO_OP2.过滤器组FilterList可利用过滤器组,实现sql中,and跟or的模式//MUST_PASS_ALL必须通过所有过滤器FilterList filterList ...

2019-12-19 17:51:47 958

原创 消息队列MQ选型对比

特性 ActiveMQ RabbitMQ RocketMQ Kafka 单机吞吐量 万级,吞吐量比RocketMQ和Kafka要低了一个数量级 万级,吞吐量比RocketMQ和Kafka要低了一个数量级 10万级,RocketMQ也是可以支撑高吞吐的一种MQ 10万级别,这是kafka最大的优点,就是吞吐...

2020-08-19 11:07:28 1352

原创 策略枚举

/** * Created by * Describe 策略枚举(枚举类里套一层枚举),工作日1倍工资,节假日2倍工资 * 枚举类里的枚举类型其实就是该类的一个实例化 */public enum SalaryPay { //星期的枚举 MONDAY(PayType.WORK), TUESDAY(PayType.WORK), WEDNESDAY(PayT...

2020-03-19 15:48:41 289

原创 elasticsearch-updateRequest的应用

#step1:插入数据,全部更新之前的curl -X PUT 'localhost:9200/test/type1/1' -H 'Content-Type: application/json' -d '{ "name":"zhangsan", "age":10, "sex":"女", "phone":"13456789", "adress":""}'#...

2019-12-17 09:46:46 13598 1

原创 scrapy爬取某网站景区评论爬虫

step1.研究网页结构,每个景点有一个景区的超“链接”https://piao.ctrip.com/ticket/dest/t2286.htmlstep2.链接到景区后,评论,在scrapy shell中不显示。推测应该是ajax等的发起的请求。找到的地址是:https://sec-m.ctrip.com/restapi/soa2/12530/json/viewCommentList...

2019-11-04 10:17:17 1220 1

原创 flume-hive-sink偶发kryo缺失异常(cdh)

flume写入hive开始正常,后续有时候报jar包缺失,有时候又正常,按提示导入相关jar包后没再出现异常信息:(Caused by: java.lang.ClassNotFoundException: com.esotericsoftware.kryo.Serializer)导入相应的jar包后会报其他异常,导入3个包后正常: kryo-2.22.jar objen...

2019-11-01 09:55:02 285

原创 自定义一个flume监控回收source

自定义回收metrics的source,及增加一个心跳heartbeat收集#source主要配置#自定义的类名a1.sources.HeartBeat.type = org.apache.flume.source.HeartBeatGeneratorSource#心跳采集间隔a1.sources.HeartBeat.intervalMs = 60000#ture采集监控数据,fal...

2019-10-29 17:15:52 195

原创 flume报错信息收集

1.当http sink的端口,有异常的时候,sink不成功,会报transaction的提交错误,如下:2019-02-27 16:13:24,313 (lifecycleSupervisor-1-0) [INFO - org.apache.flume.instrumentation.MonitoredCounterGroup.start(MonitoredCounterGroup.java...

2019-07-31 17:13:06 1601 1

原创 flume-ng-sql-source读取数据库延迟8小时以上报错

用https://github.com/keedio/flume-ng-sql-source这个项目读取数据库的时候run.query.delay设置的时间过长,导致java.sql.SQLRecoverableException报错,MySql默认一个connection(连接)空闲超过8小时自动断开,而程序认为这个连接还是可用的,这个时候用这个过时connection去连接MySql时就会...

2019-07-31 16:53:36 926

原创 flume http source windows 中文乱码

flume HTTPSource默认的是utf-8的编码,flume服务用在linux机器上都是没问题的,但当把flume服务部署在windows机器上的时候,会出现乱码问题。从源码检查乱码出现在那里:1.在刚接收到请求的时候,打印requestBody里的内容是正常的,数据正常。2.数据存到event里之后,打印event里的内容,出现乱码。源码里有个JSONHandler的类处理...

2019-03-11 11:04:26 1029

原创 java 用map实现聚合计算

问题:用java读取文件到内存实现简单的聚合计算,如下图,将如下文件先整理成{1={21,33},2={21,32}},这种形式然后就可以遍历map聚合了    public static void main(String[] args) throws IOException {         String filename="/Users/data/test.json";    ...

2019-02-03 12:02:25 3542

原创 redis连接池

package test;import redis.clients.jedis.Jedis;import redis.clients.jedis.JedisPool;import redis.clients.jedis.JedisPoolConfig;public class RedisUtil { public static String ADDR = "192.0.0...

2019-02-03 11:07:10 125

原创 redis的持久化方式

redis的持久化方式集群状态查询:info replicationRDBredis开启的时候自动读bin下边的dump.rdb文件当flashsll,或着shutdown的时候dump.rdb文件也会为空在保存,所以当做这两个操作之前要备份dump.rdb文件,当要恢复数据的时候吧,备份的数据替换回来,再重新启动。redis的配置文件可以设置自动更新磁盘数据dump.rdb的时...

2019-02-03 11:03:49 128

原创 hbase基础

进入hbase shellbin/hbase shellTableColumnfamilyColumn01,column02每条数据有唯一的标识符Rowkey 主键rowkey+columnfamily+column1+timestamp:value=&gt;cell插入一条数据put 'user','100001','info:name','zhangs...

2019-02-03 10:59:31 193

原创 kafka常用命令

查询集群描述bin/kafka-topics.sh --describe --zookeeper 消费者列表查询bin/kafka-topics.sh --zookeeper 127.0.0.1:2181 --list 新消费者列表查询(支持0.9版本+)bin/kafka-consumer-groups.sh --new-consumer --bootstrap-server...

2019-02-03 10:52:05 183

原创 kafka基础

topic:消息根据topic进行分类producer:消息发送者consumer:消息接收者broker:每个server是一个brokerkafka 一个topic分给多个broker,so,一个topic分给多个partition,只能保证一个partition里的消息有序,不能保证整体的顺序。partiton中的每条数据都会被分配一个有序的id(offset)kafka...

2019-02-03 10:47:29 152

原创 http sink自定义

 问题:httpsink到终端接口依然用flume 的httpsource收集数据发现拿不到数据。发现源码的httpsink之后只保留了body的value其他信息都没了这里自定义一下,也可将header封装回去。package test;import com.alibaba.fastjson.JSONArray;import com.alibaba.fastjson.JSON...

2019-02-03 10:21:29 921

原创 gbase远程导出数据“rmt”

背景:数据存储节点,最好只做入库数据的存储,保证集群空间的均衡。而且集群的计算压力很大,一般数据直接导出到加载的etl服务器再做其它处理。1.准备条件在etl服务器安装gbase客户端2.远程登陆客户端/data/gcluster/server/bin/gbase -u用户名 -p密码 -h192.168.0.03.rmt导出语句rmt:select * from  test.temp_test ...

2018-07-14 15:14:32 4034 2

原创 gbase入库时过滤不需要的字段

背景:接入一个文件有10列,但是有用的可能就4列,多的字段入库影响速度,又占用空间,gbase支持入库时过滤,如下。1.有一个表有2列。phone,imsi2.文件有4列,“|”分割3.执行入库命令load data infile 'ftp://noas:[email protected]。1.1/data/data/temp/test.txt' into table test.jiangwen_tes...

2018-07-13 15:08:39 1311

原创 linu下python3安装

部署步骤参考:https://www.cnblogs.com/kimyeee/p/7250560.html问题1、wget https://www.python.org/ftp/python/3.6.1/Python-3.6.1.tgz执行不通,域名无法解析:vim /etc/hosts在最后添加151.101.72.223 www.python.org执行:wget https://151.10...

2018-07-09 22:51:50 1116 2

原创 gbase里的分布表与复制表

背景:数据库使用过程中,一个合适类型的表,会提高sql执行的效率,也可以合理利用服务器空间。一.分布表分布表可以使数据按指定的策略分布存储在不同的主机上,从而实现分布式数据存储和分布式计算,解决大数据存储容量扩展和计算性能扩展的问题。分布策略:采用hash分布、random分布策略存储数据默认创建的表是随机分布表,每个节点上只保留部分表数据。随机分布表如下:CREATE TABLE table1(...

2018-07-09 22:01:24 9569 2

原创 卸载gcc并重新安装gcc

背景:gcc -v检查版本,发现gcc不可用,yum安装gcc是显示已存在1.检查已安装的gcc版本   rpm  -q gcc2.卸载该版本 rpm -e gcc-4.8.5-28.el7.x86_643.安装的时候依然报错,原因是yum要下载gcc依赖的包,这些包也存在,所以要全部卸载根据报错信息,全部卸载安装成功,发现gcc依赖这么多包...

2018-07-05 22:32:46 89325 1

原创 linux挂载本地yum源

背景:Yum(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及CentOS中的Shell前端软件包管理器。基于RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装。 使用yum安装gcc时,报错,更改配置文件依然不能解决,只能卸载yum源,重新挂载...

2018-07-05 22:16:05 20051 2

原创 flume传数据到hdfs

背景:flume可以实时的收集文件并传到hdfs上,它是一个高可靠的,分布式的海量日志采集、聚合和传输的系统。它可实现流式处理。自动故障转移。1.首先安装好flume,因为是flume用java写的,所以要配置下jdk2.运行时只要写好配置文件,agent.conf,然后用命令运行就行了flume有三个组件source、channel、sink在agent.conf里需要配置好这3个组件。他们的作...

2018-07-02 22:46:44 5745

原创 sqoop从hive、hdfs导入导出数据(mysql)

背景:sqoop主要用于在Hadoop(Hive)与传统的数据库(mysql、postgresql...)间进行数据的传递,可以将一个关系型数据库(例如 : MySQL ,Oracle ,Postgres等)中的数据导进到Hadoop的HDFS中,也可以将HDFS的数据导进到关系型数据库中。这里主要以mysql为例介绍一下,导入导出的使用方法。详情参考官方文档:http://sqoop.apach...

2018-06-30 17:05:07 5056

原创 sysstat安装升级

背景:所有主机要求纳入it监控中,监控软件sysstat能实现主机基础性能的采集。sar -V检查原版本为9.0.4,不能满足要求升级为11.5.5 sysstat安装安装前需确认系统是否已安装gcc,运行如下命令,redhat5以上版本使用自带的gcc即可: 1.删除原有老版本sysstat[root@node-x]# rpm -e --nodeps sysstat2.解压sysstat源码[r...

2018-06-30 09:51:31 3025

原创 shell批量杀进程(xargs)

背景:偶尔会遇到一些相同进程卡死的情况,监控不当的时候会影响应用,写个判断语句,定时监控,进程多的时候会自动清除#!/bin/bash#假设进程中同一包含akel关键字str=`ps -ef|grep akel | wc -l`if (( $str &gt;20 ));then#判断该进程卡死的数量,用cut截取进程号ps -ef | grep akel | grep -v grep | cut ...

2018-06-21 09:38:23 3777

原创 linux中的查找文件或目录(whereis,locate,find)

背景:linux下有几种查找文件的方式,whereis,local,find各有优劣,介绍一下各自的不同,及使用时机

2018-06-10 21:16:49 1198

原创 ssh限制root直接登陆

背景:工作中直接操作最高权限的root用户是很危险的,也尽量不要配置root的ssh连接,以免除管理员外的人意外操作,我们可以设置禁止root的ssh直接登陆来避免了这些问题,用root用户的时候可以通过普通用户跳转,注意一定要有其他普通权限的用户存在的情况下,否则服务器就登陆不上了。修改一下如下配置就好了:1.vi /etc/ssh/sshd_config或者vi /etc/ssh/ssh_co...

2018-06-09 19:46:11 4534

原创 用shell计算某个文件的生成时间

背景:例如,你可能会通过某个标识文件的生成时间,来监控某个进程或某个应用,介绍一个,计算某文件生成时间的方法。脚本内容如下:#!/bin/bashdir=/opt/datacd $dir#显示文件的全时间ls --full-time#只取日期date="`ls --full-time 1.txt | cut -d ' ' -f 6`"#只取时间time="`ls --full-time 1.txt...

2018-06-09 16:08:31 5918 1

原创 一台服务器同时配置内外网地址

背景:本台服务器有2个网卡eth0,eth1,其中eth0配置外网,eht1配置内网,要同时内外网都能访问该服务器。依次做以下配置1.外网网卡不配置网关,如下图网关注释了vi /etc/sysconfig/network-scripts/ifcfg-eth02.内网网卡配置网关vi /etc/sysconfig/network-scripts/ifcfg-eth13.添加默认路由,配置“外网”的网...

2018-06-07 19:03:12 11522

原创 shell里的判断结构及注意事项

背景:早些时候shell里的判断结构写起来总是感觉不顺手,下边是一些注意事项,及用法介绍判断的两种方式"test"、"[]"如下test -f "$filename" [ -f "$filename" ]使用中括号必须要特别注意,因为中括号用在很多地方,包括通配符与正则等等,所以如果要在 bash 的语法当中使用中括号作为 shell 的判断式时,必须要注意中括号的两端需要有空格符来分隔, 如下:...

2018-06-02 18:12:57 654

原创 shell里for循环的几种写法

背景:for循环是常用的语法结构,shell里的for循环与其它语言有些差别,这里提供3个模板,以1~50的累加为例脚本内容如下:#!/bin/bash#test.shell#1.列表for循环{}中可以是一个listsum=0for i in {1..50}do                            #循环开始  let "sum+=i"done                 ...

2018-06-02 16:27:37 3394

原创 kettle连接gbase数据库

背景:kettle作为一个高效的数据抽取工具,工作中经常用来抽取数据,自带一些mysql、oracle的连接就不说了,作为一个纯java的软件,连接gbase,依赖一个gbase的连接驱动就好了。1.安装好kettle软件2.如下图,将准备好的gbase驱动jar放入如下目录。D:\kettle_20150824\data-integration\libext\JDBC3.kettle_20150...

2018-05-24 15:17:06 9762 6

原创 gbase集群优化-建表时指定压缩模式

背景:gbase使用过程中可合理的指定不同的压缩模式,有的表需要高存储,但是不需要高操作,有的表要保证查询性能,可以通过指定压缩比的做法,达到集群的高可用性。列级 int型压缩方式选项:0,1,5列级 char型压缩方式选项:0,3,5表级组合压缩方式为:(0,0)、(1,3)、(5,5),第一位为int型压缩方式,第2列为char型压缩方式压缩方式优先级:列压缩&gt; 表压缩 &gt; 全局压...

2018-05-17 12:50:26 1938

原创 gbase集群加载入库与导出文件

背景:常用加载与导出语句,与其他数据库基本无差,mark下脚本里的sql执行`cat /opt/script/gbase/gbase.txt` -Dstg_noas -vvv -f&lt;/opt/script/temp/test.sql用户密码通常写在gbase.txt中加载:load data infile 'ftp://user:pwd@ip/dir/*.gz' into  table ta...

2018-05-17 12:32:29 6690 1

原创 hadoop集群配置免密钥登陆

背景:搭建集群时,首先要配置各节点间的免密钥登陆,以保证各节点之间的数据传输。介绍一个比较快的配置方法。注意:搭建集群时要保证各机器在相同的用户下,如都在“root”用户或都在“test”用户下。那么免密钥也要都在相同的用户下,配置在不同的用户下是不起作用的。接下来以10台服务器node1~node10,都在root用户下为例1.在node1,root用户目录下输入命令:    ssh-keyge...

2018-05-05 17:02:17 2814

原创 gbase数据库更改字段类型

背景:gbase数据库不支持直接修改列的数据类型如( ALTER TABLE t MODIFY b varchar(10) 这种语句),这里提供一个方法假设有表“t”有两个字段“a”“b”数据类型都为varchar(10)现在要将“b”的数据类型改为int(10)1.在“b”后边添加一个新字段“c”数据类型int(10)alter table t add column  c int(10) aft...

2018-04-27 19:03:44 14607 3

原创 Gbase入库异常:sed: -e expression #1, char 29: unknown option to `s'

异常:用shell执行Gbase入库的脚本,一直报错,逐一排查问题。异常一:如标题        sed: -e expression #1, char 103: unknown option to `s'  检查发现入库的脚本中有一个传入服务器密码的变量替换未成功,脚本中中有一句变量(变量为服务器密码)替换的命令为sed -i "s#pwd#$pwd#g" dir/test.sql发现密码中本身...

2018-04-15 21:52:30 1113

原创 linux下切割大文件

背景:工作传输数据的时候,经常会遇到限制文件大小的情况,这是就要将大文件切割成几个小文件,用过for循环+sed的方法,还有split的方法,刚发现split本身提供了不同场景的切割方法。整理一下,非常好用。首先split --help linux会显示命令的帮助,提供了“a”“b”“C”“d”“l”五个选项注意:C是大写,小写报错我在这里准备了一个6K多,100行的info.txt文件做演示文件...

2018-04-13 19:00:50 25996 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除