自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

@羲凡—只为更好的活着

Get busy living, Or get busy dying

原创 Flink 批处理——多文件写入hdfs(Java)

@羲凡——只为了更好的活着 Flink 批处理——多文件写入hdfs(Java) 0.本文解决哪种问题 假如你有5000个门店甚至更多,产品需要你将每个门店的数据都写成一个文件且以门店命名,这意味着你要写5000或更多的文件,如果你直接用flink批处理writeAsText算子 要么报错,要么特...

2020-02-22 21:25:24

阅读数 1

评论数 0

原创 踩坑——Flink报错 Cannot currently handle nodes with more than 64 outputs.

@羲凡——只为了更好的活着 踩坑——Flink报错 java.lang.NoSuchMethodError: org.apache.hadoop.hbase.client.HTable.getTableName()[B 一.问题背景 一开始公司用cm5安装的hadoop2.0集群(Hbase是1....

2020-01-22 14:10:58

阅读数 133

评论数 0

原创 Centos7 安装postgre9.6

@羲凡——只为了更好的活着 Centos7 安装postgre9.6 1.yum安装 yum -y install https://download.postgresql.org/pub/repos/yum/9.6/redhat/rhel-7.6-x86_64/pgdg-centos96-9.6-...

2020-01-20 17:31:51

阅读数 29

评论数 0

原创 Keepalived+Nginx 实现反向代理高可用(主从模式)

@羲凡——只为了更好的活着 Keepalived+Nginx 实现反向代理高可用(主从模式) 实现方式: 1.安装 Keepalived 在两台机器上虚拟出相同的虚拟IP 2.用虚拟IP指向需要代理的两个地址 1.安装keepalived(两台机器) yum -y install keepali...

2020-01-17 15:17:57

阅读数 41

评论数 0

原创 Flink 消费kafka数据写入elasticsearch

@羲凡——只为了更好的活着 Flink 消费kafka数据写入elasticsearch 一.前提准备 1.安装上elasticsearch和kibana,如果不会安装的可以点击下面链接查看 安装elasticsearch 安装kibana 2.pom.xml文件中要添加依赖 我们公司用的版本有点...

2019-11-25 10:46:45

阅读数 66

评论数 0

原创 Flink 消费kafka数据写入hbase

@羲凡——只为了更好的活着 Flink 消费kafka数据写入hbase 一.前提准备 1.创建Hbase表 create 'test_20191122','info' 2.pom.xml文件中要添加依赖 <dependency> <g...

2019-11-22 10:48:35

阅读数 78

评论数 1

原创 Flink 读取kafka数据写入Pulsar(含报错The implementation of the RichSinkFunction is not serializable)

@羲凡——只为了更好的活着 Flink 读取kafka数据写入Pulsar(含报错The implementation of the RichSinkFunction is not serializable) 开始之前务必检查自己kafka、pulsar和flink的版本,在pom中添加正确依赖 ...

2019-11-15 10:29:55

阅读数 156

评论数 1

原创 Pulsar 安装完整版——pulsar2.4.1

@羲凡——只为了更好的活着 Pulsar 安装完整版——pulsar2.4.1 pulsar自从腾讯使用后各种火,最近查看官方文档,实操后整理了一份安装手册,贡献给大家 安装分一下几步: 零、前期准备 一、部署ZooKeeper集群 二、初始化集群元数据 三、部署BookKeeper集群 四、部署...

2019-11-13 10:41:16

阅读数 124

评论数 1

原创 Flink HA模式安装(Standalone和Yarn)——flink1.7.2

@羲凡——只为了更好的活着 Flink HA模式安装(Standalone和Yarn)——flink1.7.2 flink是一个大数据开发人员必须会的组件,现在无论大小公司都在搞,所以安装是第一步。 0.安装Java1.8的环境(不赘述) 1.下载安装包 下载官网:https://flink.ap...

2019-11-01 10:29:54

阅读数 131

评论数 1

原创 Flink 读写mysql(Java)——批处理

@羲凡——只为了更好的活着 Flink 读写mysql(Java)——批处理 1.前期准备 a.添加maven依赖 <dependency> <groupId>org.apache.flink</groupId> <artifactId>flin...

2019-10-14 18:02:57

阅读数 261

评论数 0

原创 Elasticsearch 相关度分数计算

@羲凡——只为了更好的活着 Elasticsearch 部分基本原理 1.倒排索引 2.相关度分数计算 TF/IDF算法 a.Term Frequency:查询的词条在document中出现的次数,次数越多,相关度越高; b.Inverse Document Frequency:查询的词条在所有文...

2019-08-21 13:08:11

阅读数 224

评论数 1

原创 Spark 布隆过滤器(BloomFilter)的应用

@羲凡——只为了更好的活着 Spark 布隆过滤器(BloomFilter)的应用 object BloomFilterDemo { case class General(name:String,age:Int) def main(args: Array[String]): Unit = ...

2019-08-16 15:47:09

阅读数 513

评论数 0

原创 Scala 实现计数排序

@羲凡——只为了更好的活着 Scala 实现计数排序 def Countingsort(arr: Array[Int]): Array[Int] = { var min = arr(0) var max = arr(0) val arrLength = arr.length // ...

2019-08-12 17:53:52

阅读数 32

评论数 0

转载 Scala 实现归并排序、快速排序

@羲凡——只为了更好的活着 Scala实现归并排序、快速排序 原博文地址 https://blog.csdn.net/qq1010885678/article/details/46755749 。这位仁兄对scala的list、模式匹配和递归的理解非常深刻,第一看惊为天作,这个算法还能这么写,牛逼...

2019-08-12 17:35:10

阅读数 64

评论数 0

原创 Scala 封装API接口并实现客户端查询(干货)

@羲凡——只为了更好的活着 Scala 封装Api接口并实现客户端查询 像把大象装冰箱一样,一共有三步 写好查询语句 写好server并启动 写好client查询结果 1.Mysql的增改查代码 import java.sql.{Connection, DriverManager, Resul...

2019-07-30 14:33:08

阅读数 86

评论数 0

原创 Elasticsearch 新旧索引数据迁移(_reindex)

@羲凡——只为了更好的活着 Elasticsearch 新旧索引数据迁移(_reindex) 举个例子,在输入“1992-02-27”这样格式的数据,es会把他默认为是date数据类型,但是有时候我们希望它是text类型,在原索引中已经有数据的情况下该如何操作。 1.创建原索引 PUT /aaro...

2019-07-19 18:08:46

阅读数 685

评论数 0

原创 Hive 向表中load数据过滤首行

@羲凡——只为了更好的活着 Hive 向表中load数据过滤首行 建表语句如下: CREATE TABLE `stu_info`( `name` string, `age` int) ROW FORMAT DELIMITED FIELDS TERMINATED BY '\t&#...

2019-07-19 11:47:21

阅读数 278

评论数 0

原创 Kibana6.0 常用增删改查命令(三)

@羲凡——只为了更好的活着 Kibana6.0 常用增删改查命令(三) 1.filter过滤查询(bool使用) 查询hobby中包含“喝酒”但是不包含“唱歌”,同时要么hobby中有“跑步”要么birthday大于等于“1992-01-01”。对上面的结果再进行过滤,过滤salary大于等于88...

2019-07-16 10:59:13

阅读数 95

评论数 0

原创 Kibana6.0 常用增删改查命令(二)

@羲凡——只为了更好的活着 Kibana6.0 常用增删改查命令(二) 1.term和match的区别 term查询:不对要查询的值进行分词 match查询:会对要查询的值进行分词 term查询适合不分词的keyword、date、numeric类型字段查询; from:是从什么开始,第一个位置是...

2019-07-15 18:05:32

阅读数 54

评论数 1

原创 Cassandra 如何执行sql脚本

@羲凡——只为了更好的活着 Cassandra 如何执行sql脚本 bin/cqlsh ip --file="可直接执行的sql文件" bin/cqlsh 172.88.66.66 --file="/testdata/tmp/run.sql" =====...

2019-07-15 16:22:01

阅读数 362

评论数 1

原创 Kibana6.0 常用增删改查命令(一)

@羲凡——只为了更好的活着 Kibana6.0 常用命令(一) 1.查看基本状态 查看集群健康状态 GET /_cat/health?v 查看集群节点列表 GET /_cat/nodes?v 查看所有的索引 GET /_cat/indices?v 2.基本示例 创建索引并指定分片数量和复本数...

2019-07-12 17:26:22

阅读数 339

评论数 1

原创 SparkSql 自定义Map合并函数——保留旧Map有但新Map没有的Key

@羲凡——只为了更好的活着 SparkSql 自定义Map合并函数——保留旧Map有但新Map没有的Key 业务中有些hive/cassandra表的部分字段是map,如果要更新mapq且保留旧Map有但新Map没有的Key,该如何操作?我的解决方式是自定义如下函数 spark.udf.regis...

2019-07-04 09:34:10

阅读数 125

评论数 1

原创 Neo4j 完整版安装——neo4j-3.5.6

@羲凡——只为了更好的活着 Neo4j 完整版安装——neo4j-3.5.6 1.下载 地址如下:https://neo4j.com/download-center/#community 2.解压和配置环境变量 tar -zxf neo4j-community-3.5.6-unix.tar.gz ...

2019-06-20 16:28:52

阅读数 1162

评论数 0

原创 SparkSql 控制输出文件数量且大小均匀(distribute by rand())

@羲凡——只为了更好的活着 SparkSql 控制输出文件数量且大小均匀(distribute by rand()) Q:Spark如何控制文件你输出数量? A:这个简单,用 coalesce或者repartition,num=(1.0*(df.count())/7000000).ceil.toI...

2019-06-20 12:08:10

阅读数 1935

评论数 1

原创 Spark 读写Hbase(Scala)——2.批量操作

@羲凡——只为了更好的活着 Spark 读写Hbase(Scala)——2.批量操作 一.前提准备 1.创建命名空间和表 create_namespace 'testdata' create 'testdata:hb_staff','info�...

2019-06-13 17:22:21

阅读数 467

评论数 1

原创 Spark 读写Hbase(Scala)——1.单条操作

@羲凡——只为了更好的活着 Spark 读写Hbase(Scala)——1.单条操作 一.前提准备 1.创建命名空间和表 create_namespace 'testdata' create 'testdata:hb_staff','info�...

2019-06-13 10:29:48

阅读数 114

评论数 0

原创 Hbase hbck2下载编译和基本使用

@羲凡——只为了更好的活着 Hbase2.0 hbck2下载编译和基本使用 准备好java、maven和hbase,且都配置的环境变量 找一台有hbase和maven的机器,进入一个常用目录中 a.将文件拉取到本地 git clone https://github.com/apache/hbase...

2019-06-06 17:17:34

阅读数 348

评论数 0

原创 Spark 机器学习——协同过滤ALS算法

@羲凡——只为了更好的活着 Spark 机器学习——ALS算法 1.什么是ALS算法? ALS是交替最小二乘法(Alternate Least Square),其中LS是大家最熟知的最小二乘法(Least Square),所以ALS和最小二乘法脱不了干系。百度上的解释,(在矩阵分解(matrix ...

2019-05-31 17:10:00

阅读数 77

评论数 0

原创 Linux 删除hdfs上的指定文件夹

@羲凡——只为了更好的活着 Linux 删除hdfs上的指定文件夹 知识点1:用 cat … | while read line 循环文件的每一行 知识点2:用 =~ 判断左边字符串是否包含右边字符串 batchid=20190520202202 hdfs dfs -ls /Data/before...

2019-05-22 15:37:53

阅读数 523

评论数 0

原创 Spark RDD与DataFrame相互转换

@羲凡——只为了更好的活着 Spark RDD与DataFrame相互转换 Q:Spark中RDD转成DataFrame用什么算子 A:.rdd Q:Spark中DataFrame转成RDD用什么算子 A:.toDF 1.直接上代码 import org.apache.spark.rdd.RDD ...

2019-05-22 14:16:07

阅读数 64

评论数 0

原创 Nginx 反向代理(upstream)

@羲凡——只为了更好的活着 Nginx 反向代理(upstream) 在配置高可用的环境中Nginx反向代理是最常用的一种方式。本人因为配置xxl-job调度中心的高可用,所以下面有xxl-job的痕迹。 1.安装nginx知识赘述 在你有外网的情况下,输入 sudo apt-get instal...

2019-05-17 16:18:27

阅读数 239

评论数 0

原创 Sqoop 增量导入hive

@羲凡——只为了更好的活着 Sqoop 增量导入hive(incremental) 问:业务中每天增量产生的数据(比如用户登录日志)如何更新到hive中呢 答:使用参数 incremental sqoop import \ --connect jdbc:mysql://deptest23:3306...

2019-05-14 10:25:02

阅读数 338

评论数 1

原创 Xxl-job 编译和安装——xxl-job2.0.2

@羲凡——只为了更好的活着 xxl-job 编译和安装——xxl-job2.0.2 前一篇博客(https://blog.csdn.net/weixin_42003671/article/details/89487433)已经安装好elasticsearch6.5.4,现在安装一下kibana6....

2019-05-10 13:09:39

阅读数 1164

评论数 1

原创 Sqoop Job 应用(二)

@羲凡——只为了更好的活着 Sqoop Job 应用(二) 问:在看了 Sqoop Job 应用(一) 后应该对sqoop job有一定的认识了,但是实际业务中我们肯定不会每次都手动执行sqoop脚本,更不会盯着去输入数据库密码,那怎么办呢? 答:用调度器。之前的文章提到过用oozie调度sqoo...

2019-05-09 09:33:46

阅读数 116

评论数 1

原创 Linux 查看系统配置常用命令

@羲凡——只为了更好的活着 Linux 查看系统配置常用命令 1.查看cpu规格 cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c 2.查看物理cpu个数 cat /proc/cpuinfo | grep "physical i...

2019-05-08 13:33:49

阅读数 82

评论数 1

原创 Sqoop Job 应用(一)

@羲凡——只为了更好的活着 Sqoop 使用——sqoop job 应用 看本文前默认你已经用shell脚本执行sqoop,不会的可以借鉴我另一篇博客 https://blog.csdn.net/weixin_42003671/article/details/88665864 1.参数说明 Job...

2019-05-07 18:41:05

阅读数 131

评论数 1

原创 Linux 批量修改文件名(前缀或后缀)

@羲凡——只为了更好的活着 Linux 批量修改文件名(前缀或后缀) 有些文件的要求前缀或后缀要一样,或者批量的将文件重命名 添加前缀: for i in `ls`; do mv -f $i `echo "text_"$i`; done 替换后缀:rename 's/...

2019-05-07 14:27:18

阅读数 2964

评论数 0

原创 Spark2.0 插入/更新mysql数据(scala)

@羲凡——只为了更好的活着 Spark2.0 插入/更新mysql数据(scala) 特别强调楼主使用spark2.3.2版本 1.准备工作 在pom.xml文件中要添加 <dependency> <groupId>mysql</groupId> <a...

2019-05-06 14:05:54

阅读数 537

评论数 4

原创 Hadoop-动态刷新hdfs/yarn配置

@羲凡——只为了更好的活着 Hadoop-动态刷新hdfs/yarn配置 在很多时候,修改了hadoop的配置后,希望立即生效,但是线上还有任务在执行,不能重启,可以执行以下命令让修改后的hdfs/yarn配置生效 1、动态刷新hdfs配置 如果是HA集群则在两个namenode节点上执行 hdf...

2019-05-05 14:48:24

阅读数 481

评论数 0

原创 Elasticsearch 安装ik和pinyin分词器——elasticsearch6.5.4

@羲凡——只为了更好的活着 Elasticsearch 安装IK分词器——elasticsearch6.5.4 默认你已经安装好elasticsearch6.5.4,如果没有请先参照我另一篇博客 https://blog.csdn.net/weixin_42003671/article/detai...

2019-04-30 16:29:22

阅读数 273

评论数 1

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