面试官:你处理过数量级很大的数据吗?实际上是在问什么?
发布时间:2022-09-15 16:02:29 所属栏目:大数据 来源:
导读: 在数据分析面试时,很多面试官会担心应聘者对大数据的处理能力不够导致拖垮服务器。因此面试官经常会问:“你处理过多大量级的数据?我们的数据量很大,你能处理吗?”
如果应聘者第一次遇到这
如果应聘者第一次遇到这
|
在数据分析面试时,很多面试官会担心应聘者对大数据的处理能力不够导致拖垮服务器。因此面试官经常会问:“你处理过多大量级的数据?我们的数据量很大,你能处理吗?” 如果应聘者第一次遇到这样的问题,不知道面试官实际想要的答案是什么,直接说我们的用户数量级有3亿,以此表示自己处理过大量级的数据。如果没有其他补救措施,你可能就会被淘汰了,因为这不是面试官想要的答案。 大数据数量级_大数据激活女人经济 36大数据_数量b大还是m大 要想给出面试官想要的答案,需要搞清楚面试官问这个问题实际上是在问什么。这个问题可以换一种问法:“数据有倾斜时,你是怎么处理的?” 要想正确回答这个问题,你需要清楚数据倾斜的原因、表现和处理方法。 一、数据倾斜的原因 key分布不均匀业务数据本身的特性建表时考虑不周SQL语句导致倾斜 大数据激活女人经济 36大数据_大数据数量级_数量b大还是m大 二、数据倾斜的表现 任务进度长时间维持在99%(或100%)。查看任务监控页面,发现只有少量(1个或几个)reduce子任务未完成。因为其处理的数据量和其他reduce差异过大,导致最大处理时长远大于平均时长。 三、数据倾斜解决方法:map join 要想解决数据倾斜问题,首先需要了解hive中的common join和mapjoin。 Commonjoin和mapjoin都分为三个阶段:map、shuffle、reduce。 Commonjoin和mapjoin的区别在于:common Join在reduce阶段完成join,而map join在map阶段就完成join,节省了shuffle阶段的大量数据传输。 1. MapJoin的实现方法: 在Hive v0.7之前,使用hint提示/*+ mapjoin(table) */执行map join。 Hivev0.7之后的版本,通过参数配置来控制: hive> set hive.auto.convert.join=true; 2. 可以设置小表的阈值,以开启和关闭mapjoin的阈值: hive> set hive.mapjoin.smalltable.filesize=50000000; --- 即50M 3. 对于groupby或distinct情形产生的数据倾斜,可以设定 hive> set hive.groupby.skewindata=true; 四、map join的适用场景 五、 mapjoin 解决数据倾斜实例 1. log表有10亿行记录,VIP 表只有1000行记录,而且order表中数据倾斜特别严重,有一个key上有1亿行记录。 如果使用以下语句: select t2.id, t2.log_time from VIP t1 join log t2 on ( t2.id=t1.id and t2.ftime=’2019-11-03’) 你会发现该语句中运行很慢,而且可能在reduce的过程中遇到内存不够的报错提示。 改进方法: select /*+ mapjoin(VIP)*/ t2.id, t2.log_time from VIP t1 join log t2 on (t2.id=t1.id and t2.log_date=’2019-11-03’) 注:以上语句使用Hive v0.7之前的hint提示方法 再运行,会发现执行的效率比以前的写法提高很多。 2. mapjoin进行不等连接的join操作 如果将不等条件写在where中,那么mapreduce过程中会进行笛卡尔积大数据数量级,运行效率特别低。但如果使用mapjoin操作,在map的过程中就完成了不等值的join操作,效率会高很多。 如: select /*+ mapjoin(VIP)*/ t1.log_time, t2.log_time from t1 join t2 on (t1.log_time < t2.log_time) 注:以上语句使用Hive v0.7之前的hint提示方法 往期回顾 还在为数据分析职业发展路径迷茫? 一文读懂数据分析、数据挖掘、算法、数据开发工程师的异同 面试官:你处理过数量级很大的数据吗?实际上是在问什么? 数据分析常见思维能力考题,看看你会被直接淘汰吗? 数据建模必知六大步骤 数学算法的世界 专注数据科学领域知识和资讯传播 (编辑:航空爱好网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
站长推荐


