Hive
ming_rw
这个作者很懒,什么都没留下…
展开
-
找出连续登陆用户(hive sql实现)
问题:找出最近一个月内连续登陆超过7天的用户。思路分析:连续登陆的用户具有连续性,若连续登陆:日期+日期排名 = 固定值;表和字段说明:user_number,dt; user_active_log表 假设用户登陆事件一天只有一条记录,dt 表示用户登陆日期,格式为yyyyMMddhive SQL如下:select user_numberfrom( select user_number, dt, row_number() over(partition by user_numb原创 2021-05-17 21:09:58 · 387 阅读 · 0 评论 -
hive动态分区
动态分区与静态分区的初略理解动态分区:分区字段可以为动态变换的值,一般是依据select中最后的一个字段静态分区:分区字段指定具体一个值,一次insert操作智能插入一个分区动态分区如何使用必备参数set hive.exec.dynamic.partition =true(默认false),表示开启动态分区功能set hive.exec.dynamic.partition.mode = nonstrict(默认strict),表示允许所有分区都是动态的,否则必须有静态分区字段使用方法原创 2021-05-02 01:40:36 · 478 阅读 · 1 评论 -
hive常见优化方式(参数+SQL)
常见参数优化设置并行执行-- 开启任务并行执行set hive.exec.parallel=true; -- 同一个sql允许并行执行stage的最大线程数set hive.exec.parallel.thread.number=8;适用场景:sql查询划分出的stage有存在不相互依赖的,典型的如union all的操作,可以开启任务并行执行map端优化-- 如果一个任务有很多小文件,则每个小文件也会被当做一个块,用一个map任务来完成,-- 在map执行前合并小文件,减少ma原创 2021-05-02 01:28:47 · 483 阅读 · 0 评论 -
HiveSQL解析原理:包括SQL转化为MapReduce过程及MapReduce如何实现基本SQL操作
Hive是基于Hadoop的一个数据仓库系统,在各大公司都有广泛的应用。美团数据仓库也是基于Hive搭建,每天执行近万次的Hive ETL计算流程,负责每天数百GB的数据存储和分析。Hive的稳定性和性能对我们的数据分析非常关键。在几次升级Hive的过程中,我们遇到了一些大大小小的问题。通过向社区的 咨询和自己的努力,在解决这些问题的同时我们对Hive将SQL编译为MapReduce的过程有了比...转载 2019-03-31 09:43:40 · 3074 阅读 · 2 评论 -
Hive相关属性以及参数配置
Hive基本运行配置Hive安装解压安装即可说明:Hive实际上可理解为一个MapReduce的客户端,只需在一个节点上安装即可Hive运行环境配置只需配置hive-env.sh(初始文件为hive-env.sh.template)在文件中指定HADOOP_HOME以及HIVE_CONF_DIR(Hadoop的安装路径以及Hive配置文件夹)3)Hive中元数据存储数据库配置说明:...原创 2019-03-31 11:29:12 · 752 阅读 · 0 评论 -
HQL语句总结
DDL语句一. 数据库的DDL语句创建数据库Create database dbname [IF NOT EXISTS] [LOCATION] filepath;说明:IF NOT EXISTS 表示不存在时创建,LOCATION filepath表示创建时指定HDFS存储位置修改数据库信息Alter database dbname set dbproperites(name=val...原创 2019-04-06 09:47:55 · 283 阅读 · 0 评论 -
Hive中表的形式
外部表与管理表Create [EXTERNAL] table tablename(…)…EXTERNAL关键字修饰的即表示为外部表,默认为管理表。管理表与外部表的区别:管理表使用drop删除表时会将数据删除,外部表不会删除数据,只会删除表结构。管理表使用truncate删除数据时有效,外部表无效。分区表分区表的作用:海量数据下避免全表扫描分区实际上就是分文件夹,将分在...原创 2019-04-06 09:58:01 · 220 阅读 · 0 评论 -
Hive行转列与列转行
1.hive中的行转列行转列便是将数据进行合并现有如下需求:将下表中job和country都相同的任务进行合并。namejobcountry赵云武将蜀郭嘉谋士魏庞统谋士蜀诸葛亮谋士蜀张飞武将蜀使用hive自带的UDAF函数 concat_ws和collect_setSelect t1.base,concat_ws(...原创 2019-04-06 10:26:54 · 145 阅读 · 0 评论 -
MySQL查询结果添加值固定列和自增列
测试数据准备:create table student(stu_id int primary key,stu_name varchar(20),chinese_score int,math_score int);insert into student values(1,'Tom',90,80);insert into student values(2,'Mike',70,90);...原创 2019-04-06 12:43:31 · 3752 阅读 · 0 评论