自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(13)
  • 收藏
  • 关注

原创 学习笔记图

2023-06-27 23:57:20 46

原创 锁的复习:乐观锁、悲观锁、自旋锁

乐观锁和悲观锁悲观锁:总是假设最坏的情况,每次获取数据时都会认为有其他线程对该数据进行修改,所以需要阻塞其他线程,直到自己释放锁。synchronized关键字就是典例。悲观锁机制存在以下问题:在多线程竞争下,加锁、释放锁会导致比较多的上下文切换和调度延时,引起性能问题。一个线程持有锁会导致其它所有需要此锁的线程挂起。如果一个优先级高的线程等待一个优先级低的线程释放锁会导致优先级倒置...

2019-05-21 16:35:18 724

原创 Java中的HashMap原理学习

HashMap构成HashMap结合了数组和链表的特性,使得查询与数据插入和删除速度都最快。HashMap首先是一个Entry类型的数组,Entry是一个单向的链表结构,每一个Entry实体包括一对key、value值,Entry如下:HashMap结构如下:put方法put方法分为key为非null和null的情况:值非为null的情况:public V put(K ke...

2019-05-11 22:17:00 142

转载 写给大数据开发初学者的话

转自http://www.keduox.com/dsjjs/769.html经常有初学者在博客和QQ问我,自己想往大数据方向发展,该学哪些技术,学习路线是什么样的,觉得大数据很火,就业很好,薪资很高。如果自己很迷茫,为了这些原因想往大数据方向发展,也可以,那么我就想问一下,你的专业是什么,对于计算机/软件,你的兴趣是什么?是计算机专业,对操作系统、硬件、网络、服务器感兴趣?是软件专业,对软件开...

2019-03-30 22:40:33 154

原创 volatile与synchronized的比较

参考Java多线程之volatile 与 synchronized 的比较已读懂,基本理解其中的意思,感谢博主。理解该篇知识点需要Java内存模型基础。为什么volatile是轻量级锁,不能用来保持同步。因为volatile通过让线程对标记变量进行连续、有序的read、load、use等操作,使得线程对于变量的改变使得其他线程可见(详见《深入理解Jvm》书P372)。它不是通过阻塞线程来实现线...

2019-03-30 17:18:33 103

原创 jvm垃圾回收器复习

jvm垃圾回收器有4个:串行回收器serial并行回收器parallelcmsg1回收器串行回收器,是个比较古老的存在,是一个单线程的回收器,仅使用一个CPU或一条收集线程去完成垃圾收集,并且在进行垃圾收集时需要暂停所有工作线程,即stop the world。(看着好像很不好用,但是《深入理解jvm》一书中说该收集器仍在使用,说明简单高效的serial还是有适用的场景的)。还有个...

2019-03-15 20:47:31 94

原创 flume初体验

在配置完flume配置文件dir-hdfs.conf之后,使用命令bin/flume-ng agent -c conf/ -f dir-hdfs.conf -Dflume.root.logger=INFO,console来启动flume的agent组件,参数含义如下:agent :启动agent组件-c :指定conf参数,指flume自身的配置文件所在目录-f :指定conf参数,指我...

2019-03-13 10:42:52 95

原创 运行hive过程中出现的几个问题

1.hadoop版本过高的问题我的hadoop版本是3.1.0,下载的hive版本是1.2.2,启动hive之后报错显示版本太高,重新下载了2.3.4的版本2.没有进行元数据初始化在2.3.4版本下hive成功启动,但是运行的时候抛出运行时异常如下Unable to instantiate org.apache.hadoop.hive.ql.metadata.SessionHiveMeta...

2019-03-13 10:37:57 907

原创 使用hdfs进行数据采集学习记录

使用hdfs进行数据定时采集逻辑过程:这是个定时任务,使用timer进行定时任务的进行。新建collectdata类并继承Timer类,在collectdata类中进行run方法的重写。 将待采集数据移动到toupload目录中,然后连接hdfs客户端,在hdfs客户端中利用日期新建目录,将toupload中的带采集数据上传到相应的目录中,然后将toupload中的数据移动到backup...

2018-09-17 21:23:39 760

原创 插入排序学习

插入排序步骤:左边已经局部有序,设其边界为in,那么插入点为out=int+1 将插入点缓存在临时变量temp中 将局部有序的元素从右向左和temp比较,如果不符合排序规则,那么即在局部有序的元素中找到了temp,使得局部有序的元素中加入temp,依然可以保持局部有序。如果符合排序规则,那么将局部有序序列向右移动。 int+1,重复上述步骤 代码实现如下:public stati...

2018-09-15 13:52:26 115

原创 shell中的运算符

 算术运算需要借助exprecho `expr $a + $b` 其中+两遍需要有空格,且exp语句需要用反引号隔开,乘法需要反斜杠echo `expr $a \* $b`关系运算符运算符 含义 eq equal ne no equal gt 大于 lt 小于 ge 大于等于 le 小于等于 for ...

2018-08-16 20:01:17 166

原创 shell变量学习

1. 变量相关 长变量名加{} 虽然可加可不加,但是良好的习惯是加上{}符号,来确定变量名的边界,并且某些特定的地方不加容易出错。 使用变量的时候加$,可以把它理解成取值。 name="gyh"echo $name readonly 设置变量只读,之后该变量不能改变值,和const含义差不多。 name="gyh"readonly name ...

2018-08-16 19:58:26 83

原创 git各分支共享工作区和stage

各分支共享工作区和暂存区(基于自己的试验以及网上评论区得出的结论,如有错误还请指正)初始状态:现master分支下,有readme文件,其内容为空,有rmf文件,且都已commit试验步骤如下:新建试验分支test并且切换过去 在test分支中作如下改动 在readme中添加字符串"test this" 并且保存 删除rmf文件 新建newf文件 不保存直接che...

2018-07-12 11:17:37 2063

空空如也

空空如也

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

TA关注的人

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