自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 yarn的job提交流程

yarn的job提交流程1. 客户端向Resource Manager提交job运行的请求2. Resource Manager进行检查,没有问题后向客户端返回一个共享资源路径和job_id3. 客户端将资源放到共享路径下4. 客户端向Resource Manager反馈,资源已经放入共享路径下,并申请运行mrAppMaster5. Resource Manager将用户的请求初始化为一个Task,并放入调度队列当中6. Node Manager领取到Task7. Resource Mana

2020-09-10 23:01:42 577

原创 使用FileInputStream 读取文件

public static void main(String[] args) { InputStream is = null; try { // 实例化一个InputStream // 对文件进行读操作的是FileInputStream is = new FileInputStream(new File("E:/test/temperature/input/1901")); // 定义一个字.

2020-07-06 23:09:38 1151

原创 Hive 自定义函数-UDF

为什么要自定义函数hive的内置函数无法满足实际开发环境的所有情况,这个时候需要我们根据业务自定义函数来解决问题。hive提供了很多模块的自定义功能,如:serde、自定义函数、输入输出格式化等常见的自定义函数UDF:User Define Function.一对一的输入输出,非常使用。UDAF:User Define Agregation Function.用户的自定义聚合函数。多对一的输入输出 UDTF:User Define Table‐Generate Function.用户自定的表生

2020-07-06 17:15:09 186

原创 HQL 复杂数据类型

array案例重庆市 渝中区,江北区,南岸区,沙坪坝区,九龙坡区,渝北区,大渡口区,巴南区,北碚区浙江省 杭州市,绍兴市,宁波市,台州市create table `users`.`t_view`(pageid string,adid_list array<int>)row format delimitedfields terminated by '\t'collection items terminated by ',';注意事项1. 在建表的时候指定某字段的类型:a

2020-07-03 20:51:17 417

原创 HQL 日期函数

1 current_date():返回当前日期select current_date;# 结果:2020-07-032 current_timestamp():返回当前时间select current_timestamp();# 结果:2020-07-03 12:42:25.7253 add_months(start_date, num_months):返回开始日期后num_months的日期select current_date;# 结果:2020-07-03select add_m

2020-07-03 17:00:46 6892

原创 HQL按班级排序问题

排序函数row_number():没有并列,相同名次顺序排列rank():有并列,相同名次采取空位dense_rank():有并列,相同名次不空位数据01 gp1802 8402 gp1801 8403 gp1802 8404 gp1802 8405 gp1801 8106 gp1802 8107 gp1802 8108 gp1801 8109 gp1802 8110 gp1802 8111 gp1803 8112 gp1802 8913 gp1802 8914 gp1

2020-07-03 11:15:29 160

原创 HQL 虚拟视图和行转列函数

案例array 行转列create table `users`.`t_view`(pageid string,adid_list array<int>)row format delimitedfields terminated by '\t'collection items terminated by ',';# 语法lateralView: LATERAL VIEW udtf(expression) tableAlias AS columnAlias (',' col

2020-07-03 10:57:22 115

原创 HQL 静态分区

1. 什么是分区直白一点来说,分区就是在表目录下建立子目录。2. 为什么要使用分区随着系统运行时间的增长,数据文件就会越来越大,当Hive对文件进行搜索时,会对全表进行搜索,导致效率降低。而分区的作用就是将表目录下的文件进行分类,将数据分类后进行存储,这样就会避免全表搜索,提高查询效率。3.什么是静态分区静态分区就是添加数据时需要手动指定分区4. 创建静态分区4.1 语法CREATE [EXTERNAL] TABLE [IF NOT EXISTS] [db_name.]table_name

2020-07-02 11:56:21 352

原创 HQL表操作

1 创建表1.1 语法#1. CREATE [TEMPORARY] [EXTERNAL] TABLE [IF NOT EXISTS] [db_name.]table_name # 表名[(col_name data_type [COMMENT col_comment], ...)] # 列名[COMMENT table_comment] #表批注[PARTITIONED BY (col_name data_type [COMMENT col_comment], ...)] # 分区[CLU

2020-07-01 19:48:11 385

原创 HQL 数据库操作

1 创建数据库1.1 语法CREATE DATABASE [IF NOT EXISTS] database_name # 指定库名称 [COMMENT database_comment] # 库批注 [LOCATION hdfs_path] # 指定库的位置 [WITH DBPROPERTIES (property_name=property_value, ...)]; # 指定库的属性信息1.2 实例CREATE DATABASE IF NOT EXISTS EmployeeCOM

2020-07-01 12:39:43 254

原创 Hive的配置安装教程

1. 环境要求jdk,安装目录:/usr/localhadoop,安装目录:/usr/local2. Hive安装模式内嵌模式使用Hive自带默认元数据库derby来进行存储,一般用于测试。优点:使用简单,不需要配置缺点:只支持单session本地模式使用mysql替换derby进行元数据的存储,hive的相关进程都是在同一台机器上,即本地模式。mysql因为是 独立的进程,所以mysql可以和hive在同一机器上,也可以在其他机器上。通常使用关系型数据库进行元数据

2020-06-19 19:51:38 204

原创 Hadoop MapReduce的生命周期

Hadoop MapReduce 作业的生命周期假设用户编写了一个MapReduce程序,并将其打包成xxx.jar文件,并提交作业,该作业的运行过程如图所示:这个过程分为以下5个步骤:作业提交与初始化。用户提交作业后,首先由JobClient实例将作业相关信息,(比如讲程序jar包、作业配置文件、分片元信息文件等)上传到分不是文件系统(一般为HDFS)上,其中分片元信息文件记录了每个输入分片的逻辑位置信息。然后JobClient通过RPC通知JobTracker收到新作业提交请求后,由作业调度

2020-06-14 16:27:53 339

原创 Hadoop MapReduce架构与解析

Hadoop MapReduce 架构hadoop MapReduce 采用了Master/Slave架构,具体如下图所示。它主要由以下几个组件组成:Client、JobTracker、TaskTracker和Task。1.Client用户编写的Map Reduce程序通过Client提交到Job Tracker端;同时 ,用户可以通过Client提供的一些接口查看作业运行状态。在Hadoop内部用“作业”(Job)来表示Map Reduce程序。一个Map Reduce程序可对应若干个作业,每个作

2020-06-13 19:42:56 436

原创 使用Java语言求一个数的二进制原码

使用字符串接收二进制原码。1、辗转相除2、凑齐位数3、补齐符号位public class Binary{ public static void main(String[] args){ String binary1 = getBinary(125); String binary2 = getBinary(-134); System.out.println(binary1);...

2020-02-15 11:16:18 744 1

原创 用Java实现计算两个日期之间相差的天数

public Calculate { public static void main(String[] args){ int days = getBetweenDays(2019,5,20,2020,2,14); } //计算相差天数 public static int getBetweenDays(int fromYear,int fromMonth,int fromDay,int ...

2020-02-15 09:22:43 971

原创 原码、反码、补码的关系

在了解原码、反码和补码前需要先了解机器数和真值。一、机器数和真值1、机器数一个数在计算机中的二进制表现形式称为这个数的机器数。在机器数中,一个数的最高位是符号位。例如:十进制中的 5 转为机器数就是 0000 0101,-5转为机器数就是 1000 0101。2、真值因为最高位是符号位,所以一个数的机器数并不能代表他的真值。例如1000 0101的最高位1代表负值,其真正的数值是-5,而...

2020-02-15 09:20:37 28930

空空如也

空空如也

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

TA关注的人

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