自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 ==和equals()的区别

查了很多资料,现在整理一下:==:1、对于基本数值类型比较的是两个变量的值,如果相等返回true,反之返回false2、对于引用类型,比较的是两个对象的地址,如果两个对象引用的对象是同一个地址,则返回true,反之返回falseequals():1、对于基本类型的包装类型,比较的是两个变量的值,因为基本数值类型的包装类型重写了equals()方法。2、对于引用类型,比较的是两个对象的地址(没有重写equals()方法),如果重写了equals()方法,则判断的是两个对象的内容(这个是按照我们的业

2020-10-15 16:35:38 137

原创 Spark 中OOM的现象、原因、解决方案和总结

出现OMM的现象出现这种情况的大约有两个情况:1、map执行内存溢出2、shuffle后内存溢出map执行中内存溢出代表了所有map类型的操作。包括:flatMap,filter,mapPatitions等。shuffle后内存溢出的shuffle操作包括join,reduceByKey,repartition等操作。spark中的内存spark在一个Executor中的内存分为三部分:1、execution块,shuffle的数据也会先缓存在这个内存中,满了再写入磁盘中、排序、map的过程

2020-07-23 19:07:23 4221

原创 Spark在yarn集群上运行

先上结论:1、用户通过spark-submit脚本提交应用。2、spark-submit脚本启动Driver,调用用户定义的main()函数,创建SparkContext。3、Driver向RM申请运行资源4、RM为驱动器程序启动Executor,Executor启动后向Driver反向注册自己5、Driver将job切分成一个或多个stage,再将stage分成多个task,根据数据所在的位置将task分配给合适的Executor执行6、在Executor执行的时,会将计算的中间结果数据存储在

2020-07-23 09:28:15 343

原创 spark中的血统

为什么会有血统?Lineage定义Lineage:用来记录不同RDD之间的依赖关系。RDD在Lineage方面主要分为两种:窄依赖和宽依赖。那什么是窄依赖和宽依赖呢?窄依赖:父RDD中的每个分区最多被子RDD的一个分区使用。宽依赖:父RDD中的每个分区被子RDD中的多个分区使用。血统解决了什么问题?在spark的容错机制中,当一个节点宕机了,进行容错恢复时,对窄依赖来讲:计算时只要把丢失的父RDD相应的分区重新计算即可,其他分区不用计算,不依赖于其他的节点。例如:图1,如果RDD_1中

2020-07-21 16:00:32 836

原创 Flink之时间语义与Wartermark

时间语义与Wartermark时间语义乱序数据的处理水位线(Watermark)三级目录时间语义Event Time:事件创建的时间Ingestion Time:数据进入Flink的时间Processing Time: 执行操作算子的本地系统时间,与机器相关在代码中设置EventTime//从调用时刻开始给env创建的每一个stream追加时间特征env.setStreamTimeCharacteristic(TimeCharacteristic.EventTime)乱序数据的处理当Fl

2020-06-10 14:52:18 202

原创 Flink之window

窗口分配器Flink提供了通用的windowAssigner1、滚动窗口(tumblingwindow)2、滑动窗口(slidingwindow)3、会话窗口(sessionwindow)4、全局窗口(globalwindow)创建不同类型的窗口滚动时间窗口:.timeWindow(Time.second(15))滑动时间窗口:.timeWindow(Time.second(15), Time.second(5))会话窗口:.window(EventTimeSessionWindows.w

2020-06-02 15:16:32 113

原创 Hive之DDL

一、创建数据库1、创建数据库,并指定数据库在HDFS中存放的位置create database if not exists db_hive2 location '/db_hive2.db';2、查询数据库1)、显示数据库show databases;2)、过滤显示查询数据库show databases like 'db_hive*';3、查看数据库1)、显示数据库信息de...

2020-06-02 09:55:30 163

原创 Hadoop之企业优化

MapReduce跑的慢的原因MapReduce程序效率的瓶颈在于两点:1、计算机性能cpu、内存、网络、磁盘健康2、I/O操作优化(1)、数据倾斜(2)、Map和Reduce数设置不合理(3)、Map运行时间太长,导致Reduce等待时间太久(4)、小文件过多(5)、大量的不可切分的超大文件(6)、溢写次数过多(7)、Mager次数过多等MapRedeuce的优化方法M...

2020-04-04 21:36:29 117

原创 Yarn资源调度器

Yarn是一个资源调度平台,负责为运算程序提供服务器运算资源,相当于一个分布式的操作系统平台,而MapReduce等的运算程序则相当于运行于操作系统之上的应用程序。Yarn组成部分:1、ResourceManager(RM)主要作用如下:(1)处理客户端请求(2)监控NodeManager(3)启动或监控ApplicatoneMaster(4)资源的分配与调度2、NodeManage...

2020-04-04 20:03:25 111

原创 hadoop之压缩

