腾讯微保实习二面(数据开发工程师)
动动小手,点个赞呗
腾讯微保二面(35分钟+5分钟提问)压力面
1 自我介绍2 项目介绍
3 大数据相关(很多我忘记了)
spark sql读取文件,内存不够使用,如何处理
spark sql与DataFrame的使用
数据倾斜问题,Flink问了一点点
sql如何实现数据倾斜中加盐操作
示例:给 表中的某个字段插入随机数数据,取值500~2000
update 表名 set 字段名 = floor(500+rand()*1500);
UPDATE `表名` SET `字段名`=ceiling(rand()*500000+500000) WHERE (条件);
floor:函数只返回整数部分,小数部分舍弃,即向上取整
rand:函数用于产生0(包含)到1(不包含)的随机数
全都是生产上常见的问题。。。
4 机器学习,数据挖掘相关(太多问题)
问了比赛相关的,主要机器学习的问题使用的什么方法,XGBoost与LightGBM的应用场景
逻辑回归原理,如何防止过拟合,如何评价模型,如何进行特征工程
如何选择最优的特征,数据预处理,spark的机器学习库,底层源码问题
CNN常见模型,一些原理,适用场景。
5 写了一个sql,不能额外使用其他表
姓名,课程,课目成绩这三个字段转换成 姓名 课程1,课程2,课程3(对应成绩)
方法一
select 姓名,
max(case 课程 when '语文' then 分数 else 0 end)语文,
max(case 课程 when '数学'then 分数 else 0 end)数学,
max(case 课程 when '物理'then 分数 else 0 end)物理
from tb
group by 姓名
max(case 课程 when '语文' then 分数 else 0 end)语文,
max(case 课程 when '数学'then 分数 else 0 end)数学,
max(case 课程 when '物理'then 分数 else 0 end)物理
from tb
group by 姓名
方法二PIVOT用于将列值旋转为列名(即行转列)PIVOT的一般语法是:PIVOT(聚合函数(列) FOR 列 in (…) )AS P
select * from tb pivot(max(分数) for 课程 in (语文,数学,物理))
面试感受,自己太菜了,还是需要加油。等HR面咯
4.27下午电话面试(应该是HR)
#微保WeSure##实习##数据开发工程师##面经#