数据开发的简历及面试
简历
个人信息: 邮箱别写QQ邮箱, 写126邮箱/189邮箱等
学历>>本科及以上写,大专及以下不写
专业>>非计算机专业不写
政治面貌>>党员写, 群众不用写
掌握的技能: 精通 > 熟悉 > 了解
专业工具: 大数据相关的
公司: 如果没有可以写的>>金融服务外包公司的中小型公司; 地方性银行
外包公司: 业务范围写有技术服务的
工作经历: 从最近的一份工作往回写, 最近的一份工作一年以上
工作经验: 1-3年初级,4年中级,5年及以上高级
项目经验: 工作2-4年的, 3个或以上; 同一家公司的项目跨度别太大; 最后一个项目最好写银行项目,因为银行项目多
项目: 从最近的项目开始往回写; 项目内容包括项目介绍, 个人职责 ;把一个项目重点准备, 了解第二个项目,其他项目可以说时间隔得比较久,记不太清楚了.
简历风格: 简约不花哨
优点:
具备良好的定位问题及解决问题的能力
具备较强的学习能力,能快速学习新的技术
具备良好的沟通能力,
简历模板:
创客贴-做图做视频必备_会打字就能做设计,商用有版权
中文简历(免费下载 | word可编辑)- 简历模板资源网
面试
个人介绍:
问候语(你好) + 我是(个人信息) + 技能(简要介绍) + 数据开发经验 +突出闪光 + 着重介绍自己的最近一个项目(要说写简历上没有写的更具体一些的信息) + 结束语(以上就是我的大体情况)
面试官: 平常使用什么ETL工具抽取数据?
sqoop
(银行项目数据抽取尽量不用Kettle>>之前发生过数据泄密>>使用sqoop等ETL工具)
面试官: 数仓调度用什么工具?
sqoop(ETL工具)
面试官: 项目有多少层?每个项目层的是什么?

面试官: 关系型数据库(比如oracle)和hive的区别?
1.存储格式的区别
关系型数据库: 数据存储格式是数据库内部实现的,用户通常无法直接访问底层文件格式
hive: 数据存储格式由用户选择>>文本格式(默认), 序列化格式(SequenceFile), 列式存储格式(如Parquet和ORC)
2.计算引擎不同:
Oracle数据库的计算引擎通常指的是其内部用于执行SQL查询和数据操作的组件,包括:

hive: 支持3种引擎, MapReduce、Tez和Spark, 默认的计算引擎是MapReduce
3.应用:
关系型数据库: 适用于需要事务处理、实时查询和数据完整性的场景(OLTP)面向企业日常运营的增删改查,企业必然会有
hive: 适合数据分析大规模数据集, (OLAP), 只有查和分析
4.查询性能
关系型数据库较快; hive较慢
5.事务支持
关系型数据库: 支持ACID(原子性、一致性、隔离性、持久性)事务
hive:不支持ACID事务,主要用于批量处理和分析
面试官: shell循环方式有多少呢?
for循环; while循环; untill循环(取反值)
面试官: 数据抽取会会遇到什么问题?怎么办?
1.数据采集前后数量不一致:
检查脚本,修改脚本问题>>删除数据>>进行数据重跑
如果还有问题>>找负责上游系统的同事问一下是不是在我抽数据的过程中, 同事进行了数据删除
2.数据倾斜

3.数据飘逸/数据漂移

面试官: 如何测试数据是否前后一致?
-
大体上看条数是否一致(对数):首先,通过SQL使用count(*), count(1), count(字段)来比较两个数据源的记录总数是否一致。(多了或少了)
-
找出不一致的字段:通过分组和计数操作找出记录数不一致的字段。例如,可以使用以下SQL语句来找出具有重复记录的字段

面试官: 怎么判断数据的质量?
完整型(count对数),
空值率 = (缺失或为空的记录数 / 总记录数) × 100%
准确性(对地区,金额的关键字段进行聚合计算, 如果不准确要进行抽象测试)
准确率 = (正确数据记录数 / 总数据记录数) x 100%
时效性 (T+1)
唯一性(确定数据的唯一版本)
评估数据集中的重复值。重复数据比例 = (重复值数量 / 总数据量) × 100%
面试官: 数据有多少种? 依据数据的组织方式和特性进行分类的
结构化数据(指具有明确格式和规则的数据,通常以表格或数据库的形式存在 ;
sql语言>>结构化查询语言)
半结构化数据(数据通常具有自描述性, 如XML和JSON)
非结构化数据(文本、图片、音频、视频等)
面试官: 数据量是多少?
总数据量没有计算过, 我负责的部分日增量30来万
抽取数据花多长时间?
2个小时
怎么花怎么长时间?
公司服务器性能比较差
怎么抽怎么快?
并行度大,通过sqoop把并行度调高了(原本的4个进程调成8个)
面试官: 你之前使用过什么数据栈
面试官: 做过报表开发吗?
做过,做得比较少
面试官: 在项目中常用的函数 sum ,case when ,开窗函数(排名), 位移函数,
面试官: 上一份工作的离职原因?
项目结束之后一直没有新的项目,我想找一个能长期有项目的工作
面试官: shell脚本怎么传参?
在执行脚本的时候传参, 用$1和$2
面试官: 如何强行转换数据类型?
hive 和oracle都是
面试官: 如果namenode挂掉了, 怎么办?
可以启用SecondaryNameNode
(作用是辅助NameNode进行元数据管理和检查点(Checkpoint)操作)
面试官:怎么启用SecondaryNameNode?


