字节 tiktok面试题目2026年1月

tiktok
字节 tiktok面试题目2026年1月
  • prefer English or Chinese
  • 英文自我介绍后面问题都是中文
  • 描述一下大数据的整体生态
  • 你是如何对大数据生态进行分类的
  • 每个类别下的组件分别用于什么场景
  • HDFS的重要组件有哪些,分别作用
  • Hadoop的读写流程
  • 用Spark的时候遇到过哪些问题,是如何解决的
  • 跑Spark任务是通过离线调度还是手动运行
  • 数据倾斜如何解决,如何发现
  • SparkSQL函数,reduceBy和sortBy的区别
  • Shuffle是什么,分配时是按什么规则进行的,在什么场景下会产生Shuffle,哪些函数会触发Shuffle 哪些不会
  • 对数仓建模的理解
  • 数仓的两种模型
  • 数据库范式分为哪几种,是怎么区分的
  • 维度表和事实表怎么理解
  • 为什么数仓设计时更多选择星形模型
  • 数仓是如何分层的,为什么要进行分层
  • 之前的经历都是机器学习和DA相关的
  • 为什么会对Data Engineer这个职位感兴趣
  • 简历上项目的内容
  • 熟悉其他传统的机器学习算法吗
  • SQL:Order 表字段 uid、cate、amt,找出同时购买过 toy、pet 品类并且有单笔消费超过 30(不限品类,food 也可)的 uid,写完以后追问 shuffle、如何优化

面试题1:描述一下大数据的整体生态

考察知识点

核心考察对大数据生态的全局认知,是否掌握生态的核心构成、各环节的作用及组件间的联动关系;区分大数据与传统数据处理的差异,理解生态“端到端”的数据处理逻辑;同时考察对主流组件的基础认知,判断候选人是否具备大数据技术体系的整体视野,而非局限于单一组件。

参考回答

大数据整体生态是一套围绕“数据全生命周期”构建的、由各类技术组件、工具和框架组成的完整技术体系,核心目标是解决海量数据(符合4V特性:海量Volume、高速Velocity、多样Variety、低价值密度Value)的采集、存储、计算、分析、治理、可视化及应用落地等一系列问题,打破传统数据处理在海量数据场景下的瓶颈,实现数据价值的挖掘与转化。整个生态并非单一组件,而是多个环节、各类组件协同工作的闭环系统,以Hadoop生态为核心基础,衍生出Spark、Flink等各类补充优化组件,适配不同行业(互联网、金融、政务等)的业务需求。从数据流转的全流程来看,生态各环节相互联动、各司其职,同时配套调度监控、运维管理等支撑性组件,确保整个体系稳定、高效运行。简单来说,大数据生态就像一条“数据生产线”:数据从各类源头被采集接入,进入分布式存储系统进行保存,再通过各类计算框架进行处理分析,经治理环节保障数据质量,最终通过可视化或业务接口输出价值,支撑业务决策、智能应用等场景,每个环节都有对应的核心组件支撑,形成完整的技术链路。

补充回答注意要点

1. 避免只罗列组件、不说明生态逻辑,重点突出“数据全生命周期”和“组件协同”,体现全局视野;2. 提及大数据4V特性,贴合大数据生态的核心定位,区分于传统数据处理生态;3. 明确核心生态基础(Hadoop生态),避免混淆各类组件的从属关系;4. 语言通俗落地,可结合“生产线”等类比,让回答更易理解,同时避免过于口语化;5. 无需展开单个组件细节(后续题目会涉及),重点说明生态的整体逻辑和核心作用。

面试题2:你是如何对大数据生态进行分类的

考察知识点

核心考察对大数据生态的系统性认知,能否根据数据流转逻辑或组件功能,对生态进行清晰、合理的分类;判断候选人对生态各环节的边界、核心作用的理解,是否具备“分类思维”和“逻辑梳理能力”;同时考察分类的实用性,能否结合实际应用场景说明分类的意义,避免分类混乱、无依据。注:分类需有明确标准,优先采用“数据全生命周期”分类法(最贴合实际应用,面试高频),避免多标准混杂分类。

参考回答

我对大数据生态的分类,核心遵循“数据全生命周期”为核心标准,结合组件的功能定位,分为6大类(含支撑性组件),分类逻辑清晰、贴合实际应用场景,便于理解各组件的分工的协同关系,同时能快速定位不同业务需求对应的组件,具体分类如下,每类均明确核心定位和边界:

1. 数据接入层(生态入口)

核心定位:负责将分散在不同来源的数据,批量或实时采集并传输至存储层,解决“数据怎么来”的问题,是数据进入生态的第一道关口。分类边界:从数据源头到存储层的“传输链路”,不涉及数据存储和处理,核心是保证数据采集的高效性、完整性和时效性。

2. 数据存储层(生态粮仓)

核心定位:承接接入层传输的各类数据(结构化、半结构化、非结构化),提供低成本、高可靠、可扩展的分布式存储方案,解决“数据存在哪”的问题,是整个生态的基础。分类边界:仅负责数据的持久化存储和高效读取,不涉及数据的计算和处理。

3. 数据计算层(生态核心引擎)

核心定位:对存储层的海量数据进行清洗、转换、聚合、分析等操作,将原始数据转化为有价值的中间数据或结果数据,解决“数据怎么处理”的问题,是生态的核心动力。分类边界:基于存储层的数据进行计算,输出处理后的结果,不负责数据的存储和采集,可进一步分为离线计算和实时计算两个子类别。

4. 数据治理层(生态质量保障)

核心定位:对数据全生命周期(接入、存储、计算、应用)进行管控,保障数据的准确性、一致性、安全性和可用性,解决“数据不可信、不可用”的问题,为后续分析和应用提供质量支撑。分类边界:贯穿整个数据流转流程,不直接参与数据的采集、存储和计算,仅负责“管控和优化”。

5. 数据应用与可视化层(生态价值出口)

核心定位:将计算层和治理层处理后的结果数据,通过可视化方式展示给用户,或对接业务系统、机器学习平台等,实现数据价值的落地,解决“数据有什么用”的问题。分类边界:生态的最终环节,接收处理后的高质量数据,输出具体的应用价值,支撑业务决策和智能应用。

6. 支撑性组件层(生态保障)

核心定位:为上述5个核心层级提供支撑,确保整个生态稳定、高效运行,不直接参与数据流转,但却是生态不可或缺的部分。分类边界:独立于数据全生命周期之外,提供调度、监控、运维、分布式协调等基础支撑能力。补充:这种分类方式的核心优势是“贴合实际业务需求”,比如需要开发离线ETL任务,可快速定位“接入层+存储层+离线计算层”的组件;需要保障数据安全,可聚焦“治理层+支撑性组件层”,逻辑清晰且实用性强,也便于后续组件的学习和应用。

补充回答注意要点

阅读全文

注册 立即解锁全文并访问全部文章: 网站会员, 成为小万的高级会员 and 海外DE会员 tiers 专享.

订阅
已有账号? 登录

小万和大树知识成长营地

注册成功!

欢迎回来,已成功登录。

你已成功订阅 小万和大树知识成长营地。

成功!请查收登录邮件。

成功!账单信息已更新。

账单信息未更新。