2 Mrs_WuHo_O

尚未进行身份认证

菜鸟一只

等级
TA的排名 32w+

hdfs的读写文件过程

写详细步骤:1、客户端向NameNode发出写文件请求,。2、检查是否已存在文件、检查权限。若通过检查,客户端调用DistributedFileSystem的create方法创建文件,直接先将操作写入EditLog,并返回输出流对象。(注:WAL,writeaheadlog,先写Log,再写内存,因为EditLog记录的是最新的HDFS客户端执行所有的写操作。如果后续真实写操作失败了...

2019-05-09 12:25:36

java的经典算法--递归解决爬楼梯问题

面试中比较常见的算法问题假设你正在爬楼梯,需要n步你才能到达顶部。但每次你只能爬一步或者两步,你能有多少种不同的方法爬到楼顶部样例比如n=3,1+1+1=1+2=2+1=3,共有3中不同的方法返回3publicclassSolution{/***@paramn:Aninteger*@return:Aninteger...

2019-05-09 10:06:43

java 线程sleep和wait

sleep方法不释放锁,指定时间结束后自动醒,wait释放锁,必须由notify唤醒

2019-04-08 21:34:14

java多线程--run方法和start方法的区别

/*创建一个线程Threadt1=newThread();t1.run();只是调用了一个普通方法,并没有启动另一个线程,程序还是会按照顺序执行相应的代码。t1.start();则表示,重新开启一个线程,不必等待其他线程运行完,只要得到cup就可以运行该线程。*/packagepuzzle;publicclasstest{ publicstaticvo...

2019-04-04 16:13:39

java list集合的遍历删除

list集合可以用remove方法来删除元素,但是用简单的for循环遍历来依次删除肯定是错的packageudf;importjava.util.ArrayList;importjava.util.Arrays;publicclassQuanxian{ publicstaticvoidmain(String[]args){ ArrayList<St...

2019-04-03 20:45:52

hive的一些基础知识

Hive是什么?Hive是建立在Hadoop上的数据仓库。通俗的说,数据仓库就是用来作为查询分析的数据库,很少用来插入,修改,删除当前我们使用的hive版本是2.5.3.0-37hive中的基本数据类型数值型:tinyint、smallint、int、integer、bigint、float、double、decimal日期类型:timestamp(纳秒级时间戳)DAT...

2019-03-29 22:06:30

java 集合有序无序

有序、无序是指在进行插入操作时,插入位置的顺序性先插的位置在前,后插的位置在后,则为有序,反之无序而大家容易混淆的就是排序,排序是指集合内的元素是否按照升序或降序来排序实现了List接口的集合类全部有序,如ArrayList、LinkedList实现了Set接口的集合类中,HashSet无序,TreeSet有序(二叉树排序)实现了Map接口的集合类中,HashMap无序,TreeMap...

2019-03-28 21:55:44

java 的四种修饰符权限

同类 同包 子类 其他包 public √ √ √ √ protect √ √ √ × default √ √ × × private √ × × ×

2019-03-27 15:43:41

数据倾斜发生的原因及解决办法

发生原因:1、数据本身分布不均,比如双十一和其它某个普通的日期相比,消费数据差别很大,这时把日期作为分区标志的话,就会造成map任务分布机不均匀。再比如某些恶意账号刷数据时,出现某一个账号下的数据特别多的现象。2、数据不可切分造成一个map处理的数据太多2、机器的原因,机器配置不同,有的运算快,有的运算慢。真倾斜和假倾斜真倾斜:数据本身的原因假倾斜:机器配置不合理,代码写的有问...

2019-03-26 22:09:53

java死锁的构建

在一个多线程得环境当中,A线程拿了a资源再等待b资源,B线程拿到了b的资源,正在等待获取a资源。但是要求a和b资源均为共享资源,若不是共享资源,则不存在线程同步问题。publicclassDeadLock{ staticclassMyThreadextendsThread{ privateintid; publicstaticObjectresourceA...

2019-03-26 21:58:03

java实现快速排序

publicclassTestQuickSort{publicstaticvoidquickSort(int[]intArray,intlow,inthigh){if(){return;}}intlow_temp=low;inthigh_temp=high;in...

2019-03-26 20:25:00

Object的常用方法

equals:判断两个对象是否相等,java原生实现的是比较地址,重写后可自定义,多改成按内容比较。比如String,Integer等。hashcode返回对象的hashcode值,是个int值,多用于hash结构的对象,比如hashset、hashmap,用于查找位置之后的再进行equal的比较,提高查找效率。toString对象的字符串化toClass返回对象的字节...

2019-03-26 17:22:30

java的单例模式--饿汉模式

单例模式,用来是实现来产生一个对象,在一个应用进程中自始至终,只有一个实例对象饿汉模式,来了就要吃publicclassEleManSingle{privatestaticEleManSinglesingleton=newEleManSingle();privateEleManSingleton(){}publicstati...

2019-03-25 21:31:06

java中的多态

比如你要做个篮子放水果,你当然不希望造这样的篮子--苹果篮子,橘子篮子,梨篮子,正常人都会想,麻烦啊,我就造个篮子,什么都能放,干嘛造那么多啊?回归程序:你造个篮子basket();参数是水果fruit,这样你调用的时候就可以这样basket(fruitf);然后往里放苹果啊,梨啊,什么都行,只要是水果类的子类好处:这样设计你的程序,等你的参数变了的时候,只要还是水果,你就不用去改程序...

2019-03-21 15:19:53

mysql的一些基础知识

DDL:DataDefinitionLanguage(数据定义语言)create、alter、dropDML:DataManipulationLanguage(数据操作语言)insert、update、deleteDQL:DataQueryLanguage(数据查询语言),主要是select...

2019-03-13 21:39:04

hive项目准备工作的常用模式

当我们开发项目,进行数据仓库的操作时,我们没必要一条命令一条命令的写,我们可以把命令分门别类的写在操作系统脚本文件里,然后把命令中的变量用参数代替(以后只需要修改这些参数就行了),然后去执行这些文件就行了。文件多了也需要分开放置到不同路径里,常用的四个路径是config、create、deal、udf。config:存放相关配置变量create:存放表结构数据deal:具体的sql脚本udf:ud...

2018-05-20 08:43:41

JDBC和DBCP

jdbc是JavaDatabaseConnectivity(java数据库连接)是一种用于执行sql语句的javaapi示例源码(防注入、使用PrepareStatement):首先要利用反射注册加载驱动,然后是建立连接,这个过程需要指明url(类似于ip,用于识别数据库的位置,其写法为jdbc:mysql://192.168.88.107:3306/Mrs_WuHo_O,其中jdb...

2018-04-09 20:21:58

java版二次排序的流程

基本的二次排序,以按照两个字段排序为例。先按第一字段升序,再按第二字段降序。二次排序的核心是把原来的key--value对组合成key,称为newkey,value还是value。与原来的wordcount相比,多了一个“分组”步骤,就是把newkey中的第一个字段相同的数据放到一起,再按第二个字段排序。如图,pre-map阶段,namenode切分文件后,再把文件内容按行(\n)分割,距行首的偏...

2018-04-08 21:50:08

MapReduce具体过程

统计hdfs某个文件中重复单词的数目(WordCount),每个单词用空格分隔,统计每个单词的出现频率,说明MapReduce框架的过程。进行map过程之前,进行Pre-Map过程。框架帮我们把文件切分,NameNode把文件切分成block,每个block最大为128M;文件小于128M时,文件多大形成的block就是多大;一个block不能跨多个文件。分隔好后,针对每个文件内部,再根据换行符\...

2018-03-17 22:53:59

大数据生态组件简述

1、客户端向 nameNode 发送要上传文件的请求2、nameNode 返回给用户是否能上传数据的状态3、加入用户端需要上传一个 1024M 的文件,客户端会通过 Rpc 请求 NameNode,并返回需要上传给那些 DataNode(分配机器的距离以及空间的大小等),namonode会选择就近原则分配机器。4、客户端请求建立 block 传输管道 chnnel 上传数据5、在上传是 datan...

2018-03-17 09:16:27

查看更多

勋章 我的勋章
  • 勤写标兵Lv1
    勤写标兵Lv1
    授予每个自然周发布1篇到3篇原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。