自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

chun的博客

昨夜西风凋碧树,独上高楼,望尽天涯路

  • 博客(200)
  • 资源 (5)
  • 收藏
  • 关注

原创 IP地址段匹配库2.0

使用方式和1.0一样,使用二分查找重新实现一下,并且支持对传入的IP地址段进行处理,对与IP地址段范围重叠的部分进行聚合去重。上次实现的IP地址段匹配库,当数据量过大时, 匹配起来实在是太慢了,所以使用算法重新实现了一下。

2023-12-27 19:07:06 415

原创 数据库查询工具类,传入对象class返回查询的对象列表

其中的connect(),连接什么数据库就使用什么连接,注意传入的Class字段名必须和select后面的字段名匹配,可以使用别名进行对应。

2023-12-15 11:58:23 406

原创 IP段(CIDR格式)构建匹配库,传入IP查询是否命中

代码中有一些没用的自行去掉,我使用的CIDR格式,也可以通过IP的范围改造一下代码使用。

2023-12-15 11:55:08 660

原创 域名后缀域匹配算法

【代码】域名后缀域匹配算法。

2023-11-27 15:09:15 581

原创 我的创作纪念日

提示:你过去写得最好的一段代码是什么?提示:当前创作和你的工作、学习是什么样的关系。提示:可以和大家分享最初成为创作者的初心。提示:在创作的过程中都有哪些收获。提示:职业规划、创作规划等​​。

2023-08-03 17:07:55 178

原创 HBase +spark 使用bulkload方式存入数据

这个命令会找到HFile文件并将其加载到指定的HBase表中。需要注意的是,这个命令需要在HBase服务器上运行,并且需要确保在运行之前已经正确配置了表和列族。

2023-04-23 10:30:40 267

原创 java程序操作ES索引

【代码】java程序操作ES索引。

2023-04-23 10:29:54 316

原创 大数据集群将root用户切换至普通用户使用

2.2 配置免密,在所有机器上执行cat ~/.ssh/id_rsa.pub | ssh ampthon@nna ‘cat ~/.ssh/authorized_keys’ 命令,将公钥拷贝到nna服务器上,然后将nna上的authorized_keys文件覆盖到集群其他机器。4. 启动spark,./start-all.sh(这里要进入spark目录,如果使用环境变量是走的hadoop的脚本)hadoop-env.sh 、yarn-env.sh、 mapred-env.sh文件。增加用户和用户组设置。

2023-04-23 10:01:33 580

原创 模拟kafka测试零拷贝和磁盘顺序写的速度

使用nio + io多路复用 + 零拷贝 + 磁盘顺序写。

2023-04-23 10:01:01 88

原创 spark提交命令中的jars设置方式

此方法是在大数据平台架构与原型实现:数据中台建设实战这本书上看到的之前我们使用的方式是将所有jar的名字加入到配置文件中,提取为jars参数。

2023-04-23 10:00:12 304

原创 jvm性能调优

启动程序后查看一下内存占用。

2023-04-23 09:59:36 86

原创 非springboot项目非web项目添加druid监控页面

脚本druid-github官网有。

2023-04-23 09:59:02 275

原创 Linux下在没有root权限的普通用户下,执行需要root权限的java程序

我们需要在没有root权限的普通用户下,执行java程序,此java程序中需要使用到jpcap来接收网卡的包,jpcap需要root权限才能够加载网卡信息,由于此用户并不能拿到root权限,所以需要给java虚拟机提权来解决问题。

2023-04-23 09:58:29 1581

原创 maven在无互联网(内网)环境下打包

Maven内网环境下打包

2022-12-28 15:12:14 3245

原创 Linux命令

Linux命令

2022-10-24 14:38:32 342

原创 HBCK2 详解

HBCK2

2022-10-12 11:21:59 1512

原创 JAVA程序绑定到指定的CPU核上

使用taskset命令将JAVA程序绑定到指定的CPU核上

2022-10-09 16:58:03 2020

原创 Hbase模糊查询优化 - 并发查询

HBase查询优化,多region,并发查询

2022-09-26 10:29:45 1588

原创 log4j配置文件

