自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 度小满-数据仓库面试

度小满-数据仓库面试 自我介绍 你感觉自身主要能力是什么? 数据开源组件了解多少? Hive、Spark底层怎么解析SQL,怎么加工执行了解吗? MapReduce的环形缓冲区对数据进行排序的算法是什么?进行排序的原因是什么? 快排 环形缓冲区排序的作用和影响? (1)环形缓冲区不需要重新申请新的内存,始终用的都是这个内存空间。大家知道MR是用java写的,而Java有一个最讨厌的机制就是Full GC。Full GC总是会出来捣乱,这个bug也非常隐蔽,发现了也不好处理。环形缓冲区从头到尾都在用那

2022-01-05 10:01:54 546

原创 松果出行-数据仓库SQL面试题

一、SQL题目 松果出行解决了千千万万用户短途出行的需求,现PM想统计最近3个月松果用户连续用车交易的总额,连续用车天数,连续用车开始时间和连续用车结束时间,用车间隔天数等数据指标。已知表字段和类型有:用户id (userjd)为整型,用车开始时间(start_time)为date类型,用车结束时间(end.time)为date类型;交易金额(amout)为浮点型。请按以下回答以下问题: (1)请根据已知条件来设计一张Hive表来存储数据,要求给出完整表结构. (2)请根据设计出的表结构,自行模拟数据,写到

2021-12-25 16:36:15 220

原创 Hive order by limit和sort by limit区别

一、导言 order by和sort by都是hive中的排序方式,区别在于order by只有一个reduce对全表数据进行排序,sort by会按照key值分区在不同的reduce内部排序。那么对排序结果取limit的话,Hive会怎么处理呢? 二、执行计划比较 数据表myhive.score select * from score; score.s_id score.c_id score.s_score score.month 06 04 80 2

2021-11-26 14:12:38 2049

原创 数仓面经-2

快手面试题: 1. 介绍数据仓库模型分层设计、层级作用功能、设计思路? 2. 数仓的设计原则:尽量满足复用性,尽量满足复用性。那么在范式建模上层的DW层,因为有比较多外键,如何输出较为好用的数据表? 3. DW层数据粒度是怎样的?如果做聚合的话,如果确定汇总粒度? 4. DW层和DM层的区别什么? 5. SQL题目: 直播事实表:fact_live live_id user_id time(ms级时间戳) duration 直播维度表:dim_live live_id params 需求输出: user_i

2021-11-22 22:18:14 1764

原创 Hive SQL处理电费数据行转列

Hive SQL处理缺失日期补齐 一、题目 给定一个表temp,字段是 user_id,clo1,col2…col12 12各字段代表12个月电费,求最终结果展现:user_id,month,money 二、处理逻辑 with temp as (select 1 as user_id,212 as 1month,432 as 2month,887 as 3month) select user_id,a.month,a.money from temp lateral view explode(map('Jar

2021-10-12 22:25:32 270

原创 Flink 窗口开始时间解析

一、场景 以有序数据流中的WaterMark和EventTime为例: 设置有序数据流时间语义为EventTime事件时间,即水位线WaterMark等于EventTime,设置窗口大小为5s。 第一次事件时间为 1461756859000(2016-04-27 19:34:19) 第二次事件事件时间为1461756860000(2016-04-27 19:34:20) 触发水位线,窗口数据返回: 窗口的数据条数:1 窗口的第一条数据:(000001,1461756859000) 窗口的最后一条数据:(00

2021-09-15 11:36:35 979 1

原创 SparkCore中groupByKey和reduceByKey

一、概念 groupByKey([numTasks]) 在一个(K,V)的RDD上调用,返回一个(K, Iterator[V])的RDD reduceByKey(func, [numTasks]) 在一个(K,V)的RDD上调用,返回一个(K,V)的RDD,使用指定的reduce函数,将相同key的值聚合到一起,与groupByKey类似,reduce任务的个数可以通过第二个可选的参数来设置 二、性能 groupByKey 全局聚合算子,将所有map task中的数据都拉取到shuffle中将key相同的数

2021-09-01 16:06:31 310

原创 Hive SQL写出连续三天都登录的用户

题目: sql写出连续三天都登录的用户 建表及数据准备 create table test_user_login_3days( user_id int, login_date date ); insert into test_user_login_3days values (123,'2018-08-02'); insert into test_user_login_3days values (123,'2018-08-03'); insert into test_user_login_3d

2021-08-12 14:17:37 3408

原创 数据仓库面经-1

一、乐趣面试(20210811) 1、自我介绍 2、Spark on Yarn的执行过程 3、Spark哪些算子会触发shuffle 4、Spark Shuffle的原理是什么 5、MapReduce和Spark的Shuffle有哪些区别 6、MapReduce的shuffle原理 7、MapReduce的map个数和reduce个数是怎么确定的 8、Hive调优如何定位问题、排查思路 9、Json解析问题: Json数据为二级嵌套格式,并且数据元素个数不确定,也不确定key值是什么,这种情况下如何获取va

2021-08-12 08:54:27 551

原创 Hive SQL处理缺失日期补齐

Hive SQL处理缺失日期补齐一、题目二、Hive建表初始化三、处理逻辑 一、题目 用hive函数实现如图效果 二、Hive建表初始化 --创建表 create table test01(id int,start_dt date,end_dt date); --插入数据 insert into test01 values(1,'2013-04-05','2013-04-09'); 三、处理逻辑 --处理逻辑 select id, date_add(start_dt,i) as new_dt

2021-08-11 15:26:19 4309 4

原创 Hive on MapReduce 性能优化

Hive on MapReduce 性能优化MapReduce完整流程MapTask工作机制ReduceTask工作机制MapTask工作机制:ReduceTask工作机制:性能优化思维导图性能优化 MapReduce完整流程 MapTask工作机制 ReduceTask工作机制 MapTask工作机制: Read阶段:MapTask通过用户编写的RecordReader,从输入InputSplit中解析出一个个key/value。 Map阶段:该节点主要是将解析出的key/value交给用户编写m

2021-05-28 11:07:10 446

空空如也

空空如也

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

TA关注的人

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