压缩策略和原则1、压缩是提高Hadoop运行效率的优化策略。通过对Mapper和Reduce运行过程的数据压缩,以减少磁盘I/O,以提高MR程序的运行速度。注意:采用压缩技术减少了磁盘I/O,但也给CPU的运算增加了负担,所以压缩技术运用的当能提高性能,但运用不当也会降低性能。压缩的基本原则:(1)、运算密集型的JOb,少用压缩技术(2)、I/O密集型的JOb,多用压缩技术2、MR支...

2020-04-04 17:09:44 88

原创 Hadoop之组成部分

Hadoop组成(面试重点)

2020-03-25 20:40:32 194

原创 第一次打卡

部分补充平滑方法由于并没有足够的数据,很多事件 x 并没有在训练数据中出现,也就是 c(x)=0,这是有问题的,没有在训练数据中出现的数据,并不代表不会在测试数据中出现,如果没有考虑到数据稀疏性,你的模型就太简单了!平滑方法Additive smoothingGood-Turing estimateJelinek-Mercer smoothing (interpolation)...

2020-02-14 20:18:34 270

原创 MySQL基础(九)

变量系统变量:全局变量,会话变量自定义变量:用户变量,局部变量一、系统变量说明:变量由系统提供的,不是用户定义,属于服务器层面注意:如果是全局级别,则需要加global,如果是会话级别,则需要加session,如果不写,则默认session使用语法:1、查看所有的系统变量show global / session variables;2、查看满足条件的部分系统变量show ...

2020-01-10 22:34:22 181

原创 MySQL基础(八)

视图含义:虚拟的表,和普通的表一样使用mysql5.1版本出现的新特性,是通过表动态生成的数据一、创建视图语法:create view 视图名as查询语句;视图的好处:二、视图的修改方式一:语法:create or replace view 视图名as查询语句;方式二:语法:alter view 视图名as查询语句;三、删除视图语法:drop view...

2020-01-10 09:43:14 48

原创 MySQL基础(七)之TCL语言

transaction control language 事务控制语言(TCL)事物:事务由单独单元的一个或多个sql语句组成,在这个单元中,每个mysql语句是相互依赖的。这个执行单元要么全部执行,要么全部不执行。案例:转账张三丰 1000郭襄 1000update 表 set 张三丰的余额=500 where name = “张三丰”意外update 表 set 郭...

2020-01-09 16:44:13 146

原创 MySQL基础(五)之DML语言

DML语言DML语言又称为数据操作语言:插入:insert修改:update删除:delete一、插入语句方法一:语法:insert into 表名(列名,。。。。)values (值1,值2,。。。)1:插入的值的类型要与累的类型一致或兼容INSERT INTO beauty(id, NAME, sex, borndate, phone, photo, boyfriend_...

2020-01-08 21:10:11 104

原创 MySQL基础(六)之DDL

数据定义语言库和表的管理一、库的管理创建、修改、删除二、表的管理创建、修改、删除创建:creat修改:alter删除:drop一、库的管理1、库的创建语法:create database [ if exists ] 库名;2、库的修改一般不允许修改库3、库的删除drop database 【if exists 】 库名;二、表的管理1、表的创建crea...

2020-01-08 21:09:12 105

原创 MySQL基础(四)

分页查询【????】应用场景:当显示的数据,一页显示不全,需要分页提交sql请求语法:select 查询列表from 表【join type join 表2on 连接条件where筛选条件group by 分组字段having 分组后的筛选order by排序的字段】limit 【offset】,size;备注:offset 要显示条目的起始索引(起始索引从0开始)size要...

2020-01-08 14:18:05 86

原创 MySQL基础(三)

连接查询含义:多表查询笛卡尔乘积现象:表1有m行,表2有n行,结果=m*n行发生原因:没有有效的连接条件如何避免:添加有效的连接条件分类:按年份分类sql192标准:仅仅支持内连接sql199标准【推荐】:支持内连接 + 外连接(左外和右外)+交叉连接按功能分类:内连接:等值连接非等值连接自连接外连接:左外连接右外连接全外连接交叉连接一、sql192标准1、...

2020-01-08 10:01:17 113

原创 MySQL 基础(二)

二、分组函数功能:用作统计使用,又称为聚合函数或统计函数或组函数分类:sum 求和、avg平均值、max最大值、min最小值、count计算个数特点:1、sum、avg 一般用于处理数值型max、min、count可以处理任何类型2、所有的分组函数都忽略null值3、与distinct搭配如:SELECT SUM(DISTINCT salary)AS 和, AVG(DISTIN...

2020-01-05 20:56:27 67

原创 MySQL基础(一)

MySQL基础一、MySQL服务的登录和退出方式一:通过mysql自带的客户端,只限于root用户方式二:通过Windows自带的客户端登录:mysql【-h主机名 -p端口号】-u用户名 -p密码退出:exit或ctrl+c二、MySQL的常见命令查看当前所有的数据库SHOW databases;打开指定的库USE 库名查看表格SHOW tables;查看其他的库...

2020-01-04 10:37:36 126

空空如也

空空如也

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

TA关注的人

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