自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(388)
  • 资源 (21)
  • 问答 (1)
  • 收藏
  • 关注

原创 JAVA线上事故:递归导致的OOM

递归 线上事故

2023-12-20 22:38:19 183

原创 MySQL 8.0 Public Key Retrieval is not allowed 错误的解决方法

rewriteBatchedStatements

2023-02-09 15:06:37 330 1

原创 docker-/var/lib/docker数据迁移

docker默认目录是/var/lib/docker,位于系统盘上,占用空间比较大,计划迁移到新挂在的盘上。第一步,在新盘上创建文件夹mkdir -p /data/docker/lib第二步,复制文件到新目录rsync -avz /var/lib/docker /data/docker/lib/注意,复制时连带父目录docker一起复制过来,所以复制后docker的镜像存储在 /data/docker/lib/docker/下第三步,设置docker镜像的挂在目录修改docker.ser

2022-05-28 06:32:28 1453 1

原创 docker报错:ERROR: could not find an available, non-overlapping IPv4 address pool among the defaults to

修改了/etc/docker/daemon.json之后,启动容器报错:Creating network "datahub_network" with the default driverERROR: could not find an available, non-overlapping IPv4 address pool among the defaults to assign to the network...............Creating network "datahub_netw

2022-05-26 17:58:22 1651 1

原创 安装Apache Atlas遇到的错误

