自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

百物易用是苏生

进击的小小苏生

  • 博客(120)
  • 资源 (1)
  • 收藏
  • 关注

原创 sparksql 求每个学生top3得分的数据

【代码】sparksql 求每个学生top3得分的数据。

2023-06-02 17:54:39 262

原创 Flink 官网table api例子异常排查

下载的flink 1.13.1版本,scala 2.11版本按照官网,https://ci.apache.org/projects/flink/flink-docs-release-1.13/docs/try-flink/table_api/下载https://github.com/apache/flink-playgrounds这个代码第一个异常:Error: A JNI error has occurred, please check your installation and .

2021-07-13 20:01:53 6361 3

原创 zeroBrane 调试lua脚本 选择redis解释器才debug弹出url和输入密码password

好久没弄redis的lua脚本了最近线上告警错误调试lua,官网只有侵入式代码配置输入ip port,没有配置password的指导查看源码,也都是sftp\http之类协议中的密码还好当初内网写了笔记zeroBrane中一:project–>lua interpreter --> 选择redis然后,选择debug就会弹出 url的输入框 输入"redis://ip:port"下一步,就会弹出密码框二: project–>command line parameters

2021-03-09 15:37:15 824 3

原创 算法:leetcode 1423. 可获得的最大点数

https://leetcode-cn.com/problems/maximum-points-you-can-obtain-from-cards/class Solution(object): def maxScore(self, cardPoints, k): """ :type cardPoints: List[int] :type k: int :rtype: int """ #方法一暴力尝

2021-02-07 00:19:35 285

原创 算法:字节跳动单向链表K长度一组逆序重组

链表反转:给定一个单链表,每k个为一组,一组内的元素反转。如输入: 1-2-3-4-5-6-7-8,k=3,输出:3-2-1-6-5-4-8-7。==每个节点的指针地址不变==倒霉,题意理解歪了,所以还是要认真看题,傻逼了,有个指针地址不变利用堆栈即可,什么特么的不仔细看题,自己给自己加戏,以为要改指针形成新链表,活该自己倒霉了代码 python2:# -*- coding: utf-8 -*-"""Created on Wed Feb 3 16:13:38 2021@author

2021-02-03 16:50:17 245

原创 kafka 知识点小结

1. kafka利用MMAP内存映射磁盘文件技术,利用操作系统内存自我调度,而不是显式调用操作系统内核写数据(但有生产者同步参数ack=all/-1同步写入指定副本数会主动调用内核写数据到磁盘,性能会降低,指定副本数并不是设置的topic副本数,一般指定副本数超过一半就行,例如topic设置副本3(ISR中正常3个brokerid),同步写入副本数2,ack=all/-1就是与两份数据就返回给生产者客户端,设置的ack=1就是写入leader节点一份就返回了,默认ack=0,生产者只发数据管你写没写成功),

2021-02-01 13:51:15 151

原创 算法:经典七节 题目一 LRU内存淘汰机制算法

LRU:数据 Map(K,V) key的value是计算的用户访问key这个内容最近访问的时间根据时间排序,内存不够时,将最久未访问(时间最老(小))的记录删除要求:put/get 时间复杂度O(1)getO(1)容易想到数组,但是数据结构新增删除容量变化移动难,那么就是hashmap记录指针,然后双向链表维护时间顺序中间涉及重复访问的,先删除,再增加到tail尾巴处如果要访问的已经时tail尾巴,就不需要更新如果头部被访问了要移动到tail,需要细节处理,head指向次头有空再尝试代码

2021-01-30 21:15:33 186

原创 算法:经典六节 题目三 完全二叉树节点个数,时间复杂度低于O(N)

