- 博客(8)
- 收藏
- 关注
原创 MapReduce核心思想
第一章 Map 1.1 InputFormat数据输入 1.2 map阶段 一个job的map阶段并行度由客户端在提交job的时候的切片决定 每个split切片分配一个maptask,每个maptask是并行运行 每个切片数的大小由块大小决定:split.size = block.size 切片时不考虑数据集的整体,而是针对每个文件进行切片 每个maptask运行在哪个节点是根据节点上的资源来决定的 具体maptask运算过程 按行处理,读数据 按空格切分行内单词 形成kv键值对<单词, 1&g
2021-07-16 20:03:03
291
2
原创 Hive总结
第一章 Hive基本概念 1.架构原理 cli:客户端命令行,可以在这里写sql ①.sql parser:sql解析器,得到sql以后,先解析,再通过元数据,可以在mysql中找到对应的元数据关系,这是一个准备阶段; ②.physical plan:编译器,将sql解析成一个mr的执行流程; ③.query optimizer:优化器,由于sql直接生成一个mr任务计划的时候,运行效率不一定高,所以会对sql进行一个内部优化; ④.execution:执行器,开始一个mr任务。 2.Hive和数据库比较
2021-07-15 22:17:04
344
1
原创 Java实现快速排序。
import java.util.Arrays; public class QuickSort { public static void main(String[] args) { int[] arr = {5, 2, 1, 4, 8, 9, 3, 12, 16, 11, 20}; sort(arr); System.out.println(Arrays.toString(arr)); } public static void s
2021-04-15 11:20:45
143
原创 Java中 类和对象的初始化
成员变量初始化方式: 成员变量为以下数据类型时,都是有默认值的,这叫默认初始化赋值: 基本数据类型:short char byte int long float double; 引用数据类型:接口 类 数组。 显示赋值,在创建成员变量时,就直接在等号右边赋上相应的值,显示赋值一般都是赋常量值: public class Person { private String name = “小明”; private int age = 23; } 代码块初始化赋值: 静态代码块初始化,只能初始化静态变量
2021-04-10 22:25:39
436
原创 Java this和super的理解
this this的含义 this代表当前对象的引用。 this使用位置 this在实例初始化相关的代码块和构造器中:表示正在创建的那个实例对象,即正在new谁,this就代表谁。 this在非静态实例方法中:表示调用该方法的对象,即谁在调用,this就代表谁。 this不能出现在静态代码块和静态方法中。 this使用格式 this.成员变量名 当方法的局部变量与当前对象的成员变量重名时,就可以在成员变量前面加this.,如果没有重名问题,就可以省略this。 this.成员变量会先从本类声明的成员变量列表
2021-04-10 22:24:55
150
原创 Java多态的理解
多态的定义:在有继承和子类重写的前提下,将父类对象的引用指向子类对象。 示例: class Father {} class Son extends Father {} Father fa = new Son(); 多态的理解:编译看左边,运行看右边。 在代码编译时,表现的是父类特征,运行时表现的是子类的特征。 多态的好处: 增加代码的复用,减少冗余。 降低类与类之间的耦合。 多态的应用: 在形参 class Animal { public void walk() { sysout(“动物走路”);
2021-04-10 22:24:23
109
原创 Java继承的理解
继承: 一个子类只可以有一个父类,而一个父类可以有多个子类; 好处: 提高代码复用性; 提高代码扩展性; 类与类之间产生了联系,是多态的前提 3. 弊端:增加了类与类之间的耦合性; 继承的格式: // 用extends关键字, 可以声明一个类继承于另一个类 // 修饰符 class 子类 extends 父类 {} class Father { } class Son extends Father { } 继承中成员变量的特点: 子类可以继承父类的所有属性及方法,但是不能直接访问父类的私有属性; 子类虽然不
2021-04-10 22:23:43
416
原创 对Java封装的理解
封装:通俗来说就是将该隐藏的隐藏,该暴露的暴露,若需要访问就只能通过指定的方式去获取或者修改。通过相应的权限修饰符,可以将某些数据隐藏起来。 权限修饰符: 修饰符 本类 本包 其他包子类 任意位置 private √ × × × 缺省(default) √ √ × × protected √ √ √ × public √ √ √ √ 权限修饰符可修饰的类型: 外部类:public 缺省; 成员
2021-04-10 22:22:45
323
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人