- 博客(122)
- 资源 (1)
- 问答 (1)
- 收藏
- 关注
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 《操作系统导论》吐血万字整理 - 附下载地址及思维导图
前言我看的是这本,豆瓣9.4,很经典的教材书,在文章末尾我附上了网盘链接这篇博客算是一个完整的读书笔记,我大概读了20天看完的,电子版做笔记很方便,推荐一波,很多课上没有讲到的知识在这本书里都详细阐释了全书的思维导图操作系统介绍一个正在运行的程序会做:取址执行。从内存中获取指令,对其解码,执行。操作系统主要利用一种通用的技术,我们称之为虚拟化(virtualization)。 也就是说,操作系统将物理(physical)资源(如处理器、内存或磁盘)转换为更通用、更强大且更易于使用的虚拟形式。
2021-08-07 21:37:09
21964
28
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 hive使用改写with cube优化实例:运行时间180分钟-->30分钟
背景数据需求,要求计算各个维度下的用户数,并将数据落在目标表中,结果需要支持任意维度的筛选。维度包括:平台(platform),是否新用户(is_new),年龄(age),人生阶段(life_stage),城市类型(city_class),省份名称(province_name),使用年限(use_age),当前APP版本(app_version_final),启动播放(start_play)。 启动播放维度涵盖:启动用户,播放用户,启动无播放用户,播放无启动用户。数据举例:platform
2021-07-30 16:39:42
1918
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 从只会单表查询到应用hive完成日常数据需求:hive入门到应用实战
hive入门到应用实战前言1. 语法补充hive查看表信息hive查看某个参数的设置hive grouping_IDhive qubehive rolluphive left semi join (左半连接)hive row_number() over()hive cast函数切换字段的格式hive lateral view explodehive concat拼接字符串concatconcat_wshive nvl相关函数hive日期比较函数2. hive表操作Hive列操作(增加列,删除列,修改列,移
2021-07-30 14:35:41
394
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 linux命令行大全
文章目录前言LINUX命令行大全学习shell基本的操作文件与目录命令重定向echo高级键盘技巧权限进程配置与环境环境vi定制提示符常见任务和主要工具软件包管理存储介质网络检查和检测网络通过网络传输文件与远程主机的安全通信文件搜索归档和备份压缩文件归档同步文件和目录正则表达式编译程序编写shell脚本编写一个shell脚本启动一个项目自顶向下的设计流控制:IF分支语句读取键盘输入while和until循环故障诊断方法case分支位置参数for循环总结前言本文是我阅读了《linux命令行大全》之后做的.
2021-05-12 21:21:13
4026
2
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 git使用指南
目录简单操作版本管理远程仓库分支管理暂时存放一个任务多人协作的工作模式打标签git自定义颜色显示gitignore配置别名爱奇艺的魔方报表代码同步简单操作查看个人信息$ git config --global user.name "Your Name"$ git config --global user.email "email@example.com"初始化一个Git仓库,使用git init命令。添加文件到Git仓库,分两步:使用命令git add <file&
2021-04-08 17:49:58
1622
2
原创 Clickhouse学习整理
前言吃水不忘挖井人,我看的视频课:https://www.bilibili.com/video/BV1Yh411z7os?spm_id_from=333.337.search-card.all.click我看的参考书是下面这本,整体介绍很全面,但是不用全都读,需要的地方看一看就好,有几章废话很多…但是整体质量不错Clickhouse学习笔记clickhouse:列式存储数据库,C++编写,主要用于在线分析处理查询(OLAP),支持SQL,多主架构(客户端访问任何一个节点效果相同)适合的场景:大体
2022-03-23 22:46:02
1817
原创 Hive学习整理
写在前面吃水不忘挖井人视频课地址:https://www.bilibili.com/video/BV1W4411B7cN?from=search&seid=3089375730995965944&spm_id_from=333.337.0.0学习参考书籍:书中内容需要拥有hive和hadoop的基础,通读一遍感觉还需要在实际工作中翻读,但是也算有些收获Hive学习笔记环境变量的配置sudo vim /etc/profile.d/my_env.sh加入信息:export H
2022-02-08 03:27:26
650
原创 Hadoop学习整理
前言吃水不忘挖井人,我看的课是这个,课程带着安装,搞虚拟机,很详细,推荐一波思维导图环境Hadoop102:cd / 表示的是返回/cd ~ 表示的是返回/home/fools$HADOOP_HOME 配置的位置为/opt/module/hadoop-3.1.3集群出现问题如果某个集群namenode或datanode等出现异常,这时候只要先停掉每个集群sbin/stop-xxxxx.sh,删除每个服务器的data,logs目录rm -rf data/ logs/,然后再初始化hdfs
2022-01-27 04:31:52
1899
1
原创 《计算机网络 自顶向下》吐血万字整理 - 附下载地址及思维导图
前言我看的是这本,豆瓣9.4,很经典的教材书,在文章末尾我附上了网盘链接这篇博客是重要的前六章的读书笔记,面试需要掌握的部分,读了之后脑子里能有一个整体的框架,还是收获很大的。但是如果要应付面试,应该还需要多看面经多整理细枝末节的知识思维导图和笔记更适合唤起回忆,串起来已经掌握的知识,不建议作为学习使用,这里只做分享思维导图一 计算机网络和因特网1.1 什么是因特网一个世界范围的计算机网络,互联了遍及全世界计算设备的网络一个为应用程序提供服务的基础设施因特网广泛的使用了协议以完成不同的
2021-12-26 21:24:37
2868
1
原创 《NoSQL精粹》了解NoSQL这一篇就够了
前言本博客写于阅读完《NoSQL精粹》这本书之后,作为一篇读书笔记,想要了解NoSQL的朋友可以从这个博客里面整理一些知识,也希望熟练NoSQL的朋友读完也有收获首先对NoSQL进行一个简单的介绍,最初的NoSQL表示的是“开源分布式的非关系型数据库”,但是NoSQL具体含义是什么并没有一个权威的定义,实际上大部分人的定义是“not only sql”,而并非是对sql说不,不用去纠结为什么不是NOSQL而是NoSQL,我们只需要理解NoSQL表示的是一般具有开源特征,不适用SQL,为了在集群中使用(不
2021-09-09 22:52:25
598
原创 尚硅谷Java数据结构与java算法 全194章笔记整理
前言视频地址:https://www.bilibili.com/video/BV1E4411H73v?from=search&seid=13120683720695451628评价:整个教程的数据结构部分讲的挺好的,知识点全都覆盖了,而且每个数据结构都有代码解释,但是最后20节算法部分讲的有点乱,算法部分我决定直接刷leetcode了数组稀疏数组:二维数组的省内存的保存方法,一般是n行3列,三列分别为行,列,值。二维数组转稀疏数组:遍历整个二维数组,查看有多少个有效数字根据有效数字
2021-08-11 19:28:01
2135
1
原创 哈工大操作系统笔记(4)外设与文件系统
操作系统之外设与文件系统本篇博客是看了李治军教授哈工大的操作系统网课做的笔记,原课程视频地址:https://mooc.study.163.com/course/1000002009?tid=2403044005&trace_c_p_k2=40bf5f80317341d3af0f9fad437208f1#/info本节思维导图:20.外设与显示器操作系统让外设工作起来,使用类似out这样的指令让外设工作起来,等外设工作完了之后写中断处理程序。CPU向控制器中的寄存器读写数据控制器完成
2021-07-19 23:22:32
434
1
原创 哈工大操作系统笔记(3)内存管理
操作系统之内存管理本篇博客是看了李治军教授哈工大的操作系统网课做的笔记,原课程视频地址:https://mooc.study.163.com/course/1000003007?tid=2403044006&trace_c_p_k2=2ca81044d5094af1a1f084ae07ee86e0#/info本节思维导图:14.内存使用与分段内存使用重定位:修改程序中的地址,使之成为相对地址。在运行每条指令的时候才完成重定位,相对编译时重定位,这样更灵活,而且也不会出现在操作系统中切换
2021-07-19 23:18:53
408
1
原创 哈工大操作系统笔记(2)进程与线程
操作系统之进程与线程本篇博客是看了李治军教授哈工大的操作系统网课做的笔记,原课程视频地址:https://mooc.study.163.com/course/1000002008?tid=2403044007&trace_c_p_k2=307652c373f1486c9fcd4f987b661e32#/info本节思维导图:6.CPU管理cpu管理的最直接方法:设置好pc的初值,cpu运行时自动取址执行这样存在的问题是cpu利用率很低,使用多道程序,交替执行的方式可以提高cpu利用率并
2021-07-19 23:11:58
457
1
原创 哈工大操作系统笔记(1)操作系统基础
操作系统基础本篇博客是看了李治军教授哈工大的操作系统网课做的笔记,原课程视频地址:https://mooc.study.163.com/course/1000002004?tid=2403042008&trace_c_p_k2=2673c9a0949246379ecb5ae19fa57e02#/info本节思维导图:1. 什么是操作系统操作系统就是在计算机硬件上面包一层软件,使我们的操作更加方便,高效。操作系统实际上做了什么:它取得 CPU、内存或磁盘等物理资源 (resources),
2021-07-19 23:04:24
832
2
原创 AttributeError: module ‘keras.backend‘ has no attribute ‘eager‘
项目场景:windows环境下,python3.6,各个conda包的版本如下\# Name Version Build Channelabsl-py 0.13.0 <pip>astor 0.8.1 <pip>cached-property
2021-07-01 11:43:05
1086
原创 通过Xshell方便从linux服务器上传下载文件
通过Xshell方便从linux服务器上传下载文件背景我使用的是Xshell6进行的操作,sz和rz命令可以方便地上传下载文件,使用zip和unzip文件可以打包上传下载文件,下面分别进行介绍sz&rzsz命令:从Linux下载文件到本机 , 在Linux终端输入命令回车后,选择本地存储路径即可。命令格式: sz filename 下载文件filenamesz file1 file2 下载多个文件sz dir/* 下载dir目录下所有文件rz命令:直接输进去就行了,然
2021-06-18 15:05:58
297
原创 指数平滑法,二次指数平滑法(Holt’s linear trend method),季节性预测算法(Holt-Winters’ seasonal method)
指数平滑法概念:对过去的观察值得加权平均值进行预测的一种方法,适用于水平历史数据一次指数平滑法:Ft+1 =aYt+(1-a)FtFt表示t时预测值,Yt表示t时观察值。t取1时,F1=Y1。a为平滑系数,介于0到1之间。最终的式子展开为平滑系数接近1:越近的值影响越大,模型对时间序列的反应越及时,适合随机波动较大的数列平滑系数接近0:更适合时间序列比较平稳的序列实际应用时,应该用均方误差来判断预测误差的大小。但是如果数据是有整体趋势的,指数平滑法并不适用(因为无论如何调整参数都是误差极大的
2021-06-18 14:51:03
11522
原创 python文件产生的.idea, .vscode, \__pycache__文件都可以删除吗?
python文件产生的.idea, .vscode, __pycache__文件都可以删除吗?背景工作需要更改部分python代码的文件位置,需要删除不需要的文件,但是代码文件中包含了.idea.vscode__pycache__文件,并不知道要不要删除之后再进行移动,所以查阅了资料,如下。.idea当使用pycharm作为IDE时,会自动生成.idea/文件夹来存放项目的配置信息。其中包括版本控制信息、历史记录等等,可以进行删除,删除它是不会影响代码的正常使用的,但是如果删除就不能使用pychar
2021-06-18 14:40:35
5699
1
原创 hive如何导出数据至本地/HDFS/HIVE?
hive如何导出数据至本地/HDFS/HIVE?应用背景windows下使用xshell进行hive的操作,代码编辑使用vscode。这时候如果有数据需求的话,正常情况是登录hive,输入hql,然后出数据,复制粘贴在excel里稍微美化一下,交给运营和产品,但是这种情况是在数据量不大的情况下可以实现的,那如果行数太多,无法直接复制,如何操作呢?方法一:将数据以文件格式存到到本地分为两步:把数据存储在linux服务器,从linux服务器复制文件到本地windowsinsert方法(有风险)
2021-06-17 16:00:05
5574
1
原创 sql中 group by多个字段,对所有字段做group by
表内容三列内容,其中有重复的内容一个group by首先是大家都明白的一个group by操作,用B做group by的条件,a一共有4个,b一共有6个select count(A),B from test_table group by B同理select count(A),C from test_table group by C两个group by其实就是做了两次聚合,如下例子,先对B列做一个聚合,再对C列做一次先对B列进行拆分,拆分成a,b两个,然后分别针对a和b进行拆分。a
2021-06-16 10:44:39
19790
原创 Adtributor: Revenue Debugging in Advertising Systems 微软论文翻译
前言毕设在做异常点检测与根因分析,就拿微软14年的文章作为主要参考文献了,这里把中文的翻译以及一些整理一起放在博客里,以作分享交流。Adtributor: 广告系统中的收入调试作者:Ranjita Bhagwan, Rahul Kumar, Ramachandran Ramjee, George Varghese, Surjyakanta Mohapatra, Hemanth Manoharan, and Piyush Shah Microsoft原文地址:https://www.usenix.or
2021-05-28 16:05:08
1923
1
原创 一文了解Dao,Service,Controller,View
基本介绍首先,我理解的这三层是这样的DAO层DAO层主要是做数据持久层的工作,负责与数据库进行联络的一些任务都封装在此,DAO层的设计首先是设计DAO的接口,然后在Spring的配置文件中定义此接口的实现类,然后就可在模块中调用此接口来进行数据业务的处理,而不用关心此接口的具体实现类是哪个类,显得结构非常清晰,DAO层的数据源配置,以及有关数据库连接的参数都在Spring的配置文件中进行配置。Service层Service层主要负责业务模块的逻辑应用设计。同样是首先设计接口,再设计其实现的类,接
2021-05-18 20:59:03
199
原创 java lombock知识整理
目录lombock知识整理lombock的使用前提lombock常用的注解的使用`@Getter / @Setter`: 自动生成Getter/Setter方法`@NonNull`: 可以帮助我们避免空指针。`@Cleanup`: 自动帮我们调用`close()`方法。`@ToString`: 直接生成toString方法`@data`: 自动生成相关方法`@cleanup`: 自动资源管理`@builder``@slf4j` 打印日志信息其他lombock知识整理lombock主要是将getter/s
2021-05-13 15:58:23
327
2
原创 HIVE SQL使用row_number()语法查询每种定义方式下,每种视频类型下对应的总播放时长
背景当前有两张表如下:id表示视频id,tag_type表示这种标签是谁定义的,content_tag表示的是视频类型。vv表示视频播放量,id表示视频id。需求1:查询每种视频类型下对应的总播放时长top3SELECT A.content_tag AS content_tag ,SUM(A.vv) AS vv_sumFROM( SELECT A.id AS id ,A.content_tag AS content_tag
2021-05-08 16:45:30
509
原创 sql中if语句和left join的共同使用查询当前表中哪个用户是新用户
sql中if语句和left join的共同使用解决数据需求要做一个需求,查出所需id哪一个是在2021-02-17之后注册的,basic_id表中是一列id,这一列id表示我们所关注的id,最终结果仅需要展示这一列id。is_new表中是描述每个用户都是在哪个日期注册的,这里面包含了所有用户,也就是说basic_id表仅仅是这个表的子集,这时候我想查看id_set表中,哪个id是在2021-02-17之后注册的。代码:SELECT A.id, if(B.id is null, 0, 1) a
2021-04-29 10:57:12
1562
原创 idea从gitlab导入项目之后,maven没有正确下载依赖,dependency和plugin爆红解决思路
问题描述导入gitlab项目之后(idea使用gitlab方法),然后maven不自动下载依赖,爆红,plugins和dependency都是这样解决方法首先是设置网上可以搜索到的一切方法:maven没有自动导入:https://www.csdn.net/tags/MtTaQg4sNTk5MTMtYmxvZwO0O0OO0O0O.html仓库位置等等配置的原因:正确的配置:本地仓库删除法删掉本地仓库的lastupdate文件,然后重新导入项目,或者重新compile maven,或
2021-04-22 10:27:49
2008
原创 环境变量配置完成后cmd输入java什么都不显示/显示空行
问题描述在本身安装好了jdk之后,需要更换java的版本,然后就重新安装了一下jdk,重新配置了环境变量,然后我的cmd就变成这样了:输入java,javac,java -version什么都不显示,然后我仔细核对了环境变量的配置都没问题解决方案更改用户变量中java_home的名称,把所有大写设置为小写问题解决!...
2021-04-22 10:12:33
3348
7
原创 python使用matplotlib制作精美的饼图
目录成品代码详细的分析字体大小设置设置标签值颜色设置突出显示设置绘图区第一个子图的绘制设置刻度位置美化最后记得成品首先上最终成品代码图1的展示# 重新设置字体大小proptease = fm.FontProperties()proptease.set_size('xx-large')# font size include: ‘xx-small’,x-small’,'small’,'medium’,‘ large’,‘x-large’,‘xx-large’ or number, e.g.
2021-04-19 16:50:08
8131
1
原创 使用python搭建一个简易的神经网络 实现对手写数字的识别(每行代码都有注释)
一些简单的介绍如果一个简单的线性分类器不能对数据进行划分,我们就需要使用多个线性分类器来划分数据;使用多个分类器一起工作,这是神经网络的核心思想。神经元不会立刻有输入就产生反应,而是会抑制输出,知道输入增强,强大到可以触发输出,一般我们会用sigmod函数来模拟阶跃函数。输入到下一层结果矩阵中的信号,可以表示为X = W·I,W表示权值矩阵,I表示输入矩阵。这样一来,第二层的最终输出就称为O = sigmod(X)神经网络通过调整链接权重进行学习,这种方法由误差引导。内部节点相关联的误差:一种方
2021-03-30 09:07:34
520
原创 多路查找树,B树,B+树,B*树
多路查找树二叉树的问题分析:二叉树在构建时,需要进行多次i/o操作(海量数据存在数据库或文件中),节点很多的话,构建速度会有影响。节点很多,会造成二叉树过高,降低操作速度我们就可以引入多叉树,多叉树每个节点可以有更多的数据项和更多的子节点。一个多叉树的例子B树:通过重新组织节点,降低树的高度,并且减少i/o读写次数来提升效率。2-3树2-3树是最简单的B树结构所有叶子节点在同一层(B树都满足这个条件)有两个节点的节点叫做二节点,二节点要么没有子节点,要么有两个子节点有三
2021-03-24 21:06:12
125
原创 平衡二叉树 AVL树(java)
平衡二叉树(AVL树)创建二叉排序树{1,2,3,4,5}时,左子树全部为空,查询速度明显降低,无法发挥二叉排序树的优势,所以需要平衡二叉树平衡二叉树它的左右两个子树的高度差绝对值不超过1,并且它的左右两个子树也都是平衡二叉树。当需要创建一颗AVL树的时候,往往需要__左旋转,右旋转,双旋转__旋转方法添加在Node类中的add方法中左旋转当数列{4,3,6,5,7}加入8时,rightHight()-leftHight() > 1成立, 树就不是一个AVL树了思路:创建一个
2021-03-24 21:03:17
163
原创 二叉排序树(java)
二叉排序树binary sort tree,对于二叉排序树的任何一个非叶子节点,要求左子节点的值比当前节点的值小,右子节点的值比当前节点的值大。这个函数写在Node类中,但是需要使用Tree的类来调用排序树增加节点的思想:如果新加入node的值比当前节点小当前节点的left为空,node设置为left当前节点的left不为空,使用当前节点的left递归调用如果新加入node的值比当前节点大当前节点的right为空,node设置为right当前节点的right不为空,使用当前节点的
2021-03-24 21:01:22
120
原创 huffman树(java)
huffman树huffman树是带权路径长度最短的树,权值较大的节点离根很近。路径长度:根节点层数为1,从根节点到第L层节点的路径长度为L-1带权路径长度:从根节点到该节点之间的路径长度与该节点__树的带权路径长度__为所有叶子节点的带权路径长度之和,称为WPL(weighted path length),WPL最小就是huffman树。权值越大的节点离根节点越近的二叉树才是最优二叉树。huffmanTree思路分析从小到大进行排序,每个节点可以看成是一颗最简单的二叉树取出根节点权值最小
2021-03-24 21:00:11
197
原创 堆排序(java)
堆排序时间复杂度O(nlogn),不稳定排序。堆是具有一下性质的完全二叉树:每个节点的值都大于或等于其左右孩子节点的值,称为大顶堆;每个节点的值都小于或等于左右孩子节点的值,称为小顶堆。(不要求左右孩子节点的大小关系)大顶堆特点:arr[i] >= arr[2i+1] && arr[i] >= arr[2i+2]小顶堆特点:arr[i] <= arr[2i+1] && arr[i] <= arr[2i+2]升序使用大顶堆,降序使用小顶堆i是
2021-03-24 20:59:11
97
原创 线索化二叉树
线索化二叉树希望充分利用各个节点的左右指针,让各个节点可以指向自己的前后节点。基本介绍:二叉链表中的空指针域,存放指向该节点在某种遍历次序下的前驱和后继点的指针。线索二叉树之后,Node节点的属性有left和right,left可能指向左子树或者前驱节点,right可能指向右子树或者后继节点。中序线索二叉树基本思路:在二叉树类中要定义一个pre指针,作为保留的前一个节点。在node类中创建类型leftType, rightType1. leftType = 0,指向左子树,leftType
2021-03-17 20:44:15
172
原创 树结构基础(java)
树结构树的数据结构数组:用下标方式访问元素,查找速度快,插入和删除速度慢链表:插入和删除的速度较快,在检索时效率较低树存储:存储和读取效率很高,插入,删除,修改的速度也可以保证常用术语:树的高度:最大层数森林:多棵子树构成森林二叉树的概念每个节点最多有两个子节点的树叫做二叉树,它的子节点分为左子节点和右子节点。二叉树所有叶子节点都在最后一层,节点总数为2^n-1,n为层数,称为满二叉树。二叉树所有叶子节点都在最后一层或倒数第二层,最后一层叶子节点在左边连续,倒数第二层叶子节点在右边连
2021-03-17 20:43:22
131
原创 哈希表(java)
哈希表散列表(Hash Table,哈希表)是根据关键码值(key value)而直接进行访问的数据结构。它通过把关键码值映射到表中一个位置来访问记录,以加快查找的速度。这个映射函数叫做散函数,存放记录的数组叫做散列表。一般来说,java程序直接访问数据库的速度较慢,这时候会加一个缓存层(缓存产品:redis,memcache)来增加访问速度,除此之外,我们还可以在缓存层自己写出一个哈希表来增加访问速度。哈希表:数组+链表数组+二叉树一道题:有一个公司,当有新员工来的时候,要求将该员工信
2021-03-17 20:39:53
401
原创 基数排序(java)
基数排序将整数按照位数切割成不同的数字,按每个位数分别比较。基数排序是稳定的(大小相同的两个数,排序完成之后靠前的那一个仍然在前面)思想:基数排序是依靠空间来交换时间的一种排序,一般我们会设置数据桶为一个二维数组。找到数组中最大的数并查看它的位数按照个位,十位,百位这样for循环,分别进行排序将序列中每个元素取出,放入对应的桶中遍历每个桶,将桶中的数据放入到原数组。统计完成后,要将桶清空。代码实现:package com.sortAlgorithm;import
2021-03-17 20:38:08
94
linux中如何输入下列语句
2020-12-27
TA创建的收藏夹 TA关注的收藏夹
TA关注的人