日常工作问题记录
文章平均质量分 64
winrar_setup.rar
对,我懒
展开
-
一招解决 Mac JD-JUI 打不开问题
JD-JUI是一款 Java 反编译工具,Mac 版的 JD-JUI下载之后总是遇到打不开的问题.双击之后工具闪一下立马退出.网上搜索了很多资料,都是让修改universalJavaApplicationStub.sh文件,但按照网上的方式操作都没有成功.研究后发现 应该是 JD-JUI执行的时候找不到合适的 JAVA_HOME ,导致这个问题的原因可能有很多,包括环境变量设置错误,本身 JDK 版本过高等.我的电脑安装了 JDK8 和 JDK17,默认启用的是 JDK17,所以猜测当 JD-JUI原创 2022-04-20 09:15:46 · 1399 阅读 · 0 评论 -
避坑:Spark Sql的Order By排序是不稳定的
目录问题背景实验1- 构建测试用例2- 执行测试sql原因1- 代码定位及问题追踪2- 单分区设想结论问题背景生产环境数据产品项目出现相同代码多次执行结果不同的问题,经过排查,发现了问题出现在first value的窗口函数返回的结果上.同一批数据执行相同sql返回值不相同.sql类似如下形式:select * ,first_value(s_id) over (partition by c_id order by s_score)first_show f原创 2021-10-31 23:32:50 · 5063 阅读 · 1 评论 -
Linux使用shell递归遍历文件并打印所有文件名的绝对路径
#/bin/bash function recursive_list_dir(){ for file_or_dir in `ls $1` do if [ -d $1"/"$file_or_dir ] then recursive_list_dir $1"/"$file_or_dir else file=$1"/"$file_or_dir echo $file .原创 2021-03-25 23:12:44 · 3110 阅读 · 0 评论 -
Linux下按照文本第一列的内容切分文件
cat ../res_all.csv | awk '{for(i=0;i<NF;i++){split($i,array, ",");print "echo "$i" >> "array[1];}}' | bash原创 2020-11-16 18:09:43 · 1660 阅读 · 0 评论 -
错误: 找不到或无法加载主类 xxxx
使用IDEA安装了Scala之后执行helloWord代码报错。错误: 找不到或无法加载主类 HelloWorld设置代码文件夹为sourceroot dir解决标记完成后,src文件夹变为蓝色。再次执行OK原创 2020-11-13 18:26:03 · 335 阅读 · 0 评论 -
记一次HDFS空间清理:Non DFS Used
文章中记录了问题发现和解决的过程,单纯为了解决问题的伙伴请到最后一段。发现问题入职到公司后,维护集群时有一项日常不是很频繁的任务就是清理集群数据。我们公司的Hadoop(CDH 5.x)集群大概不到50台的样子,总DN容量在450T左右。这个数据量对于大的互联网公司可能不算什么,但我之前一直也没遇到过如此多的数据,百T级别的容量都要清理空间,感觉公司的数据量实在是庞大。但随着入职时间的增加,在进行日常运维的时候发现了一些不太合乎逻辑的问题。比如我们看到的告警信息如下机器的总容量是7.8T原创 2020-10-23 15:43:58 · 4856 阅读 · 5 评论 -
关闭Linux服务器的swap交换空间
备份/etc/fstabcp /etc/fstab /tmp/fstab.`date +%F`删除 /etc/fstab 中 swap 挂载项vim /etc/fstab删除带swap的行关闭所有 swapswapoff -a观察进程使用 swap 和 swapoff -a 之后回收情况,对于不能回收 swap 的进程需要安排时间重启检查:free -m # 应该 Swap 这一行显示全是 0...原创 2020-10-22 16:33:56 · 1311 阅读 · 0 评论 -
当数仓中表被误删
实际工作中,误删表虽然是小概率时间,但同时也是不可避免又最不想发生的事了。那么,万一误删了如何处理呢。1-表还在,数据被误删了2-哎,都没了第一种情况a-从HDFS的回收站中将数据重新拷贝到表格中hdfs dfs -cp /user/USER_NAME/.Trash/user/hive/warehouse/db_name.db/table_name /user/hive/....b-执行加载数据命令load data inpath 'path...' into tabl.原创 2020-08-21 11:30:16 · 301 阅读 · 0 评论 -
使用spark计算IRR(内部收益率)
概念IRR又叫内部收益率,通俗解释就是内部收益率越高,就说明投入的成本相对较少,这时候可以获得的收益也就相对更多些。另外我们也可以理解为要决定一个项目接受与否,但又不适应现实情况的一个贴现率。这两种理解都算是通俗的解释IRR 内部收益率在Excel和Pandas中有对应的函数,因需要计算的数据量太大所以给出spark解决方案,本文只做实现记录和部分概念讲解。IRR代码在网上IRR 内部收益率有对应的Java和Oracle sql实现,Java代码如下。原文链接 public st原创 2020-08-11 10:54:43 · 3041 阅读 · 0 评论 -
1.1 GB of1 GB physical memory used
原文链接 : https://blog.csdn.net/dd390738878/article/details/9785679问题描述:在跑一个mapreduce程序的过程中,提示内存溢出的错误,确定非程序影响。百度了很多可能的问题产生原因,依次排除后,终于解决了。想把前人的经验总结一下方便后人查阅。异常提示:Container [pid=23708,containerID=container_1369623433359_0404_01_000151] is running beyond ph转载 2020-06-02 14:01:16 · 1232 阅读 · 0 评论 -
Failed to run task: 'bower --allow-root install --offline' failed.
编译zeppelin遇到标题所述问题.解决办法:I was getting the same problem here, and this answer is just a guide, for those who are getting the same error: The maven output was similar to yours:[ERROR] Failed to ex...转载 2020-03-25 17:46:01 · 1313 阅读 · 0 评论 -
CDH集群NN频繁宕机,启动后master102重复进入安全模式
最近集群一直在报块太多的警告,NN一直宕机.宕机的原因是full gc的时间太久,跟journal node的通信断开了.首先尝试增加journal node和name node的time out时间,默认为20s,增加到10分钟之后问题没有改善.time out报错如下:FATAL org.apache.hadoop.hdfs.server.namenode.FSEditLog: ...原创 2020-03-07 11:56:57 · 583 阅读 · 0 评论 -
选择排序中用异或实现swap()时出现的问题
具体写了几个简单的排序,其中swap函数使用了异或的方法实现:/** * 交换数组中的两个数,一个数自己与自己异或结果为0;一个数与0异或,结果还是自己。 * * @param arr * @param i * @param j */public static void swap(int[] arr, int i, int j) { arr[i] = arr[i] ^ a...转载 2020-03-06 23:39:25 · 425 阅读 · 0 评论 -
GP数据库锁表如何解锁
此文转载自夏天+的博客GP锁表导致同步数据写不进去,网上找了一下解锁的步骤,如下:1- GP查看数据锁SELECT pid,rolname, rsqname, granted,current_query, datnameFROM pg_roles, gp_toolkit.gp_resqueue_status, pg_locks, pg_stat_activityWH...转载 2020-03-05 10:36:31 · 3895 阅读 · 0 评论 -
spark SQL执行task数骤增
因为SQL中的一个表写入方式不严谨,造成小文件过多,导致task数骤增.没有合并小文件时,文件数27000+,启动任务后task数11w+,合并后文件数70多,task数3000多.小文件较多的表同其他表join时,猜测会每个文件同其他表的文件做关联.这两形成了文件维度的笛卡尔积.后续追一下源码看看启动task的部分....原创 2020-01-08 17:39:49 · 1257 阅读 · 0 评论 -
ImportError: No module named 'tkinter'
执行Python脚本过程中遇到如题报错.在网上搜索一下,得到的结果都是执行: yum -y install python3-tk但是我执行这个命令得到的结果错误如下:[root@~]# yum -y install python3-tkLoaded plugins: fastestmirror, langpacks, versionlockLoading mirror speed...原创 2020-01-08 14:08:33 · 254 阅读 · 0 评论 -
升级服务器内核解决Kernel内存泄露
集群新增几台机器后,个别机器出现内存使用居高不下的状况.128G的内存使用量长期在80多G,截图如下:使用smem命令查看内存使用状况[root@机器名 ~]# smem -twkArea Used Cache Noncache firmware/hardware 0 ...原创 2019-12-31 11:12:38 · 1384 阅读 · 2 评论 -
Hive的Udf Jar包不能太大
Hive Udf的注册流程我们都清楚,是写好代码之后打成jar包,将jar包存放在HDFS上.前端时间因业务需要,增加一个对数据加密的UDF,该功能因为依赖了外部库,所以在POM文件中添加了一些外部依赖.因为maven本身会将我们添加依赖的依赖链处理好,所以导致写完代码打包后,Jar包过大.添加加密UDF前jar包大小为30k+,增加后为70M+,没考虑太多,直接上传.第二天早晨...原创 2019-12-26 14:29:11 · 1002 阅读 · 0 评论 -
记一次CDH集群 无法找到主机的NTP 服务,或该服务未响应时钟偏差请求
为了单纯来看问题怎么解决的伙伴,先给出解决方法:重启agent解决过程如下CDH的NTP服务报错是很常见的问题.一般情况下,出现无法找到主机的NTP服务,或该服务未响应时钟偏差请求错误都是因为NTP服务异常,可以运行systemctl status ntpd查看NTP进程,执行systemctl restart ntpd 可重启该进程.最近集群出现类似错误,报错如标题,...原创 2019-12-09 11:40:17 · 5410 阅读 · 4 评论 -
Azkaban任务指定Executor
指定Executor的操作是针对flow的.单独job设置不生效(亲测)想达到flow到指定executor上执行的方式有两种,都是通过schedule界面的配置完成.前提:必须是这个 azkaban project的管理员1- 临时一次执行在flow的界面中,flow右上角有个schedule/Execute flow的按钮,点击一下,界面如下点击flow Param...原创 2019-12-02 17:02:47 · 3193 阅读 · 0 评论 -
Azkaban 任务执行逻辑错误
如果自己定义的Azkaban Job Type的同一个Job脚本中有多个阶段,那么在任务失败中断是,Azkaban不会从中断这一步开始执行,会从中断这步的下一步开始.如果中断环节是数据的输出,会导致任务成功但没有数据结果.目前查看了Azkaban调用Job Type的部分,发现自己定义的PortKey插件中,只是定义了执行单位的构造部分,将要执行的脚本存入构造器中,后续的调度和中断回复,还是A...原创 2019-11-29 13:46:45 · 709 阅读 · 0 评论 -
记一次Azkaban任务报错:unable to create native thread
在一次更新环境信息任务中,需要重启Azkaban调度系统,重启后经常有任务出现如下报错现象: java.lang.OutOfMemoryError: unable to create new native thread,报错的原因有很多种,有的是不能创建spark的context对象,有的是不能启动spark webUI,但最终的栈信息都是java.lang.OutOfMemoryError:...原创 2019-11-29 13:39:35 · 642 阅读 · 0 评论 -
记一次hive建表报错
执行create table table_name xxx as select xxx的语句语句如下create table table1STORED as ORC TBLPROPERTIES ('orc.compress'='SNAPPY') asselectfield1 as `名字1`,field2 as `名字2`,from table2报错如下Query I...原创 2019-11-22 14:53:56 · 2001 阅读 · 0 评论 -
使用Sqoop导数据到Hive报错:No more data to read from socket
使用sqoop导数据到hive,遇到如下错误Caused by: java.sql.SQLRecoverableException:无法从套接字读取更多数据(can not readmore data from socket)19/11/11 15:35:33 ERROR tool.ImportTool: Encountered IOException running import ...原创 2019-11-11 15:46:08 · 1218 阅读 · 0 评论 -
记一次CDH集群磁盘扩容(热插拔)详细步骤
数据仓库的其中一个作用是保存公司完整的业务或其他数据,在RDB如mysql/Oracle中,数据太多可以进行归档,但数仓不可以.这就导致了数仓中的磁盘占用率越来越高,终归有一天,磁盘不足,那给CDH集群增加磁盘就不能避免. 以下是我实际工作中一次增加磁盘的记录.分享出来希望可以帮到有缘人.分为以下三个部分描述 1-磁盘热插拔的注意事项 2-...原创 2019-11-21 16:22:55 · 2907 阅读 · 0 评论 -
记一次spark 任务GC超时
执行spark SQL任务,最初看到的报错日志如下:WARN netty.NettyRpcEndpointRef: Error sending message [message = Heartbeat(1,[Lscala.Tuple2;@38ab5005,BlockManagerId(1, yarn104.dc.dianrong.com, 38784))] in 1 attemptsorg...原创 2019-11-20 17:45:47 · 6943 阅读 · 0 评论 -
记一次CDH集群磁盘空间报警
事情经过:早晨上班查看集群时发现集群HDFS和Yarn爆红,如下:点进去发现HDFS报错为xxx机器的/data空间少于%10,/data是我们集群的数据存储文件夹.Yarn的报错为xxx机器日志存储文件空间不足.该日志存储位置也是在/data下面的.集群因很久没有做过扩容而且数据一直在增加,在跑大的MR任务的时候,因为MR会生成临时文件,时常因为临时文件多而发出空间不足的警告.但...原创 2019-11-20 15:33:39 · 1099 阅读 · 0 评论