hive
yagch
这个作者很懒,什么都没留下…
展开
-
collect、explode、concat、lateral view
一、collect_set 和 collect_list 函数collect_set(col) 、 collect_list(col)函数只接受基本数据类型,它的主要作用是将某字段的值汇总,产生Array类型字段,注意该函数只能接受一列参数!我们一般都会配合group by 函数,直接汇总分组数据!collect函数也可以实现一个功能:获取group by后面没有的字段!c...原创 2020-03-30 19:41:17 · 509 阅读 · 0 评论 -
with as 使用
背景当我们书写一些结构相对复杂的SQL语句时,可能某个子查询在多个层级、多个地方存在重复使用的情况,这个时候我们可以使用 with xxx as 语句 ,将其独立出来,极大提高SQL可读性,简化SQL。注:目前 oracle、sql server、hive等均支持 with as 用法,但 mysql并不支持!2019-05-31更新:MySQL8.0大量更新优化,支持Commo...原创 2020-03-30 19:38:44 · 1207 阅读 · 0 评论 -
hive DDL
库createCREATE (DATABASE|SCHEMA) [IF NOT EXISTS] database_name [COMMENT database_comment] [LOCATION hdfs_path] [WITH DBPROPERTIES (property_name=property_value, ...)];create database if not exis...原创 2020-01-11 15:42:53 · 338 阅读 · 0 评论 -
hive个人使用 持续更新
1、连续n天例如连续12登陆,先日期进行从小到大进行排序,再rank ,然后日期减去rank的序号,有多少个相同的连续值就是连续多少天2、数据只有本月和本月数添加第三列是之前12个月的数总和(sum(ct2.CREATE_PROJECT_CURRENT_MONTH_CNT) over(ORDER BY ct2.CURRENT_MONTH_ID ASC ROWS BETWEEN 12 pr...原创 2020-01-11 15:21:22 · 334 阅读 · 0 评论 -
hive修改 application name中文乱码解决
初衷基于spark引擎的hive,在hive客户端中提交查询sql后,在yarn管理界面,或者8088界面,看到的作业名称都是"hive on spark",如下图所示,如果有多个脚本同时在运行时,就不好分辨。修改方式mapreduce 引擎yarn1set mapred.job.name=xxx;yarn2set mapreduce.job.name=xxx;spark 引...转载 2019-12-18 15:51:50 · 1241 阅读 · 0 评论 -
hive 指定yarn queue
Hive提供三种可以改变环境变量的方法,分别是:(1)修改${HIVE_HOME}/conf/hive-site.xml配置文件;(2)命令行参数;(3)在已经进入cli时进行参数声明。下面分别来介绍这几种设定。上述三种设定方式的优先级依次递增。即参数声明覆盖命令行参数,命令行参数覆盖配置文件设定。方法一在Hive中,所有的默认配置都在${HIVE_HOME}/conf/h...转载 2019-12-18 15:15:55 · 5715 阅读 · 0 评论 -
cdh hive mysql 元数据常用介绍
table versionselect * from version;+--------+----------------+----------------------------+| VER_ID | SCHEMA_VERSION | VERSION_COMMENT |+--------+----------------+---------------------...原创 2019-12-18 09:16:54 · 729 阅读 · 0 评论 -
hive 存储元数据信息支持中文
hive 存储元数据信息支持中文在mysql中hive元数据库中执行ALTER TABLE `COLUMNS_V2` CHANGE `COMMENT` `COMMENT` VARCHAR(256) CHARACTER SET utf8 COLLATE utf8_bin DEFAULT NULL;ALTER TABLE `COLUMNS_V2` CHANGE `COLUMN_NAME` ...原创 2019-11-15 16:32:44 · 538 阅读 · 1 评论 -
hive 存储格式的生产应用
相同数据,分别以TextFile、SequenceFile、RcFile、ORC存储的比较。原始大小: 19M1. TextFile(默认) 文件大小为18.1M2. SequenceFile 1 2 3 4 5 6 7 8 9 10 11 12 cr...原创 2019-10-22 21:35:26 · 105 阅读 · 0 评论 -
hive中转义字符的使用
Hadoop和Hive都是用UTF-8编码的,所以, 所有中文必须是UTF-8编码, 才能正常使用备注:中文数据load到表里面, 如果字符集不同,很有可能全是乱码需要做转码的, 但是hive本身没有函数来做这个一、转义字符的特殊情况:自身的转义,比如java有时候需要两个转义字符"\\",或者四个转义字符“\\\\”。1)java的俩种情况:a.正则表达式匹配和string的...原创 2019-10-22 21:30:56 · 14388 阅读 · 0 评论 -
hive中三种去重的方法
一、distinct,group by与ROW_Number()窗口函数使用方法1. Distinct用法:对select 后面所有字段去重,并不能只对一列去重。(1)当distinct应用到多个字段的时候,distinct必须放在开头,其应用的范围是其后面的所有字段,而不只是紧挨着它的一个字段,而且distinct只能放到所有字段的前面(2)distinct对NULL是不进行过滤的,...原创 2019-10-22 21:27:42 · 26731 阅读 · 0 评论 -
hive sql 解析为mapreduce 原理
Hive是基于Hadoop的一个数据仓库系统,在各大公司都有广泛的应用。美团数据仓库也是基于Hive搭建,每天执行近万次的Hive ETL计算流程,负责每天数百GB的数据存储和分析。Hive的稳定性和性能对我们的数据分析非常关键。在几次升级Hive的过程中,我们遇到了一些大大小小的问题。通过向社区的 咨询和自己的努力,在解决这些问题的同时我们对Hive将SQL编译为MapReduce的过...转载 2019-10-22 08:40:12 · 1064 阅读 · 0 评论 -
hive comment 中文乱码
hive注释中文乱码use hive;alter table COLUMNS_V2 modify column COMMENT varchar(256) character set utf8;alter table TABLE_PARAMS modify column PARAM_VALUE varchar(4000) character set utf8;alter table P...原创 2019-10-22 08:01:28 · 267 阅读 · 0 评论 -
hive函数整理
AggregateReturn TypeName(Signature)DescriptionBIGINTcount(*), count(expr), count(DISTINCT expr[, expr…])count(*) 统计总行数,包括含有NULL值的行 count(expr) 统计提供非NULL的expr表达式值的行数 count(DISTINCT expr[,...原创 2019-10-21 19:45:48 · 208 阅读 · 0 评论 -
hive分区表导入数据操作
设置动态分区SET hive.exec.dynamic.partition=TRUE;设置非严格模式,每条sql执行前都要加set hive.exec.dynamic.partition.mode=nonstrict;单分区 动态分区导入数据create table partition_test (id int,area string,dt string);insert ...原创 2019-10-10 22:23:18 · 1015 阅读 · 0 评论