基础面试题集锦
文章平均质量分 68
包括linux,shell,sql,hivesql,sparksql,python等语言,hdfs,yarn,mapreduce,hive,hbase,spark等大数据组件。
随缘清风殇
知其然,知其所以然
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
每日一练:python编程
华为机试题:1、计算字符串最后一个单词的长度,单词以空格隔开。解题思路:①先将字符川用分隔符切割为数组,②取数组的最后一个元素的长度str_in = input().split(' ')print(len(str_in[-1]))2、写出一个程序,接受一个由字母、数字和空格组成的字符串,和一个字母,然后输出输入字符串中该字母的出现次数。不区分大小写。解题思路:①分两次输入,第一次输入的为字符串,第二次输入统计字符;②先将输入字符串全部转大/小写;②统计字符串中字符个数。str_in原创 2021-02-18 20:20:02 · 605 阅读 · 0 评论 -
面试之大数据组件工作原理
1、数据加工整体的流向1.1、业务交互数据 -后端埋点数据业务流程中产生的登录、订单、用户、商品、支付等数据,通常存储在DB中,MySQL、oracle中web/app业务交互 - 业务服务器 - mysql业务数据(业务日志数据) - sqoop上传到hdfs①业务数据上传到mysql数据库中,有些表需要每天进行更新,便于较少数据的增删改查;②mysql将数据通过sqoop上传到hdfs上,sqoop上传时,运行时间比较长;1.2、前端埋点用户行为数据与产品发生交互的数据,用户的曝光,点击原创 2021-01-18 14:42:35 · 1172 阅读 · 0 评论 -
python面试100题(日更)
1、深拷贝和浅拷贝的区别是什么?deepcopy会将对象本身复制给另一个对象,对象副本改变时不会改变原对象copy将对象的引用复制给另一个对象,对象副本改变时会改变原来对象2、列表和元组有什么不同?列表中元素可变,元组中元素不可变3、三元表达式[on true] if [expression] else [on false]#为真执行左边的,为假执行右边的4、如何在python中管理内存5、python字典键值对的数据结果6、负索引正索引从左往右(从0开始),负索引从右往左(从-原创 2021-01-14 17:09:23 · 494 阅读 · 0 评论 -
大数据之hive倾斜
1、数据倾斜原理mapreduce程序执行时,reduce节点大部分执行完毕,但是有一个或者几个reduce节点运行很慢,导致整个程序的处理时间很长。这是因为某一个key的条数比其他key多很多(有时是百倍或者千倍之多),这条key所在的reduce节点所处理的数据量比其他节点就大很多,从而导致某几个节点迟迟运行不完。如何将数据均匀的分配到各个reduce中,就是解决数据倾斜的根本所在1.1、如何找到大key及对应SQL执行代码1)先找到对应job的url链接2)打开链接,找到对应特别慢的t原创 2021-01-10 16:48:11 · 396 阅读 · 0 评论 -
大数据之HiveSQL调优
1、HiveSQL调优概述1.1、优化原因①数据倾斜②数据冗余③Job或I/O过多④MapReduce分配不合理1.2、优化方式①对HiveSQL语句本身的优化②Hive配置项的调整③MR的调整2、HiveSQL本身优化2.1、列裁剪和分区裁剪列裁剪就是在查询时只读取需要的列,分区裁剪就是只读取需要的分区select uid,event_type,record_data from calendar_record_log where pt_date >= 201902原创 2021-01-07 19:16:02 · 868 阅读 · 0 评论 -
shell编程之大数据面试题
1、linux常用高级命令1.1、top--实时查看内存1)第一行23:07:25 : 当前系统时间;user : 用户个数;load average : 三个数分别表示1分钟,五分钟,15分钟的负载状况***高于5表明系统在超负荷运转2)第二行task:任务(进程)–系统共有250个进程,1个在运行,249在休眠,0个stop,0个僵尸状态3)CPU状态us:用户空间占用CPU的百分比sy:内核空间占用CPU的百分比ni:改变过优先级的进程占用CPU的百分比id:空闲CP原创 2021-01-05 20:12:01 · 605 阅读 · 1 评论
分享