hive学习08天-一次hvie面试题
题目1:计算用户发过多少朋友圈、获得多少点赞 用你擅长的语言计算,数据如下: T1:10w行数据 uid(用户id) log_id(日记id) uid1 log_id1 uid1 log_id2 uid2 log_id3 ... ...T2:1000w行数据,注:没有被点赞的日记不记录 log_id(日记id) like_uid(点赞的用户id) log_id1 uid2 log_id1 uid3 log_id1 uid4 log_id3 ud2 ... ... 计算 uid(用户id) 发过多少日记 获得多少点赞 uid1 2 3 uid2 1 1 ... ... ...
解法:
①统计每个用户发表日志量 select uid,count(*) as log_count from T1 group by uid②统计每个用户的点赞量 select uid,sum(like_uid) as log_like_count group_by uid from T1 join T2 on T1.log_id =T2.log_id③将两个表合并 select tt1.uid,tt1.log_count,tt2.log_like_count from ( select uid,count(*) as log_count from T1 group by uid )tt1 join ( select uid,count(*) as log_like_count group_by uid from T1 join T2 on T1.log_id =T2.log_id )tt2 on tt1.uid=tt2.uid
题目2:map及rudece阶段共有几次排序
1)当map函数产生输出时,会首先写入内存的环形缓冲区,当达到设定的阀值,在刷写磁盘之前,后台线程会将缓冲区的数据划分成相应的分区。在每个分区中,后台线程按键进行内排序
2)在Map任务完成之前,磁盘上存在多个已经分好区,并排好序的,大小和缓冲区一样的溢写文件,这时溢写文件将被合并成一个已分区且已排序的输出文件。由于溢写文件已经经过第一次排序,所有合并文件只需要再做一次排序即可使输出文件整体有序。
3)在reduce阶段,需要将多个Map任务的输出文件copy到ReduceTask中后合并,由于经过第二次排序,所以合并文件时只需再做一次排序即可使输出文件整体有序
转载于:https://www.cnblogs.com/students/p/10957353.html
hive学习08天-一次hvie面试题相关推荐
- 最全的Hive学习笔记
最全的Hive学习笔记 1. 什么是hive 1.1. hive基本思想 1.2 为什么使用Hive 1.3. Hive的特点 2. hive的基本架构 3. hive安装 3.1. 最简安装:用内嵌 ...
- 【转】Hive学习路线图
原文博客出自于:http://blog.fens.me/hadoop-hive-roadmap/ 感谢! Hive学习路线图 Hadoop家族系列文章,主要介绍Hadoop家族产品,常用的项目包括Ha ...
- Hive基础08、Hive引入Struct结构体
Hive基础08.Hive引入Struct结构体 1.建表语句 创建一个温良贤淑女子的表 英文关键字解析: 1.CREATE TABLE 创建一个指定名字的表,如果库中已有相同名的表,则抛出异常: 用 ...
- Hive学习之路(二):Hive表操作详讲
操作内容简介 一.操作前的准备 二.Hive表操作详讲 1. 创建数据库 2. 查看所有数据库/表 3. 在Hive上直接操作HDFS 4. 在Hive上直接执行终端命令 5. 创建数据表/查看表的信 ...
- HIVE学习系列——windows Hadoop安装(上)
文章目录 整体流程概览 jre环境 jre安装 jre环境变量配置 Hadoop安装与配置 官网下载步骤 清华镜像下载步骤 Hadooponwindows下载 配置系统变量 hadoop初始文件配置 ...
- Hive学习笔记(1)基本操作
hive学习官方网站: General Info ============ For the latest information about Hive, please visit out websit ...
- 动手学深度学习08:卷积中的填充与步幅
动手学深度学习08:卷积中的填充与步幅 一个240×240像素的图像,经过10层5×5的卷积后,将减少到200×200像素. 如此一来,原始图像的边界丢失了许多有用信息.而填充是解决此问题最有效的方法 ...
- Hive学习(15)-Hive分析窗口函数(三)
原文来自:扎心了,老铁的<Hive学习之路 (十五)Hive分析窗口函数(三) CUME_DIST和PERCENT_RANK>
- Hive学习(10)-Hive的高级操作
原文来自:扎心了,老铁的<Hive学习之路 (十)Hive的高级操作>
最新文章
- [转]使用设计模式改善程序结构(二)
- java oracle数据回滚,误操作ORACLE生产数据利用闪回查询备份恢复数据-java-51CTO博客...
- 兰州交通大学开除患癌教师符合理性
- tomcat(6)生命周期
- 转载:pycharm最新版新建工程没导入本地包问题:module 'selenium.webdriver' has no attribute 'Firefox'...
- 2018北大计算机复试线,2018年北京大学考研复试分数线已公布
- 转载:word排版之长英文单词自动换行
- java语言实现二维数组构造二叉树_剑指offer打卡5:二叉树的子结构
- 清华计算机系超算团队,清华大学学生超算团队
- VRay渲染器之家装户型渲染实战记录
- qpython 3h_QPython 3H
- Linux进程管理和控制服务
- 特殊符号大全复制_王者荣耀名字特殊符号2019 稀有漂亮最新热门符号大全
- STM32控制步进电机运三种方式控制源码详解:主从定时器+编码器闭环+GPIO模拟(基于【TB6600】【DRV8825】驱动器)
- Qt Creator 添加大恒相机SDK库
- Python 文件打开读取写入方法
- SpringBoot+Thymeleaf图片上传
- 游戏思考系列03:游戏匹配机制(MMR、ELO、trueskill2、皇家战争、Glicko等,详细讲ELO,其他的简略)
- C语言sopc蜂鸣器按键弹奏中音,SOPC乐曲演奏大作业.doc
- 【20221220】Windows通过网线共享网络及小猫咪局域网共享
热门文章
- 列表,元组,集合,字典常用方法
- Hive问题汇总记录,持续更新
- 动态服务器以及WSGI
- java对象序列化并存储到文件和数据库
- 吴恩达深度学习 —— 3.10 直观理解反向传播
- 基于Kmeans算法的文档聚类(包含Java代码及数据格式)
- Multi-thread--提高C++性能的编程技术笔记:多线程内存池+测试代码
- 运维笔记 - Nginx
- php socket 多次发送,php模拟socket 多次发送数据的实现方法
- 输出结果 配置_经典架构新玩法:用单端仪表放大器实现全差分输出