log4j

2022-07-19 10:37:54 307

原创 Spark worker内存不足导致任务失败,报错Likely due to containers exceeding thresholds, or network issues

报错:Lost executor 33 on xx.xx.xx.152: Remote RPC client disassociated. Likely due to containers exceeding thresholds, or network issues. Check driver logs for WARN messages.原因:由于spark某节点可用内存不足导致整个任务失败,在执行日志中找到可以上面的报错信息。我这里应该是提交了多个任务后内存占用超过了spark可用内存,导致报

2022-05-05 15:40:15 2459

原创 idea全局搜索搜不全的BUG

搜不全真是坑坏我了,修改业务后,差点就卷铺盖走人了…修改配置打开help -> Find Action输入registry后搜索(点击框内任意一行后,直接输入就是搜索) page.size将100的值改大,一步到位100000

2022-04-15 15:01:16 2359

原创 在已有数据的linkedList和arrayList集合中在中间位置新插入一条数据谁更快

以前一直以为是linked中间插入和头部插入都是比arrayList快的,今天开会的时候谈到这个面试题,这里就重新认识一下这两个集合。结论:不想存在性能瓶颈,不是一定要linkedlist的场景就使用arraylist就可以了,除了头插,arraylist基本都是优于linkedlist的1.中间插入数据linkedlist:中间插入数据linkedlist是需要遍历移动和new node节点的arraylist:arraylist可能需要扩容和一定要移动数据的,但是arraylist使用的sy

2022-04-11 19:39:18 1621 1

原创 Kylin3.1.3连接Hbase报错找不到 hbase-common lib not found的解决办法

kylin启动报错hbase-common lib not found

2022-03-29 11:18:37 1991

原创 HDFS和Spark配置LZO压缩,Spark读取LZO创建正常Task数量

1.说明为了解决,下数据日益增长并且目前使用Snappy压缩导致的Spark读取时会出现OOM,并且处理起来速度过慢的问题,决定使用LZO+Index来解决问题。线上Hadoop版本3.2.1,Spark2.3.1,Lzo使用最新版0.4.212.安装lzopsudo yum -y install lzop3.下载编译安装LZO下载地址http://www.oberhumer.com/opensource/lzo/download/lzo-2.10.tar.gz下载好后在linux下进行

2022-02-11 10:33:26 2184 2

原创 Hadoop集群HDFS各节点磁盘使用率不平衡,使用balancer做数据平衡

HDFS上各节点磁盘大小不一致,新增节点数据平衡前,是非常不均衡的,某些节点已经接近90了集群的数据平衡已经迫在眉睫,必须要搞一搞了。1.设置传输速率我这里是万兆网卡,就先设置100M了在两台master上分别执行:hdfs dfsadmin -fs hdfs://nn1:8020 -setBalancerBandwidth 100M2.找一台空闲集器,开始平衡数据#设置数据之间差值5%nohup $Hadoop_home/bin/start-balancer.sh –threshol

2022-01-12 16:15:39 2254

原创 ES:记录curator+nfs进行索引备份、创建快照的一次实践

1. 安装curator工具下面是我离线安装的过程https://blog.csdn.net/weixin_43736084/article/details/121775484?spm=1001.2014.3001.55012.使用fs建立es存储库我们使用NFS,下面是官网给出的几种仓库类型2.1 fs建立存储库的注意事项注意事项,要不然后面创建仓库会失败:各台机器之间使用的用户的uid和gid必须一样(启动es的用户),我这里uid=1000 gid=1003,不一样需要进行修改查

2021-12-10 10:54:48 2090

原创 ES curator离线安装与部署

1.版本:es:6.5.1curator:5.8.4 下载地址:https://www.elastic.co/guide/en/elasticsearch/client/curator/current/yum-repository.html#_signing_key_22.连接不上网站怎么办?出现无法访问此网页的话,去修改下本地dns具体方法:https://blog.csdn.net/weixin_43736084/article/details/1217756763.下载我这里用

2021-12-07 18:33:36 1869

原创 一些网站github等无法连接服务器的解决办法