O(N)一般代表全遍历一边低于O(N)那就是想方法不用全部遍历,就能得出结果完全二叉树就是它的性子,除了最后一层右边可能缺,其它层以及最后一层左边是满的关键点:怎么不全遍历而确定最后一层哪里不满的,二分思想,左子树最左边深度,右子树最左边深度计算时间复杂度:总深度h,中间不断的h-1 h-2探测 是h**2的复杂度 h=log(N)数量级最后时间复杂度 O((logN)**2)代码后续再补...

2021-01-30 20:59:02 156

原创 算法:经典题六 题目一 字符串最少删除多少字符变成目标字符串的子串

能返回最少删除字符个数,极端空串eg: s1='abcde ’ s2=‘axbc’ [s2删除多少字符变成s1的子串]方法一:当s2比较短的时候,且短于s1长度,可以s2暴力其子串,按照长度排序,依次用KMP算法查看是否是s1的子串,有立即返回方法二:s1短于s2,s1的子串,跟s2算编辑距离 big o(N**3 * M)[编辑距离用s1插入变成s2的最小编辑距离,只给插入,或者反过来s2变成s1的子串,只给删除]编辑距离算法:算法:经典题六 题目二最小编辑距离[每年常考题,工作中也容易用

2021-01-30 20:43:45 1243

原创 算法:经典题六 题目二最小编辑距离[每年常考题,工作中也容易用到]

输入:两个字符串str1和str2,三个整数ic、dc和rc,分别代表插入、删 除和替换一个字符的代价输出:str1编辑成str2的最小代价eg:str1=“abc”,str2=“adc”,ic=5,dc=3,rc=2 从"abc"编辑成"adc",把’b’替换成’d’是代价最小的,所以返回2str1=“abc”,str2=“adc”,ic=5,dc=3,rc=100 从"abc"编辑成"adc",先删除’b’,然后插入’d’是代价最小的,所以返回8str1=“abc”,str2=“abc”,ic

2021-01-30 20:22:46 377

原创 算法:经典题六 题目七 子矩阵最大累加和

输入:整形矩阵输出:子矩阵的最大累加和参见一维最大累加和:算法:经典题六 题目六 数组中子数组最大累加和在二维上,利用一维累加和形式,在每一步记录的最大累加和填充二位dp大流程,必定遍历0~0一行,0~2行,0~3行,。。。0~N-1行 1~1行,1~2,。。。1-N~1行 2~2行,。。。2~N-1行 ... 在这个大流程中,还有中间的 0~M-1列也是这样的框架嵌入进去, 但是中间可以利用之前N次的N遍历,求出二维dp[i][j]代表i行中,只针对i行

2021-01-30 18:18:41 128

原创 算法:经典题六 题目六 数组中子数组最大累加和

