笔记
十二呀呀呀
这个作者很懒,什么都没留下…
展开
-
20210316设计模式之装饰者
当需要对对象添加功能或责任时,可以选择继承(容易类爆炸)或者修改类(不符合开闭原则),所以可以抽象出一个抽象的装饰类,继承被装饰对象的抽象父类,然后让装饰对象继承装饰类,在实现装饰类时将被装饰对象作为属性,装饰对象通过构造器将被装饰对象传给装饰类,那么这个装饰类对象实现了被装饰类对象的功能扩展。 ...原创 2021-03-16 09:12:34 · 77 阅读 · 0 评论 -
20210315工厂设计模式总结
1,简单工厂模式,将对象的创建交给工厂。 2,工厂方法模式,将对象的创建方法抽象到抽象工厂类中,每一个对象一个工厂类和对象类。 3,抽象工厂模式,将对象进行抽象,每一个工厂类可以创建一系列对象,也就是工厂簇。 ...原创 2021-03-15 10:49:53 · 86 阅读 · 0 评论 -
java动态绑定
简言之:进入那个类空间,就使用那个类的方法和属性。原创 2021-02-22 16:36:29 · 64 阅读 · 0 评论 -
spark学习day02
RDD弹性的7个方面: rdd(弹性分布式数据集) 1、自动进行内存和磁盘的数据存储切换。 2、基于lineage(血统)的高效容错机制。 3、task任务失败会进行特定次数的重试。 4、stage失败也会进行特定次数的重试。 5、checkpoint和persits(检查点和持久化),可主动或被动触发。 6、数据调度弹性 任务错误后可以让其它节点代替该故障节点进行。 7、数据分片的高度弹性 数据可以可以进行手动的数据分片。 ...原创 2020-11-24 09:27:57 · 159 阅读 · 0 评论 -
spark学习Day01
1、shuffle过程的数据会写磁盘,因为数据洗牌重组如果发往某一个节点的partition数据过多,就会造成OOM,当然如果写的cipa磁盘的小文件过多,太多的io会影响效率。 2、每个stage的task数量由最后一个rdd的partition数量决定 3、1:n关系 一个app:多个job(job的个数由一个driver(main)中的action算子决定) 一个job:多个stag...原创 2020-11-13 18:19:43 · 66 阅读 · 0 评论 -
设计模式Day02
UML类图 1、依赖 类中用到了对方 成员变量中用到了对方 方法的参数中使用到了对方 方法的返回值用到了对方 方法体中使用到了对方 2、泛化 是依赖关系的特例,实际上就是继承。 3、实现 是依赖关系的特列,实际上就是实现。 4、关联关系 是依赖关系的特列,是类与类之间的联系,具有到航行:即单向关系或者双向关系。 ...原创 2020-11-13 18:19:09 · 50 阅读 · 0 评论 -
scala学习
AnVal(值类型),AnyRef(引用类型),都是对象原创 2020-11-13 18:17:56 · 65 阅读 · 0 评论 -
设计模式学习Day01
设计模式常用七大原则: 编写软件过程中,程序员面临着来自 耦合性,内聚性以及可维护性,可扩展性,重用性,灵活性 等多方面的挑战,设计模式是为了让程序(软件),具有更好 代码重用性 (即:相同功能的代码,不用多次编写) 可读性 (即:编程规范性, 便于其他程序员的阅读和理解) 可扩展性 (即:当需要增加新的功能时,非常的方便,称为可维护) 可靠性 (即:当我们增加新的功能后,对原来的功能没有影响) 使程序呈现高内聚,低耦合的特性 1、单一接口原则 一个类只负责一项职责,例如地上行驶的...原创 2020-11-09 10:52:59 · 43 阅读 · 0 评论 -
2020-03-25 spark问题总结
在数据导入中用到了udf自定义函数,写方法的过程中因为java习惯写了return语句,导致task无法序列化,无法由driver传入excutor。 fastjson解析json数组,spark可以用flatmap做hive中的explode ...原创 2020-03-25 22:15:07 · 150 阅读 · 0 评论