安装apache atlas,启动atlas server报错,查看logs/atlas.20220524-115239.out文件:Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'graphTransactionInterceptor' defined in URL [jar:file:/usr/local/service/atlas/s

2022-05-24 15:01:42 912 1

原创 坚持的力量:mysql学习第19天-为什么用了索引字段却不走索引

有三种情况,即使你用了索引字段,mysql在执行sql的时候也不会走sql。一,索引字段用函数比如,create_time上使用了索引,但如下sql却不会走索引:select * from t where month(t) = 7原因是month(t)破坏了索引字段在索引树上的有序性,索引之所以快,就是因为索引在各层上是有序的。二,隐式字段类型转换如果索引字段my_id是varchar类型,如下sql不走索引:select * from t where t.my_id = 1因为在mys

2022-05-12 10:10:43 1083

原创 elasticsearch-datastream总结

一,什么是datastreamdatastream是为了更方便的管理时序数据的生命周期而基于ilm扩展的特殊功能。二,datastream的特点1,文档必须有@timestamp字段2,定义ilm时无需定义iml别名3,可以对datastream进行插入和查询文档,但不能删除和更新文档4,datastream像别名一样管理多个真实索引,索引的名称规则:.ds-datastream名称-yyyy.MM.dd-六位序列号如下(假设datastream名称是test-data-stream)

2022-05-12 07:03:44 684

原创 ElasticSearch开启xpack后登录失败

用浏览器通过9200端口连接elasticsearch,一直失败:我还一直以为是证书的问题,也忽略了后台的报错信息的真实意义。放了一天再来看,才发现是密码问题。联想到早上删除了data目录,连密码也删掉了。于是重新设置密码。elasticsearch-setup-passwords auto...

2022-04-28 19:36:03 1548

原创 elasticsearch-ingest-pipeline总结

一,ingest节点的作用ingest节点在稳定写入前对文档进行指定的预处理,类似大数据的ETL二,ingest的使用默认集群每个节点都具有ingest的作用,通常建议配置具有单一职责的ingest节点。确定ingest节点后,要定义pipeline,pipeline中指定具体的逻辑。三,ingest的使用总结1,定义pipelinePUT _ingest/pipeline/indexed_at{ "processors": [ { "script": {

2022-04-24 07:36:50 1827

原创 elasticsearch启动报错:master not discovered yet

通过命令启动: bin/elasticsearch -E node.name=hotnode -E cluster.name=geektime -E path.data=hot_data -E node.attr.my_node_type=hot报如下错误,master not discovered yet,错误信息提到了node1,我想启动的节点名称是hotnode,不叫node1,为什么会出现node1呢?查看配置文件,原来配置文件配置了master的初始化节点是node1:把这个注释

2022-04-12 08:12:41 4243

转载 elastisearch启动报错:org.elasticsearch.cluster.block.ClusterBlockException: blocked by: [SERVICE_UNAVAIL

使用命令启动一个ES进程:bin/elasticsearch -E node.name=warmnode -E cluster.name=geektime -E path.data=warm_data -E node.attr.my_node_type=warm报错:[2022-04-12T07:40:22,156][WARN ][r.suppressed ] [warmnode] path: /.reporting-*/_search, params: {index=.

2022-04-12 07:48:08 1362

原创 elasticsearch配置xpack集群间加密认证时报错:

通过证书配置集群间节点通信认证:bin/elasticsearch -E node.name=node1 -E cluster.name=geektime -E path.data=node1_data -E http.port=9200 -E xpack.security.enabled=true -E xpack.security.transport.ssl.enabled=true -E xpack.security.transport.ssl.verification_mode=certifica

2022-04-11 08:16:52 3256

原创 Elasticsearch:系统已经配置环境变量的情况下使用Elasticsearch自带的jdk启动

修改elasticsearch bin目录下的elasticsearch-envvim elasticsearch-env注意下面代码:如果变量ES_JAVA_HOME不为空,则会使用ES_JAVA_HOME这个变量,这个变量默认是没有配置,可以按照图上所示配置ES_JAVA_HOME这个变量,这个变量执行es安装包自带的jdk目录:...

2022-04-06 21:55:31 2992 5

原创 linux下source之后环境变量重复

在linux中修改了jdk的环境变量,使用java -version验证,没有生效,使用echo $PATH打印环境变量,发现环境变量重复,老的jdk的环境变量并没有删除,新旧jdk环境变量都存在,旧的在后面覆盖了新的环境变量。这是为什么呢?在配置文件中已经注释掉了老的环境变量啊。原因类似于缓存,PATH的值在当前窗口下保存在内存中,但配置文件中使用PATH拼接新的配置时,PATH中保存的老的环境变量没有被覆盖,而是直接拼接上新的配置。解决办法:打开新的窗口,执行source命令。...

2022-04-06 08:24:53 2111

原创 Spark优化,多线程提交任务,提升效率

val listBuffer = new ListBuffer[Future[String]] val service: ExecutorService = Executors.newFixedThreadPool(4) for (i <- 0 to 3) { val task: Future[String] = service.submit(new Callable[String] { override def call(): String = {

2022-03-30 12:01:04 3997

原创 Hive3.1.2整合Spark3.0.0-HiveOnSpark

一,整合原理1,HiveOnSparkHive是一个Sql解析引擎,其不具备计算能力,Hive将Sql解析成为物理执行计划,将物理执行计划交由计算引擎执行计算,默认的执行引擎是MapReduce,但MapReduce执行速度慢,随着Spark的崛起,Hive也支持使用Spark作为计算引擎,这就是HiveOnSpark2,SparkOnHive比较容易混淆,二者差距还是很大的,SparkOnHive只是使用了Hive的元数据服务,Sql解析由Spark完成、计算也由Spark完成。二,整合步骤

2022-03-26 09:29:17 6223 7

原创 flume-使用KafkaChannel读取不到数据

使用TAILDIR监听日志写入KafkaChannel。配置如下:a1.sources = r1a1.channels = c1#描述sourcea1.sources.r1.type = TAILDIRa1.sources.r1.filegroups = f1a1.sources.r1.filegroups.f1 = /opt/module/applog/log22/app.*a1.sources.r1.positionFile = /opt/module/flume/taildir_po

2022-03-25 07:04:07 2899 1

原创 Spark jar包加载顺序及冲突解决

一,spark jar包加载顺序1,SystemClasspath – Spark安装时候提供的依赖包,通常是spark home目录下的jars文件夹 【SystemClassPath】2,Spark-submit --jars 提交的依赖包 【UserClassPath】3,Spark-submit app.jar或者shadowJar打的jar 【UserClassPath】二,jar包冲突解

2022-03-23 15:51:50 5472 1

原创 Intellij compile failures: “is already defined as“

idea调试spark程序报错:Intellij compile failures: "is already defined as"不知是何原因,解决方案:右键scala文件夹,如下图所示,unmark as Sources Root,之后正常

2022-03-23 14:52:51 1415

原创 dbeaver 切换结果显示位置

水平显示效果:

2022-03-21 17:47:44 6322 1

原创 错误记录:yarn resourcemanager启动失败

使用start-yarn.sh启动yarn报如下错误:Caused by: java.net.BindException: Cannot assign requested address at sun.nio.ch.Net.bind0(Native Method) at sun.nio.ch.Net.bind(Net.java:433) at sun.nio.ch.Net.bind(Net.java:425) at sun.nio.ch.ServerSocketChannelImpl.bind(S

2022-03-15 08:35:32 2946

原创 Can not initialize cryptographic mechanism

Caused by: java.lang.SecurityException: Can not initialize cryptographic mechanismat javax.crypto.JceSecurity.(JceSecurity.java:93)... 33 moreCaused by: java.lang.SecurityException: Cannot locate policy or framework files!at javax.crypto.JceSecurity.se

2022-03-01 11:14:44 2039 3

原创 记一次Spark打包错误:object java.lang.Object in compiler mirror

使用maven compile和package,一直报错scala.reflect.internal.MissingRequirementError: object scala.runtime in compiler mirror not found.error: error while loading <root>, error in opening zip file[ERROR] error: error while loading <root>, error in open

2022-02-11 18:29:41 1327

原创 ClickHouse安装

一,准备工作1,确定防火墙处于关闭状态2,CentOS取消打开文件数限制 vim /etc/security/limits.conf* soft nofile 65536* hard nofile 65536* soft nproc 131072* hard nproc 131072vim /etc/security/limits.d/20-nproc.conf* soft nofile 65536* hard nofile 65536* soft nproc 131072* ha

2022-02-05 10:17:36 1933

原创 Phoenix安装小记

1,使用客户端连接phoenix,首先用dbeaver,dbeaver的版本较高,需要jdk11,但是phoenix的驱动需要jdk8,无法使用2,使用idea连接,需要配置phoenix的driver属性,配置jdk为jdk8

2022-01-31 11:19:18 647

原创 IDEA编译报错:java: 未报告的异常错误X; 必须对其进行捕获或声明以便抛出

IDEA编译Flink源码时报错:java: 未报告的异常错误X; 必须对其进行捕获或声明以便抛出原因是环境变量配置的是JDK8,Flink部分代码是基于JDK11编写的,将JDK升级为JDK11,重新编译即成功

2021-12-30 21:53:53 2929

原创 HiveSQL:求累计访问量

数据userId visitDate visitCountu01 2017/1/21 5u02 2017/1/23 6u03 2017/1/22 8u04 2017/1/20 3u01 2017/1/23 6u01 2017/2/21 8U02 2017/1/23 6U01 2017/2/22 4需求一:逐行求相同用户的累计访问次数

2021-12-29 19:34:03 1068

原创 windows10 修改java环境变量不生效

一、问题以前安装过安装版的jdk后,配置过环境变量,然后现在更换jdk版本且修改环境变量并不能生效,如原本安装了1.8,现更换为1.7,且配置了环境变量,但是java -version仍显示1.8。二、原因当使用安装版本的JDK程序时(一般是1.7版本以上),在安装结束后安装程序会自动将java.exe、javaw.exe、javaws.exe三个可执行文件复制到C:\Windows\System32目录,这个目录在WINDOWS环境变量中的优先级高于JAVA_HOME设置的环境变量优先级,故此直接更

2021-12-29 16:28:56 5553 5

原创 Flink源码-SlidingProcessTimeWindow的创建和触发

今天研究里下SlidingProcessTimeWindow的源码,把TimeWindow的生成和触发计算,大致搞清楚了,写一篇博客记录下。要点:这里讲的是ProcessTime的滑动窗口每条数据都会触发窗口的分配(创建)一条数据可能分配到多个窗口不同数据触发的,key相同、start相同、end相同的窗口被认为是一个窗口窗口和数据会被存入一个map,key是窗口对象,value是一个list,数据作为element存入list新的窗口会触发注册一个定时器,定时器本质是一个有线程池管理的线程

2021-12-28 22:17:10 1509 1

原创 Git提交代码到新建的工程

Git 全局设置:git config --global user.name "luge"git config --global user.email "[email protected]"创建 git 仓库:mkdir flinkcd flinkgit inittouch README.mdgit add README.mdgit commit -m "first commit"git remote add origin [email protected]:CngYan/flink.gitgit pu

2021-12-28 20:29:41 753

原创 排列组合理解SQL JOINS的几种情况

一,JOIN的三种方式1,left join2,right join3,full join二,Join的结果两个集合的join可能出现多少中结果呢?利用数学里的排列组合知识很容易算出来,如上图,join相当于把两个集合分为三个部分:左边集合独有部分右边集合独有部分两边集合公有部分利用排列组合的知识,可以将结果简化为这三部分的排列组合,也即结果中这三个部分存在与否,每个部分有两种情况,于是排列组合的结果是:2 * 2 * 2 = 8但是从图上只能看见7中结果,原因是,有一种情.

2021-12-28 06:28:44 417

原创 HiveSql经典面试题解析-统计两个人的通话时长

数据,数据有三列:呼叫人、接听人、通话时长,由一个空格分割。goudan haoge 01:01:01goudan mazi 00:11:21goudan laowang 00:19:01goudan Jingba 00:21:01goudan weige 01:31:17haoge mazi 00:51:01haoge mazi 01:11:19haoge laowang 00:00:21haoge laowang 00:23:01laowang mazi 01:18:01laow

2021-12-27 12:03:53 1166

原创 Hive导入导出数据方式总结

一,导入数据1,load1.1 从本地磁盘导入:load data local inpath ‘/localpath’ into table table1;1.2 从HDFS导入(无关键字local):load data inpath ‘/localpath’ into table table1;2,insert into … selectinsert into table1 select id,name from table2;3,create … as selectcreate

2021-12-24 07:22:51 1152

原创 Hive启停脚本

#!/bin/bash HIVE_LOG_DIR=$HIVE_HOME/logs if [ ! -d $HIVE_LOG_DIR ] then mkdir -p $HIVE_LOG_DIRfi#检查进程是否运行正常,参数 1 为进程名,参数 2 为进程端口function check_process() { pid=$(ps -ef 2>/dev/null | grep -v grep | grep -i $1 | awk '{print $2}') ppid=$(ne

2021-12-23 21:34:32 261

原创 Hive常用函数

一,常用日期函数unix_timestamp:返回当前或指定时间的时间戳select unix_timestamp();select unix_timestamp("2020-10-28",'yyyy-MM-dd');from_unixtime:将时间戳转为日期格式select from_unixtime(1603843200);current_date:当前日期select current_date;current_timestamp:当前的日期加时间select current_

2021-12-23 06:30:25 119

原创 Hive的nvl、coalesce、if、nvl2

nvl、coalesce、if、nvl2是空值处理函数。一,nvl语法: nvl(column1,column2)函数逻辑: 如果column1为空,返回column2,如果column1不为空,返回column1二,nvl2语法: nvl2(column1,value1,value2)函数逻辑: 类似于java的三元运算符, 如果column1为空,返回value2,如果column1不为空,返回value1三,coalesce语法: coalesce(column1,column2,co

2021-12-22 21:56:21 2435

原创 Spark性能调优案例

在实际工作中,性能调优是必不可少的,虽然业务千种百样,实际落地的解决方案可能也不尽相同,但归根结底,调优的最终目的是使得内存、CPU、IO均衡没有瓶颈。基本上,思路都是结合实际业务、数据量从硬件出发,考虑如何充分利用CPU、内存、IO。除了对业务的理解之外,对于Spark本身的机制也要深入理解,这样才能通过各种调整,充分发挥Spark的优势,达成调优的目的。下面以一个案例尝试总结常用的Spark调优思路和实践。案例数据来源极客时间Spark 性能调优实战,数据地址百度网盘,提取码 ajs6 。数

2021-12-21 20:03:55 2249

原创 深入浅出 Spark Thrift Sever

一,Spark Thrift Sever是什么Spark借助Hive的Metadata Service可以实现通过命令行客户端工具执行Sql语句,就像是Hive或者Mysql的命令行工具一样,称之为Spark CLI。Spark CLI适合做一些简单的测试,如Sql语法验证、查看表结构等等,使用起来比较方便。但其有一个限制,Spark CLI必须和HiveMeta Service在同一台服务器,这就限制了Spark CLI的使用范围,局限于开发人员使用。Spark SQL有没有提供通过客户端(DBea

2021-12-16 10:38:06 3284

原创 Spark骚操作:使用客户端工具如DBeaver连接SparkSQL

要使用DBeaver连接SparkSQL连接SQL,要做如下准备:1,在spark的conf目录下,创建hive-site.xml(附在文章最后)。Spark的Thrift Server脱胎于Hive的Thrift Server,所以有很多配置的name都包含hive关键字注意最后一个配置,设置了用户名密码,客户端会使用这个用户密码连接SparkSql2,启动Spark Thrift Sever ./sbin/start-thriftserver.sh3,DBeaver使用Hiv

2021-12-15 20:51:25 3154

原创 FlinkCDC-自定义序列化器

package com.lcy.app.customer;import com.alibaba.fastjson.JSONObject;import com.alibaba.ververica.cdc.debezium.DebeziumDeserializationSchema;import io.debezium.data.Envelope;import org.apache.flink.api.common.typeinfo.BasicTypeInfo;import org.apache.f

2021-12-15 07:40:09 2941 1

sqopp1.4.6.zip

sqopp1.4.6是常用的hadoop生态圈的数据采集、数据同步工具

2021-11-28

hudi-spark3-bundle_2.12-0.10.0-SNAPSHOT.jar

spark读取hudi,hudi版本0.10

2021-11-27

2.Hadoop-lzo.7z lzo源码+包

hdfs默认不支持lzo压缩,需要通过将lzo源码融入hadoop源码,重新编译hadoop源码;或者编译lzo源码生成jar,作为插件使用

2021-11-21

bank_record.csv

hbase bluk load测试数据

2021-06-03

MomoHbase.7z

学习hbase使用的数据制作工具,仿照momo聊天数据格式

2021-06-01

squirrelsqlclientxz.7z

数据连接客户端,连接phoenix 安装方式: java -jar D:\software\sqlc_41579\squirrelsqlclientxz\squirrel-sql-3.7.1-standard.jar

2021-06-01

hadoop2.7.5-Windows版.zip

编译过的Hadoop2.7.5windows版本,拿来即用,内含hadoop.dll、winutils.exe等,还有说明文档:https://blog.csdn.net/epitomizelu/article/details/115717801

2021-04-15

nffaoalbilbmmfgbnbgppjihopabppdk.zip

适合chrome的倍速播放器

2021-03-19

kibana-7.2.0-linux-x86_64.tar.gz.zip

kibana-7.2.0-linux-x86_64.tar.gz官网免费

2021-01-16

20191107141751chromecj.com.zip

Forest电脑版是一款非常有趣的培养专注高效率生活习惯软件

2019-11-07

java多线程设计模式

java多线程设计模式,12个重要的线程设计模式和全书总结以及丰富的附录内容。每一章相关线程设计模式的介绍,都举一反三使读者学习更有效率。最后附上练习问题,让读者可以温故而知新,能快速地吸收书中的精华,书中最后附上练习问题解答,方便读者学习验证。

2016-01-23

基于GIS的数量方法与应用(附书实验文档1)

基于GIS的数量方法与应用(附书实验文档的第一部分),文档重现了书中的每个案例的详细步骤,是Arcgis入门和空间分析入门必备之书

2016-01-23

基于GIS的数量方法与应用(附书数据)

基于GIS的数量方法与应用(附书数据),王法辉教授的著作,适合Arcgis和空间分析的入门

2016-01-23

空间数据分析与R实践

R具有两大功能统计计算和制图。以往空间数据分析是GIS软件的领地,其他软件很少染指。R很早就具有空间数据分析的功能,但是少为人所知道。这本书是由R核心开发组中负责开发空间数据分析的人士边写软件同时边著就的教材。

2016-01-05

R语言编程艺术

R语言编程艺术,内容清晰,有目录,适合入门,无私分享

2015-12-18

Search Everything

对windows的文件系统进行索引,可以快速查找文件系统中的文件和目录,比Windows自带的查找功能块1万倍

2015-12-16

统计建模与R软件

统计建模与R软件,非常经典的r入门书籍,共享

2015-12-16

MapReduce.Design.Patterns

大牛推荐的hadoop学习参考书,英文版,读起来可能有点困难,但却是好书,坚持读下去会有很大收获

2014-12-14

Hadoop 经典书籍 Hadoop MapReduce CookBook

hadoop开发经典数据,完整版本,来自hadoop大牛推荐

2014-12-14

winscp516setup.exe

这是window文件系统和linux文件系统远程通信的工具,可以用来在两个文件系统间互传文件

2014-12-14

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

TA关注的人

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