输入:数组arr输出:子数组中最大累加和 (连续的,不是子序列)连续子数组,还是子序列?==》子数组 隐含概念,连续的关键点:连续累加不小于0就加进来,小于零了,前面累加的都不要了,从新从0开始累加curr记录累加,只要curr不小于零,一直累加,因为curr>=0对下一个数字为结尾的都有用,但curr<0了就不是最大的了;curr每次添加进来一个数字, curr<0:curr更新为0,丢弃curr前面累加的,此时max更新为之前max、当前数字的最大值(为什么,因为可能全负数

2021-01-30 18:01:11 119

原创 算法:经典题五 题目五 信封套娃层数问题 转化为 数组最长递增子序列问题

输入:一组信封长宽信息 二维数组(假设都是长大于宽的)输出:套信封层数最多的 信封个数,最多套多少层娃要点:第一纬度信息,从小到大排序,第二维信息再从大到小排序,求第二维的最长递增子序列长度就是了为什么?因为:此时第一纬递增,第二维也是递增,不就都能套上了吗?最长递增子序列长度问题见:算法:经典题五 题目四 数组最长递增子序列...

2021-01-30 17:41:54 133

原创 算法:经典题五 题目四 数组最长递增子序列

输入:array整数数组 eg:[3,2,4,5,1,3]输出:最长递增子序列 eg:[2,4,5]方法一 暴力dp#复杂度big o(N^2)d[i] = max( ([ dp[k] +1 for k in array[:i-1] if array[k]<array[i] ] ).append(1) )方法二 加速dp加一个ends数组[]:定义ends[i]:(下标0开始),找到所有长度为i+1的递增子序列的最小结尾是啥eg:array=[3,2,4,5,1,3]array

2021-01-30 17:30:24 116

原创 hadoop:namenode/datanode启动失败 incompatible错误解决

测试环境好久没去关注,今天要测试东西,发现hdfs挂了小伙子们只管自己开发用的kafka\zookeeper没挂,开发后台应用就不管其它组件了年轻人不讲武德然后ambari前端启动hdfs全部服务datanode都ok,就是两个namenode 死活起不来查看后台日志,就是 namespaceID incompatible[namenode都挂了,hdfs就是没用了,把启动了的datanode等相关组件先关了,以免影响]查资料,hdfs-site.xml 中的dfs.namenode.nam

2021-01-29 11:31:22 284

原创 mysql中数据列NULL不算做count 与distinct,空字符串算,唯一索引须确保列不为NULL,否则不唯一

mysql中 count(*) count(1) count(primary_key) 算全量记录count(field) 如果field 中NULL,则不会计算值count(combina_unique_fields1,combina_unique_fields1) 如果组合索引的列中,有一列含NULL,那么它们都不能做到唯一,方案是service层判定NULL,补上默认值,不要NULLdistinct 也是一样,NULL不会当做一条记录空字符串可当做一个确切值,不影响唯一索引...

2021-01-27 15:07:10 956 1

原创 切割再合并文件用split与cat,打死别用zip

公司三层网络,往外出不了东西;外网传入,更是异常困难,只能邮箱每次传不超过几M文件;然后层层传递;用需要idea的一个插件包;用了zip -s 命令切割,然后按文档zip -s=0 --out 只有一半左右大小,用cat xxx* > target ,再 unzip 又是文件夹的形式,idea根本识别不了;TMD,费了半天去检验一个个小文件md5值,傻逼了;记录一下,以后打死不用zip 切割文件合并了正确姿势:split -d -b 4m scala-intellij-bin-2020

2021-01-27 10:12:44 460

原创 pandas操作excel,matplotlib.pyplot画图插入到excel,处理复杂excel简单练习

在数据分析上,一直都在公司zeppelin上敲python/scala代码,进行数据分析,公司内搞了个小考试,操作excel,弄matplotlib画图之类的;好久没弄过这些了,在小技术上感觉被打脸,复习一下,后面再考这了有个记录模板,免得到处翻代码调试了。#公司有三道题:第一道随机填充dataframe,并写入excel第二道读取excel,画图,图插入excel的第二个sheet,并保存excel;画图参考 https://zhuanlan.zhihu.com/p/139052035第三道 读

2021-01-23 21:16:38 7431 5

原创 JVM调优工具arthas简单使用

简单记录以下arthas工具的使用arthas 阿里生产级别的调优工具,开源产品,丰富的中文文档github上的连接文档:https://github.com/alibaba/arthas/blob/master/README_CN.md官网:https://arthas.aliyun.com/doc/arthas-tutorials.html?language=cn快速安装:#下载(不是全量)curl -O https://arthas.aliyun.com/arthas-boot.jar#

2021-01-20 01:42:01 573

原创 spark的cache/persist与checkpoint区别简单小结

参考文章:https://blog.csdn.net/ljp812184246/article/details/53897613提炼结论:1. cache就是persist,计算的时候快照一份到内存中,计算不下可以设置溢写到磁盘;默认只缓存到内存(若果内存不够,放不下会根据血缘系统计算缺失的部分),当driver(sparkContext)结束就没了(包括磁盘上 的数据);用于同一个submit提交任务中经常使用的中间rdd2. checkpoint就是相当于copy计算一份rdd到磁盘上.

2021-01-19 18:50:48 420

原创 JVM参数以及问题定位步骤小结

一 java的参数普通的-Xms最小heap内存,-Xmx最大heap内存都知道所有详细参数,参考: https://docs.oracle.com/javase/8/docs/technotes/tools/unix/java.html版本需要自己去查找了#设置一样大,而已减少内存空间抖动java -Xmx200m -Xmx2001. -横杠开头标志参数#什么都不输入,可以查看标志参数,类似查看help一样java常见的 -version 查看版本, -verbose开启信息信息输

2021-01-19 02:02:45 504

原创 SQL的join与spark join区别

spark中想到了对右表中数据小于开启广播的大小,会自动优化;但是不确定是否左边表也能够自动检测小于并优化为广播;还想到了对sql的支持,在语法上,SQL中是小表在前(左表)驱动大表;然后还有sql中对in/exists/not in/not exists的使用推荐;#这里计简要结论 默认left join形式1. spark在join中只能对右表进行广播,并且要开启广播,数据小于配置 spark.broadcast.blockSize(默认4M,注意磁盘与内存中数据大小可能不一样,压不压缩也

2021-01-15 14:08:41 262

原创 pyspark中存储完数据后同时创建hive外部表

有需求,各种批处理完数据,因部分分析人员不具备spark的能力,比较熟悉sql环境操作需要每个批处理的统计数据文件都能用sql查询,现阶段zeppelin下hive/presto两种都是类sql供分析人员使用下面是zeppelin中pyspark下的简便离子,真实环境,需要hadoop+hive+spark环境并在spark提交时开启hive支持注意:千万不要想当然认为数据类型,在另外的地方写创建表和添加分区,比如默认计算都是bigint,如果在hive中用int创建不报错,但是使用查询会报错

2021-01-08 18:59:48 521

原创 [linux] yum的repo源中有404 Not Found的就命名成.bak备份或删除,不然影响正常yum来安装软件

发现某个yum源是能访问的,但是具体目录页下没有该文件 报404,然后不会再找别的yum源,这个时候就应当考虑将其后缀名改了,如果后续有用,再修改回来即可换yum源中有的问题,可以参考下面链接:http://mirrors.ustc.edu.cn/help/centos.htmlhttps://blog.csdn.net/homewm/article/details/80642851...

2021-01-02 10:52:00 188

原创 [redis]知识回顾之redis主从+哨兵搭建简要记录

1.先准备环境家里的万年老爷机(120G的SSD,300G硬盘 ),手机热点下载,所以只能少利用空间资源,用virtualBox装centos7纯净版其中要点:1.virtualbox创建新机要用动态分配的虚拟磁盘(我选的默认8G),virtual就300M并没有自带的linux,需要去下载centos7的镜像文件,最小版的大概1G,个人用阿里云镜像站点更快:http://mirrors.aliyun.com/centos/7/isos/x86_64/附官网的:http://isored

2021-01-01 18:37:24 918

原创 【servlet】META-INF/services javax.servlet.ServletContainerInitializer 不起作用,不响应断点

我的是maven构建的,打包的话,是将src/main/resrouces目录作为资源根目录,需要把META-INF/services/javax.servlet.ServletContainerInitializer放到这个文件下,后面才能打包的时候将其放到打包的里面根目录,才能生效。【因为原文定义的,就是扫描根目录下META-INF/services/javax.servlet.ServletContainerInitializer定义的实现ServletContainerInitializer接口

2020-11-29 01:52:21 2362 2

原创 [presto小笔记] presto中sql查询语句 因组合条件个数过多导致Compile failed,无法执行

有需求,给几百条记录疑似信息被外界通过某api探测出是否我行客户,进行了相关的诈骗。需分析可能是那些api访问探测的。数据仓库中五六千个api,就算定位含相关字段的接口也有近千个,并非每个映射成了某标准化字段,没有映射标准化的字段,都使用json嵌套放置在单独的一列了。即需要标准化的用户id进行in查询,也需要在混合所有非标准化数据的那列进行 like查询,得到所有记录。然后presto sql爆了compile failed。怀疑是sql太长了,二分法、手动调整 or...

2020-10-21 16:18:22 1423

原创 [ hive 日记] hive创建外部表的location无法使用正则匹配,或模糊匹配来指向多个文件/文件夹,只能通过添加partition分区的方式

问题:有一大堆离线加工的数据,需要hive sql创建外部表,像location能按照正则匹配规则来只加载匹配的数据。结果:查询到,一有资料说,在代码开发中,是可以正则匹配或传入多个path来满足。二,查询官网以及其他资料得知hive sql中创建外部表,location必须明确指定path,无法使用正则或模糊匹配来载入不通路径前缀的文件/文件夹,三,唯一能指向多个不同前缀path的,只能使用添加分区partition时指定另外的location,但是文件是每天产生的,怎么可能每天手动添加一次。.

2020-10-19 17:02:43 798

原创 parquet嵌套数据模型,简要理解中[待验证补充]

参考较较清除一点点的文章(我就不再赘述):https://blog.csdn.net/zwgdft/article/details/105417979难点在于,一:repeated level理解,二:defined level理解,三 对repeated optional对象的null表示,四,parquet在spark中有所变种第二个 defined level理解,我就是展开字段,eg:trans.uri 或spark里 trans.list.element.uri,那层上开始有值,就..

2020-09-10 12:50:15 170

原创 eclipse转到idea的pom.xml文件provided标签不换成compile的处理方式

看到网上都是provided改成compile的方式,我修改了不提交,方便了本地调试,但我本地打包传到开发或测试服务器上,那也是要再改回来,不然面临jar包冲突风险。后面查到,可以对run运行实例进行Configuration。 Run/Debug Configurations窗口下选中Application的实例,在Configuration--》Use classpath of module那行下面,勾选上‘Inchude dependencies with “Provided” sc...

2020-09-08 14:24:56 597

原创 eclipse/idea在项目初次打开时提示找不到common/spring-mybatis.xml文件,${jdbc.driverClassName}找不到,commmon.lang包找不到等

基本都是首次导入项目首次运行时的问题,或者电脑崩了,重启后可能会遇到。首先确定IDE(eclipse或IDEA)里面,maven配置与build配置正常。 我的就是修改配置,忘了save 或apply,导致修改丢失。 maven的HOME路径配置,local respository配置路径,xml里面配置(url和local respository) build就是jdk与jre路径配...

2020-09-04 10:35:22 741

原创 [mysql] mysql插入四字节“表情字符”“\xF0\x9F\xA4\x94”异常

参考博文:https://blog.csdn.net/testcs_dn/article/details/75533784设置table表字符集utf8mb4,或者database库字符集utf8mb4,或者整个数据库字符集utf8mb4但是要mysql-connector-java包要5.1.47及其以上版本以上设置utf8mb4才有效,不然依然报错。一般要重启应用(重新连接数据库),一般不需要重启整个数据库。...

2020-09-02 16:53:20 1498

原创 【mysql】记录一次truncate表后利用binlog恢复情况

今日午休醒来,有点懵,测试环境truncate表时,清错了一张配置表,需要恢复。但是该机器上没有备份机制,开发环境到是有,但极有可能数据不同步。然后开始binlog按时间,与表名,确定了binlog的 --stop-position,但是没有用,因为binlog都是配合备份数据弄的,binlog只是导出执行日志,在当前状态下,再执行一遍,因为没有数据,都是update操作 依然还是空数据。如果配合备份数据,恢复到之前某时刻状态,再用binlog将那个时刻到现在truncate之前操作再执行一遍,

2020-08-21 20:31:27 2779

原创 【mysql】Invalid JSON path expression. The error is around character position 3

select json->'$.0.data' from test_json ;使用myslq的json列名查询,居然出现异常。Invalid JSON path expression. The error is around character position 3原因,json列内的数字field,必须用英文双引号括起来(官网文档可查)更正:select json->'$."0".data' from test_json ;然后突发奇想实验:json-&g..

2020-08-20 15:09:31 8474

原创 spring 的restful风格api与绝路路径的api优先级关系

安全监控平台对上报的restful风格进行映射转换,以免出现无数个api的问题。有的工程将restful风格与绝对路径混用了,导致绝对路径的也被当做restful风格的了,丢失api信息。eg:绝对路径:/help/inforestful风格:/help/{infoid}经过实际测试,两种可以同时存在,即使都使用同样的get或post方式。在使用spring boot 自带的遍历出所有restful风格api时,吧 /help/info 映射成了 /help/{in...

2020-08-05 14:48:23 283

原创 Centos重启后,如何调出sogou搜狗拼音输入法

Centos如何安装搜狗拼音输入法,忘了搜藏和转载文章了。大概步骤都是关闭ibus,然后使用ficx框架,然后适用于linux Ubuntu的安装包转化为 centos系统下rpm安装管理器可安装的包。然后断电了,重启了centos,直接到/bin下面 按照ibus、sogou、ficx一个个的执行试试。发现仅仅,启动 ficx就行了右上角就能看到了...

2020-06-30 15:15:42 605

原创 利用notepad++的正则表达式提取所有匹配的单词(纯原生不用插件)

利用notepad++的正则表达式提取所有匹配的单词(纯原生不用插件)怎么就使用notepad++原生功能就实现提取所有api呢?工作中需要把出过事情的和已经分析过的api接口都进行数据格式化再梳理一遍。基本上就是安全监控规则中,所有监控过的api接口再梳理一遍。几百条规则,每条规则都好好多东西,手动一条条规则查看过来,太难受了。思考了一下,直接数据库中拉取出所有配置,将其复制到notepad++.再利用notepad++的正则表达式提取出所有的api的url。但是比起简单的正则匹配的替换,复杂了

2020-06-18 20:05:11 6563

原创 storm ERROR parallelism must be positive

storm的一个topology出现了ERROR:storm ERROR parallelism must be positive根据ERROR信息中,查看代码行数,在topology中的setSpout中设置的数量问题。同类型可能是setBolt设置的数量问题,等等都必须>0。与设置的topology的NumberWork数量合起来必须小于等于Total slots数量又不一样。(因为内网不通互联网,我也就不贴图了,仅作为笔记)原因是上周突发奇想,看设置Spout/Bolt的数

2020-05-20 13:54:57 334 1

原创 【git】Git Extensions 出现“路径中包含非法字符”的原因与解决方案

Git Extensions 出现“路径中包含非法字符”的原因与解决方案开发机坏了,装了win10,内网自己无安装权限,只有之前遗留的Git Extensions。打开,死活都是“路径中包含非法字符“。这软件估计是C# winform开发,然后说文件路径或文件名包含 <>、*?等非法字符有关的。我把元Git Extensions、git(msysgit),等...

2020-01-10 16:21:56 4376

原创 【zeppelin】cannot access '/var/run/zeppelin' Nosuch file or directory 异常解决

因为之前在ambari中在两台机器上安装了zeppelin,通过hdfs同步配置实现多活,但是当一个notebook过大时,spark卡死的时候,重启容易因为hdfs到本地local的配置同步不一致问题,容易重启失败。 所以,测试环境里通过ambari删除掉一个zeppelin的服务端。 但是再次重启时,出现标题的类似错误。resource_manag...

2019-12-11 09:48:40 520

姜启源3版数学建模pdf

姜启源的第三版数学建模 pdf格式电子版

2013-05-16

空空如也

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

TA关注的人

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