面试官: 在使用hive的时候, 有没有遇到过数据倾斜?
有
面试官: 遇到数据倾斜怎么办?

面试官: 你遇到过的数据倾斜是什么原因?怎么办?
空值过多>>数据分布不均

解决方法:

如何排查是否遇到数据倾斜?
去Yarn看一下进程, 看job日志, 看是否卡在某个阶段, 比如map端走完了,reduce端不动了, 就是数据倾斜
面试官: 开发过什么指标?
逾期天数,
面试官: 什么是逾期?
逾期是指借款人未能在贷款合同规定的还款日期内按时偿还贷款本金或利息
面试官: 逾期率怎么计算?
面试官: 在实际开发过程中有没有遇到特别难点?怎么处理的?
没有太难的,难的主要是对业务的理解, 我会频繁和业务人员进行沟通
复杂的指标计算>>涉及到十来张表,需要连接, 嵌套
面试官: 解释一下呆账和坏账?

面试官: 在hive中如何处理小文件?
处理已经存在的小文件
手动合并小文件
使用INSERT OVERWRITE语句:通过将数据重新写入目标表的方式合并小文件
使用CONCATENATE命令:适用于ORC文件格式的表,可以合并分区内的小文件
使用Hadoop命令合并:适合ORC或Parquet格式文件
自动合并小文件
在Hive作业中配置参数,自动触发文件合并
SET hive.merge.mapfiles = true; --控制是否在Map-only作业结束后合并小文件
SET hive.merge.mapredfiles = true; --控制是否在Map-Reduce作业结束后合并小文件
SET hive.merge.size.per.task = 256000000; -- 合并后文件的目标大小
SET hive.merge.smallfiles.avgsize = 16000000; -- 触发合并的平均文件大小
预防小文件的生成:
控制Reduce任务数量:通过调整mapred.reduce.tasks或hive.exec.reducers.bytes.per.reducer参数,减少输出文件数量
SET hive.exec.reducers.bytes.per.reducer = 256000000; -- 每个Reduce任务处理的数据量
使用INSERT INTO替代多次小批量写入:集中写入可以减少文件数量
合理规划分区和分桶策略,避免因分区过多导致小文件问题
文件格式: 使用ORC或Parquet格式,并启用压缩(如LZO、Snappy),减少文件数量和存储空间
面试通过多长时间能入职?
一周后
未来的职业规划?
想继续精进自己的技术, 2, 3年以后转做业务
假设你做了项目经理, 你有什么想法?
根据每个人擅长的点,合理配置他们的工作.
面试官: 你还有什么要问的吗?
能否介绍一下贵公司典型的项目周期是怎样的?项目从启动到完成通常需要多长时间?
公司经常做的项目有哪些?
“您能否分享一下团队目前使用的主要技术栈?"
是否有二面? 二面的具体时间是什么时候?
能否介绍一下你们公司的团队结构和工作方式?
“贵公司如何支持员工的职业发展和技能提升?”
公司在未来几年有哪些主要的业务目标或发展方向?
相关文章:
数据开发的简历及面试
简历 个人信息: 邮箱别写QQ邮箱, 写126邮箱/189邮箱等 学历>>本科及以上写,大专及以下不写 专业>>非计算机专业不写 政治面貌>>党员写, 群众不用写 掌握的技能: 精通 > 熟悉 > 了解 专业工具: 大数据相关的 公司: 如果没有可以写的>>金融服…...
如何在docker上部署前端nginx服务(VUE)
目录结构 clean.sh docker stop rszWeb; docker rm rszWeb; start.sh docker run -d \ --name rszWeb \ -p 7084:80 \ -m 500m \ --privileged=true \ --restart=always \ -v /home/rsz/ui/conf/nginx.conf:/etc/nginx/nginx.conf \ -v /home/rsz/ui/logs:/meta/logs \ -v /…...
模型和数据集的平台之在Hugging Face上进行模型下载、上传以及创建专属Space
模型下载 步骤: 注册Hugging Face平台 https://huggingface.co/ 新建一个hf_download_josn.py 文件 touch hf_download_josn.py 编写hf_download_josn.py文件 import os from huggingface_hub import hf_hub_download# 指定模型标识符 repo_id "inter…...
[Web 信息收集] Web 信息收集 — 手动收集 IP 信息
关注这个专栏的其他相关笔记:[Web 安全] Web 安全攻防 - 学习手册-CSDN博客 0x01:通过 DNS 服务获取域名对应 IP DNS 即域名系统,用于将域名与 IP 地址相互映射,方便用户访问互联网。对于域名到 IP 的转换过程则可以参考下面这篇…...
排序算法(3):
这是我们的最后一篇排序算法了,也是我们的初阶数据结构的最后一篇了。 我们来看,我们之前已经讲完了插入排序,选择排序,交换排序,我们还剩下最后一个归并排序,我们今天就讲解归并排序,另外我们还…...
TypeScript - 泛型
泛型允许在定义函数、类或接口时,使用类型参数来表示未指定的类型,这些参数在具体使用时,才被指定具体的类型,泛型能让同一段代码适用于多种类型,同时仍然保持类型的安全性。 举例:如下代码中 <T> 就…...
Python基于Django和Vue的校园互助平台(附源码、文档说明)
博主介绍:✌IT徐师兄、7年大厂程序员经历。全网粉丝15W、csdn博客专家、掘金/华为云//InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ 🍅文末获取源码联系🍅 👇🏻 精彩专栏推荐订阅👇dz…...
打包rocketmq-dashboard报错问题记录
在进入到\rocketmq-dashboard-2.0.0\rocketmq-dashboard-rocketmq-dashboard-2.0.0目录下,执行mvn clean package -Dmaven.test.skiptrue打包,报错: java: java.lang.NoSuchFieldError: Class com.sun.tools.javac.tree.JCTree$JCImport does…...
Redis 高可用性:如何让你的缓存一直在线,稳定运行?
🎯 引言:Redis的高可用性为啥这么重要? 在现代高可用系统中,Redis 是一款不可或缺的分布式缓存与数据库系统。无论是提升访问速度,还是实现数据的高效持久化,Redis 都能轻松搞定。可是,当你把 …...
Windows和AD域提权枚举脚本及工具介绍
在 Windows 和 Active Directory (AD) 域环境中,权限提升和枚举是渗透测试的关键部分。为了有效进行这些操作,使用特定的工具和脚本可以帮助你识别和利用系统中的漏洞。以下是一些常用于 Windows 和 AD 域环境中的权限提升和枚举脚本工具: W…...
【Linux】调试工具GDB的使用及案例讲解
Linux系列 文章目录 Linux系列前言一、gdb的使用背景二、gdb的使用总结 本篇主要针对小白讲解,可以很多地方比较咯嗦 前言 GDB是Linux下一款强大的调试工具。GDB可以调试C、C、Java等语言,对于在Linux下工作的程序员来说,GDB是必不可少的调试…...
DeepSeek回答:AI时代Go语言学习路线
最近有小伙伴经常会问:**该如何学习入门Go语言?怎样提升Go语言Coding水平?**这篇文章我们就使用DeepSeek来梳理下Go语言在AI时代的学习路线。 向DeepSeek提问的问题原文: 你现在是一名资深的Go语言工程师,精通Go语言并…...
1分钟用DeepSeek编写一个PDF转Word软件
一、引言 如今,在线工具的普及让PDF转Word成为了一个常见需求,常见的pdf转word工具有收费的wps,免费的有pdfgear,见下文: PDFgear:一款免费的PDF编辑、格式转化软件-CSDN博客 还有网上在线的免费pdf转word工具smallp…...
【Linux】初探信号的奥秘
目录 一、引入信号: 1、什么是信号: 二、前后台进程: 三、信号的处理方式: 四、键盘数据与信号: 前言: 在Linux系统编程中,信号(Signal)是一种至关重要的进程间通信…...
Fetch MCP 安装笔记-roo cline实操版本
Fetch MCP 安装笔记-roo cline实操版本 cursor中将MCP加入知识库:Doc->add new doc https://modelcontextprotocol.io/introduction MCP 参考https://github.com/langgptai/LangGPT 帮我生成一个langgpt的提示词,写到langgpt提示词.md MCP 学习这个文…...
C#初级教程(6)——函数:从基础到实践
一、函数的核心价值:简化与复用代码 以游戏开发项目为例,在游戏中,角色的移动、攻击等行为并非只在单一场景中出现。设想一下,若每次需要角色执行这些行为时,都要重新编写对应的代码,那将是何等繁琐且易错的…...
Ubuntu搭建esp32环境 配置打开AT指令集 websocket功能
1,搭建前提 环境搭建参考乐鑫官网给的本地编译 ESP-AT 工程方法 因为公司电脑和网络的特殊性,不能正确解析域名(仅在浏览器上可以访问) ,所以这边访问的时候改成了ssh 未了避免使用外网困难的问题,这里用…...
express(node ORM) 使用 Winston 记录日志 及数据库保存日志
一、安装 npm i winston npm i winston-mysql二、 配置 winston 2.1、封装 const config require(__dirname ‘/…/config/config.json’)[env]; 先判断当前是什么环境,如果.env中没有配置,就是开发环境。接着去config/config.json中读取对应的配置。…...
是德科技keysight N5173B信号发生器,是一款经济高效的仪器
是德科技keysight N5173B信号发生器安捷伦N5173B信号源 是德N5173B微波模拟信号发生器,拥有 9 kHz 至 40 GHz 的频率覆盖范围,N5173B为宽带滤波器、放大器、接收机等器件的参数测试提供了必要的信号,是一款经济高效的仪器。 N5173B特点&…...
从零到一:如何用阿里云百炼和火山引擎搭建专属 AI 助手(DeepSeek)?
本文首发:从零到一:如何用阿里云百炼和火山引擎搭建专属 AI 助手(DeepSeek)? 阿里云百炼和火山引擎都推出了免费的 DeepSeek 模型体验额度,今天我和大家一起搭建一个本地的专属 AI 助手。 阿里云百炼为 …...
FFmpeg视频处理入门级教程
一、FFmpeg常规处理流程 #mermaid-svg-W8X1llNEyuYptV3I {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-W8X1llNEyuYptV3I .error-icon{fill:#552222;}#mermaid-svg-W8X1llNEyuYptV3I .error-text{fill:#552222;str…...
C/C++ | 每日一练 (4)
💢欢迎来到张胤尘的技术站 💥技术如江河,汇聚众志成。代码似星辰,照亮行征程。开源精神长,传承永不忘。携手共前行,未来更辉煌💥 文章目录 C/C | 每日一练 (4)题目参考答案基础容器序列容器std:…...
数据安全_笔记系列06:数据生命周期管理(存储、传输、使用、销毁)深度解析
数据安全_笔记系列06:数据生命周期管理(存储、传输、使用、销毁)深度解析 数据生命周期管理(存储、传输、使用、销毁)详解 数据生命周期管理(Data Lifecycle Management, DLM)是围绕数据从创建…...
后端返回文件流,前端导出excel文件
1、当后端接口返回文件流时,需前端导出excel文件,在请求中添加 responseType: blob限制条件,根据返回的文件流导出 封装的方法: /** * 公共的导出excel方法 * param {*} content 后端接口返回的二进制文件 * param {*} name 导出…...
Python开发 Flask框架面试题及参考答案
目录 Flask 的核心设计理念是什么?与 Django 相比有哪些显著差异? 解释 Flask 框架的核心理念及其作为 “微框架” 的优缺点 Flask 的依赖库有哪些?简述 Werkzeug 和 Jinja2 的作用 什么是 WSGI?Flask 如何基于 WSGI 实现服务端与应用的交互 解释 RESTful API 的设计原…...
Python 3.11 69 个内置函数(完整版)
一、数学与数值运算(12个) 函数 说明 示例 abs(x) 绝对值 abs(-5)→ 5 divmod(a, b) 返回(a//b, a%b) divmod(7,3)→ (2,1) max(iterable) 最大值 max([1,2,3])→ 3 min(iterable) 最小值 min([1,2,3])→ 1 pow(a, b) a^b(等…...
蓝桥杯备考:贪心算法之矩阵消除游戏
这道题是牛客上的一道题,它呢和我们之前的排座位游戏非常之相似,但是,排座位问题选择行和列是不会改变元素的值的,这道题呢每每选一行都会把这行或者这列清零,所以我们的策略就是先用二进制把选择所有行的情况全部枚举…...
跳跃游戏两则
跳跃游戏 给你一个非负整数数组 nums ,你最初位于数组的 第一个下标 。数组中的每个元素代表你在该位置可以跳跃的最大长度。 判断你是否能够到达最后一个下标,如果可以,返回 true ;否则,返回 false 。 思路 这里只…...
机器视觉--相机曝光
在现代工业生产的精密舞台上,机器视觉技术已然成为推动生产自动化、智能化的关键力量。而工业相机作为机器视觉系统的 “眼睛”,其曝光环节更是决定了视觉信息获取的质量与精度,如同为工业生产赋予了一双洞察入微的 “智慧之眼”,…...
基于 CFD 预测的机器学习第 2 部分:在 Benchmark 应用程序上使用 Stochos 预测流场
了解机器学习和 Stochos 如何彻底改变制造业的 CFD 预测。 挑战 预测复杂流体动力学场景中的流场一直是工程师和科学家面临的重大挑战。传统的计算流体动力学 (CFD) 方法需要大量的计算资源和时间,因此难以处理实时预测和大规模模拟。 此外…...