1.打开站长工具 http://tool.chinaz.com/speedtest/2.搜索github.com/3. 点击总耗时-排序4. 拿到延迟最低的ip地址20.205.243.1665.修改本地dnswindows:C:\Windows\System32\drivers\etc修改hosts文件,末尾添加20.205.243.166 github.comLinux:sudo vim/etc/hosts6.等一会访问就可以了,或者不断刷新网页...

2021-12-07 18:28:11 3863 1

原创 Spark2内存调优总结 - 内存划分 与 内存计算 与 调参方式

使用的Spark2以上版本所以只考虑UnifiedMemoryManager动态内存管理,如图:1. 内存划分 与 内存计算 与 调参方式1.1 三部分:Spark内存、用户内存、预留内存预留内存:300MB 固定Spark内存和用户内存比例由参数spark.memory.fraction(默认0.75) 控制计算公式:假设:我们在submit提交参数设置 executor.memeory = 10G + 300M (方便计算),我们叫他为系统内存那么:Spark内存 = (系统内存 -

2021-11-25 17:26:50 3541

原创 记录一次HBase的scan的分页查询

修改前任bug,Hbase查询过于慢了,以至于都查不出来了,看了代码发现使用的Scan只设置了withStartRow、withEndRow、setCaching扫描,拿到全部数据后存入集合再subList进行分页,但是HBase中存在某些数据有几百万条,根本scan不出来了。前任设置如下: 其中start 和 end 拼接0和z是因为HBase中RowKey按照字典顺序排序,String start = rowKey + "0";String end = rowKey + "z";Scan sca

2021-11-24 10:58:27 2936 7

原创 Spark读取HDFS上的Snappy压缩文件所导致的内存溢出问题 java.lang.OutOfMemoryError: GC overhead limit exceeded

HDFS上有一些每天增长的文件,目前使用的是Snappy压缩,突然某天OOM了1.原因:因为snappy不能split切片,也就会导致一个文件将会由一个task来读取,读取后解压,数据又会膨胀好多倍,如果文件数太大而且你的并行度也挺大,就会导致大量full gc,最终OOM因为前人实现的,不太好改,为了程序能快速跑起来,只好将最后入HDFS前reparation(500),修改为1000,增加文件数,减少每个文件数据量。但是他不是长久之计,更换压缩方式LZO,但是没实现过还需要建立索引,需要规划一下,

2021-11-19 14:41:14 2395

原创 第一次尝试修复Hbase2出现Region不一致,HBCK2

出现问题的原因Hadoop中报错,集群中某节点的一块磁盘损坏了,运维修复后,hbase出现了region不一致的情况。修复1.首先查看web ui中被lock的region,对其进行bypass -or pid 再bypass -o id2. 查看home界面拿到regionId,对其重新分配assigns -o3. 最后还是会剩余一些region无法修复,因为原因是磁盘损坏了,所有查看HDFS文件是否坏块hdfs fsck -list-corruptfileblocks,发现有大量的损坏,过滤一

2021-11-15 16:14:45 2249 1

原创 第二次尝试修复Hbase2出现Region不一致,使用 HBCK2 - 2021.11.15

spark任务中入hbase任务全部失败了,查看日志发现hbase出现问题报错日志:在hbase的log中看到报错Call queue is full on xxxx,16000,1611197476326, too many items queued修改了配置文件,增加了队列数量参数说明:https://hijiazz.gitee.io/hbase-callqueue-isfull/并且zookeeper好像挂掉了,后来重启zk。然后重启hbase后出现了region不一致的情况。尝试

2021-11-15 16:04:22 3831

原创 Hbase2修复 - HBCK2

这两天集群扩容后,出现的一系列问题,某个节点数据的VERSION不对,最终没解决掉,最后导致HBase数据丢失以下是所使用到的博客,记录一下以后再次出现好进行解决主要使用HBCK2https://www.modb.pro/db/54575https://developer.aliyun.com/article/683107https://zhuanlan.zhihu.com/p/83237810https://www.daimajiaoliu.com/daima/4edb28b64900404

2021-09-30 16:53:27 315

原创 JAVA 捕获异常所遇BUG

排查程序BUG时发现,在线程池的定时器内并未进行异常捕获,而是在定时器外try catch的,内部实现中从HashMap中Get数据,没有此KEY所有返回了NULL,后面没对NULL做处理,导致程序出现异常,然后上层又没捕获异常,结果就是程序可以正常运行,日志里也没打印异常,只是出现了ERROR并未有异常信息,并且有一些数据回填失败。总结:1. 异常处理无法覆盖异步回调,并不能捕获,异步回调中的异常。 try 语句里的方法,如果允许在另外一个线程中,其中抛出的异常,是无法在调用者这个线程中捕获的。

2021-09-29 13:37:10 264

原创 ElasticSearch - JAVAAPI练习

索引package com.chun.estest.demo;import com.fasterxml.jackson.databind.ObjectMapper;import org.apache.http.HttpHost;import org.elasticsearch.action.admin.indices.delete.DeleteIndexRequest;import org.elasticsearch.action.delete.DeleteRequest;import org

2021-06-09 16:40:38 152

原创 幂等性实现 -接口幂等性

接口幂等性1.什么是幂等性对于同一笔业务操作,不管调用多少次,得到的结果都是一样的。也就是方法调用一次和调用多次产生的额外效果是相同的,他就具有幂等性2.为什么需要幂等性在系统高并发的环境下,很有可能因为网络,阻塞等等问题导致客户端或者调用方并不能及时的收到服务端的反馈甚至是调用超时的问题。总之,就是请求方调用了你的服务,但是没有收到任何的信息,完全懵逼的状态。比如订单的问题,可能会遇到如下的几个问题:1.创建订单时,第一次调用服务超时,再次调用是否产生两笔订单?2.订单创建成功去减库存

2021-06-09 09:05:52 429

原创 LeetCode每日打卡 - 4的幂

不使用循环来今天解题 public boolean isPowerOfFour(int n) { return n > 0 && (n & (n-1)) == 0 && n % 3==1; }首先去做了2的幂这道题,并了解了n&(n-1)的过程,然后思考一下这道题:求二进制中1的个数,理解了n&(n-1)这个题就好做了。 public static int xxxxx(int n) { .

2021-05-31 09:28:37 117

原创 阿里云服务器被[kthreaddi]挖矿病毒攻击

首先我根本https://blog.csdn.net/weixin_41599103/article/details/115403332这个博客试了下并没有成功,所以应该是被侵入的程序不一样先去阿里云里看一下详情明确告诉了是通过docker被攻击了,先将wordpress容器停止并删除容器和镜像kill掉进行,如果有定时任务和文件就删掉(命令上面博客里有)我直接将安全组端口先都关闭了,留下22,然后重启后就好了。...

2021-05-29 14:47:33 659

原创 LeetCode每日打卡 - 汉明距离总和

有点慢,两层循环也可以完成,就是换个方向,外层遍历32大小的bits数组,里层遍历nums的数字每次右移一位,计算方法类似。class Solution { public int totalHammingDistance(int[] nums) { //int 是4byte , 每个byte对应8位(比特),所以一个int是32位 int [] bits = new int[32]; int res=0, len = nums.length; .

2021-05-28 09:54:18 74

bottomangle.png

下拉搜索框的白色箭头

2020-10-13

TcpClient.java

JAVA使用ByteArrayOutputStream、ByteArrayInputStream将对象序列化反序列化,通过JAVA socket实现对象在网络中传输

2020-07-31

Message.java

JAVA使用ByteArrayOutputStream、ByteArrayInputStream将对象序列化反序列化,通过JAVA socket实现对象在网络中传输

2020-07-31

TcpServer.java

JAVA使用ByteArrayOutputStream、ByteArrayInputStream将对象序列化反序列化,通过JAVA socket实现对象在网络中传输

2020-07-31

MobaXterm backup.zip

我们做计算的人,每天都需要与linux服务器打交道,有很多人直接使用linux系统。这个时候SSH客户端应运而生,它的作用就是帮助我们在windows下去连接并操作linux服务器。大数据开发必备软件,优于xshell等软件

2019-08-25

空空如也

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

TA关注的人

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