- 博客(45)
- 收藏
- 关注
原创 java实现一个简单的HashMap
1.定义HashMap初始化大小 HashEntry[];由多个HashEntry组成的数组2.定义HashMap会进行扩容的阈值 负载因子阈值 threshold = (int) (DEFAULT_INITIAL_CAPACITY*DEFAULT_LOAD_FACTOR);3.定义hashMap中装载Entry的格式 sizeEntry(key,value,next)put操作:先...
2019-03-05 11:07:23
1840
原创 java 有一个关于学生信息的list列表,实现先对班级排序后对学号排序
先定义一个Person类package DataStruct;/** * Description:xxx<br/> * Copyright (c) , 2019, LafreeZhao <br/> * This program is protected by copyright laws. <br/> * Date:2019年03月03日 * ...
2019-03-03 16:36:33
2810
原创 java 二叉搜索树的实现
转载https://www.cnblogs.com/ysocean/p/8032642.html查找节点查找某个节点,我们必须从根节点开始遍历。查找值比当前节点值大,则搜索右子树;查找值等于当前节点值,停止搜索(终止条件);查找值小于当前节点值,则搜索左子树;//查找节点public Node find(int key) { Node current = root; ...
2019-03-03 16:28:10
281
原创 单链表反转的两种实现方式
面试必问之一/** * Description:遍历、递归实现单链表反转&lt;br/&gt; * Copyright (c) , 2019, LafreeZhao &lt;br/&gt; * This program is protected by copyright laws. &lt;br/&gt; * Date:2019年03月02日 * * @author 赵炳泉
2019-03-02 16:22:55
1487
原创 hive 级联求和 窗口函数
Hive窗口函数LAG案例替换级联求和需求:原始数据:A,2015-01,5A,2015-01,15B,2015-01,5A,2015-01,8B,2015-01,25A,2015-01,5A,2015-02,4A,2015-02,6B,2015-02,10B,2015-02,51、表的创建和加载:create table t_access_times(usernam...
2019-02-23 19:08:33
903
原创 hive 求五分钟之内访问次数达到100次的用户
字段有useriddt(timeStamp)url(10亿pv量)求黑名单求五分钟之内访问次数达到100次的用户离线思路:dt - lag(dt,100) over(distribute by userid sort by dt asc)<五分钟实时思路:滑动窗口函数...
2018-12-25 09:55:23
2654
原创 spark foreach与foreachPartition 详解
spark foreach与foreachPartition每个partition中iterator时行迭代的处理,通过用户传入的function对iterator进行内容的处理一:foreach的操作:Foreach中,传入一个function,这个函数的传入参数就是每个partition中,每次的foreach得到的一个rdd的kv实例,也就是具体的内容这种处理你并不知道这个itera...
2018-11-28 17:55:45
22925
2
原创 hdfs与yarn(mapreduce)问题汇总
hdfs与yarn(mapreduce)问题汇总搭建集群准备?1.配置静态ip 2.配置hostname 3.配置主机名IP和映射关系 4.用root操作Hadoop5.关闭防火墙 6.安装jdk 7.配置ssh免密 8.设置服务器时间同步Hadoop是什么?Hadoop利用服务器集群,根据用户的自定义服务逻辑,对海量数据进行分布式处理Hadoop四大模块三大核心三个服务模块:...
2018-11-21 17:26:59
1594
转载 mapreduce shuffle详细讲解(转)
MapReduce:详解Shuffle过程 转自http://langyu.iteye.com/blog/992916#commentsShuffle过程是MapReduce的核心,也被称为奇迹发生的地方。要想理解MapReduce, Shuffle是必须要了解的。我看过很多相关的资料,但每次看完都云里雾里的绕着,很难理清大致的逻辑,反而越搅越混。前段时间在做MapReduce job ...
2018-11-21 17:23:28
169
原创 Hbase 读写流程,寻址流程,路由机制
Hbase 读写流程,寻址流程,路由机制#hadoop/hbase读写过程1.读请求1.客户端通过zookeeper以及root表和meta表找到目标数据所在的region server2.联系regionserver查询目标数据4.region现在memstore总查找,则在storefile中花钱(可能会扫描到很多的storefile—bloomfilter)2.写请求过程1...
2018-11-19 17:49:17
1288
原创 Hbase架构
Hbase架构#hadoop/hbase物理存储结构:一: 整体结构Table 中的所有的行都按照row key的字典序列排列Table 在行的方向上分割为多个regionregion按大小分割的(10G),每个表一开始只有一个region,随着数据不断插入表,region不断增大,当增大到一个阈值的时候,region就会等分为两个新的region。当table中行不断增...
2018-11-19 17:47:56
367
原创 scala基础
scala基础#scala1.1 值和变量使用var声名一个变量var修饰的变量,内容和引用都可以变使用val声名一个常量或值val修饰的变量是不可变的,注意不可变的不是是内容,而是引用;扩展一下什么是值类型,什么是引用类型,可以使用数据举例,引用不可变,变的是内容/*可变和不可变可变和不可变,指的是变量本身存的内容,值类型变量存的是数据本身,而引用类型变量存的是数据的引用...
2018-11-02 21:55:05
197
原创 scala 方法与函数
scala 方法与函数定义方法定义方法的基本格式是:def 方法名称 (参数列表):返回值类型 = 方法体def add(x:Int,y:Int):Int = x+y println(add(1,2))//也可以定义成//def add(x:Int,y:Int)=x+y//或者def add(x:Int,y:Int){x+y}//没有返回值一定要用大括号那方法体括起来带有参...
2018-11-02 21:51:40
705
原创 scala 基础
scala基础#scala1.1 值和变量使用var声名一个变量var修饰的变量,内容和引用都可以变使用val声名一个常量或值val修饰的变量是不可变的,注意不可变的不是是内容,而是引用;扩展一下什么是值类型,什么是引用类型,可以使用数据举例,引用不可变,变的是内容/*可变和不可变可变和不可变,指的是变量本身存的内容,值类型变量存的是数据本身,而引用类型变量存的是数据的引用...
2018-10-27 16:50:07
161
原创 HDFS HA补充
HDFS HA补充#hadoopHDFS HA命令hdfs dfsadmin -report 报告集群情况hdfs haadmin -getServiceState nn2 查看NameNode2 是active还是standbyhdfs hasdmin -transitionToActive --forcemanual nn2 手动将nn2 转为active会报告nn1 is alr...
2018-09-20 15:50:31
250
原创 mapreduce框架讲解
mapreduce#hadoop/mapreduceMapReduce将复杂的,运行于大规模集群上的并行计算过程高度的抽象到了两个函数:map和reduce编程变得容易,不需要掌握分布式并行编程细节,也可以很容易把自己的程序运行在分布式系统上,完成海量数据的计算MapReduce采用分而治之的策略,一个储存在分布式文件系统中的大规模数据集,会被切分为许多独立的分片(split),这些分片可...
2018-09-20 15:48:04
1066
原创 Hadoop的High Available 机制
Hadoop的High Available 机制#hadoop正式引入HA是从Hadoop2.0开始,之前的版本中没有HA机制HA的运作机制Hadoop—HA 集群运作机制介绍所谓HA,即高可用(7*24小时不中断服务)实现高可用最关键的是消除单点故障Hadoop-ha严格来说应该分为各个组件的HA机制Hadoop——HA yarn——HAHDFS的HA机制详解通过双Name...
2018-09-20 15:45:54
336
原创 Hadoop HDFS文件系统
HDFS详解(性能,架构,基本储存单元,读写分析,组成,SNN合并,安全模式)性能HDFS 天生是为大规模数据存储与计算服务的,而对大规模数据的处理目前还有没比较稳妥的解决方案。 HDFS 将将要存储的大文件进行分割,分割到既定的存储块(Block)中进行了存储,并通过本地设定的任务节点进行预处理,从而解决对大文件存储与计算的需求。、 * 在实际工作中,除了某些尺寸较大的文件要求进行存储...
2018-09-15 15:53:06
2466
2
原创 linux基本命令
linux常用命令基础命令pwd 显示当前路径 cd 进入目录 ll ls ls-l 列出目录的文件 cd ~ cd - cd .. cd ../.. history 显示历史命令 man cmd 显示命令详情 cmd —-help info cmd clear terminal 界面清空查看信息cat /proc/cpuinfo 查看c...
2018-09-08 10:01:52
677
原创 CentOS nginx 从 安装 到 自配yum本地源
CentOS nginx 从 安装 到 自配yum本地源安装第一步首先确认没有安装过nginx yum info nginx 若显示为available 则没有安装第二步进入yum的配置文件夹中 [root@zbq yum.repos.d]# cd /etc/yum.repos.d/第三步使用wget 安装ngnix到/etc/yum.repos....
2018-09-07 00:02:51
2146
原创 c3p0 连接池
使用c3p0连接池来连接数据库,并且封装了一个连接的方法import com.mchange.v2.c3p0.ComboPooledDataSource;import java.beans.PropertyVetoException;import java.sql.Connection;import java.sql.SQLException;import java.util....
2018-09-07 00:00:39
166
原创 JDBC 单例模式 封装 使用预编译(PreparedStatement接口)
使用预编译的PreparedStatement 类 使用上的区别? private PreparedStatement preparedStatement; preparedStatement = connection.prepareStatement(sql); preparedStatement.setObject(int parameterIndex, Object x); p...
2018-09-02 10:40:48
892
原创 JDBC 单例模式 封装
JDBC 单例模式 封装分开方法执行和 sql语句的传入封装一个工具类,将执行语句封装起来 在JDBCManager.class中,使用了单例模式import java.sql.*;/** * 设计一个数据库的访问工具类,采用单例模式 */public class JDBCManager { //数据库的用户名 private final String US...
2018-09-01 01:48:34
1407
原创 Jdbc 连接MYSQL数据库代码模块
获得数据库连接的四个步骤 1. Class.for("com.mysql.cj.jdbc.Driver"); 由于使用的是MYSQL 8 所以必须要使用相应的驱动,相比于mysql-connector-java-5.1.47.tar 在jar包中Driver的位置发生了变化 2. Connection 获得连接 connection=DriverManager.getConnecti...
2018-09-01 00:53:32
3510
原创 (JDBC) 使用 DbUtils 工具类详解
使用 DbUtils 工具类因为在使用jdbc时各种增删改、查询语句写入方法时,封装的不方便,在这里使用很完善的DbUtil 工具类来实现import com.jdbc_connection.jdbcDemo2.Student;import org.apache.commons.dbutils.QueryRunner;import org.apache.commons.dbutil...
2018-08-31 21:35:12
815
原创 Java 集合(List与LinkedList)接口详解
List接口List接口的定义 List interface List extends Collection 通过观察List接口的定义发现其继承得是Collection接口 List、Set、Queue接口继承的都是Collection接口 Collection接口常用方法1. public boolean add(E e); //添加元素到集合2. public boo...
2018-08-12 17:07:38
7541
原创 Java 泛型讲解
泛型为了理解泛型,首我们做一个案例,定义一个坐标类,这个类可以表示三种类型的坐标整数坐标 x=19 y=20小数坐标 x=10.1 y=20.1字符串坐标 y=坐标10 x=坐标x20 要定义这么一个类,可以存放以上三种类型 Object是所有类的父类,所有的类型都是Object类的子类,向上转型 所有的类型都可以自动向上转型为Object类 整数 基本数据类型 int —...
2018-08-07 20:14:51
265
原创 java 异常详解
异常 Exception 异常是一个对象 异常就是错误,是在程序编译阶段或者执行过程中的错误。 学习异常主要是调试程序的错误信息,根据错误信息来发现程序的bug 异常分类:运行时异常和编译异常 异常的级别Error和Exception Error:表示不可抗因素造成的 Exception:表示程序运行错误,是可以调试的 捕获异常的语法 try{ 假设代码运...
2018-08-04 21:25:38
133
原创 Java 多态详解
多态什么是多态?一个事物在不同的条件下,所表现出的多种形态 在开发中使用多态的场景,主要使用用在方法的参数传递上,可以传递接口,也可以传递抽象类 例如public interface Printer { public void print();//打印的方法}在此写了一个Printer的接口,里面有一个未实现的方法print()下面我们写一个ColorPr...
2018-08-04 20:53:03
218
原创 java 接口详解(2)实例
接口 interface1.接口的概念2.接口是一种标准,所有实现该接口的子类都要实现这个标准。3.接口也是一种契约,所有的实现该接口的子类都要实现该接口的条款4.接口也是一种身份特征,所有的子类都具有该身份特征。5.接口里面的所有方法都是抽象的,公有的。6.接口里所有的成员变量都是常量。7.接口可以继承接口接口可以说是抽象类的抽象类 接口只定义抽象方法,但是不提供实现的...
2018-08-04 20:27:51
273
原创 java 面向对象思想与实现
面向对象概念面向对象的设计思想 1.1 什么是面向对象 一种看待问题的思维方式,着眼于找到一个特殊功能的具体个体,然后委托这个个体去做某些事情,我们称之为“对象”。 “对象”是计算机抽象世界看待世界的一种方式,“面向对象”可以用很多方式表达。 (1)世界上每一个事物都可以称为一个对象, 对象有身份/名字(identify),状态(state),行为(behavior) 比如:世界...
2018-08-04 19:49:55
485
原创 java 接口详解
Java 接口 接口,在Java编程语言中是一个抽象方法的集合,接口通常以interface来声明。一个类通过继承接口的方式。从而来继承接口的抽象方法。 接口并不是类,编写接口的方式和类很相似,但是属于不同的概念。类描述对象的所有方法。接口则包含类要实现的方法。 接口无法被实例化,但是可以被实现。一个实现接口的类,必须实现接口内所描述的属性和方法。否则就必须声明为抽象类。另外,在Java中,...
2018-08-01 20:26:34
456
原创 Java 选择排序
package practise;public class Select_Sort {//原理:在一组数组里面定义一个最大数值的下标,让int[index]和其它数值挨个比较,选出最大的值int[i],// 并把该最大值的下标i和我们原先设置的index进行置换,即index=i; //并且把他们两个的位置进行互换,依次类推,直到完全排序好 public static v...
2018-08-01 11:24:11
117
原创 Java 数组小练习
初级 1.定义一个函数,获取某个数组中的最小值package practise;public class GetMin { public static void getMin(int[]num){ int min = num[0]; for(int i=0;i<num.length;i++){ min=(num[i...
2018-08-01 11:22:41
13362
6
原创 java 包装类 Boolean
Boolean一个Boolean类型的对象只包含一个类型为boolean的字段,此类还为boolean和String的相互转换提供了很多方法。构造方法Boolean(boolean value); 该方法创建一个表示value参数的Boolean对象创建一个表示value参数的Boolean对象Boolean b=new Boolean(true);以String变量...
2018-07-28 21:03:47
3928
原创 Java 包装类 Integer
Integer 类构造方法1.Integer(int number) 该方法以一个int型变量作为参数来获取Integer对象 例如Integer number =number Integer(7);2.Integer(String str); 该方法以一个String型变量作为参数来获取Integer对象Integer number = new Intege...
2018-07-28 20:35:24
1016
原创 Java 关于垃圾回收机制的理解
关于垃圾销毁机制对象的销毁每个对象都有生命周期,分配给该对象的内存地址会被回收 Java中拥有一套完整的垃圾回收机制 了解何种对象会被Java视为垃圾 1.对象引用超过其作用范围 2.将对象赋值为null { Example e =new Example(); //当对象超出范围}{ Example e=new Example(); e...
2018-07-27 19:45:43
262
原创 java Scanner类的使用
java Scanner 类Java.util.Scanner是java 5的新特征,可以直接通过Scanner类来获取用户的输入,下面创建Scanner对象的基本语法: Scanner s =new Scanner(System.in); 接下来通过Scanner类的next()与nextLine()方法获取字符串,在读取时一般需要使用hasNext()和hasNextLine()判断是...
2018-07-27 19:26:59
560
原创 Java 的垃圾回收机制
关于垃圾销毁机制对象的销毁每个对象都有生命周期,分配给该对象的内存地址会被回收 Java中拥有一套完整的垃圾回收机制 了解何种对象会被Java视为垃圾 1.对象引用超过其作用范围 2.将对象赋值为null { Example e =new Example(); //当对象超出范围}{ Example e=new Example(); e...
2018-07-27 08:19:44
168
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人