SQL 与数据工程是 Snowflake 前沿部署工程师面试流程的核心部分。窗口函数、gaps-and-islands 问题、Spark 内部机制、湖仓设计、幂等管道和 CDC:这就是 Databricks/Snowflake/Palantir 的数据方向。以下是需要准备的 SQL 与数据工程题目,首先是标记为 Snowflake 的题目,然后是我们 SQL 与数据工程方向 中信号值最高的题目,每题都配有达到资深工程师水准的答案。

标记为 Snowflake 的 SQL 与数据工程题目

更多针对 Snowflake 面试流程的 SQL 与数据工程题目

候选人认为最有用的信号值最高的 SQL 与数据工程题目,模拟 Snowflake 前沿部署工程师面试流程所考察的内容。

Snowflake SQL 与数据工程环节背后的概念

这些题目所假设的术语和思维模型。基础部分免费学习;更深层次的、决定面试成败的理念属于付费内容。

基础SQL 窗口函数窗口函数在与当前行相关的一组行上计算数值,而不会将这些行合并,因此你可以在保留每一行的同时进行排名、与相邻行比较或计算累计总和。这是分析师在纯 SQL 中回答“与什么相比?”这类问题的方式,大多数面试官会用它来区分“懂 SQL 的人”和“只懂 GROUP BY 的人”。

核心登录幂等数据管道管道会重试、被重新运行和回填,而每一次重新运行都必须产生与运行一次相同的结果。幂等性正是实现这一点的特性:通过 upsert 或分区覆盖按键写入,绝不盲目追加,这样重试就不会重复计数。这是让管道可以安全运维的唯一关键特性,否则你会在凌晨 2 点收到告警,却无法判断再次运行作业是否安全。

核心登录数据质量与校验一次部署的成败取决于客户的数据,而这些数据往往比他们的样本所显示的更糟糕。工作重点是在边界处构建自动化质量门(模式、空值、取值范围、唯一性、新鲜度),隔离坏记录而不是让整批数据失败,并对坏数据率进行告警,以便在仪表盘出错之前发现呈“周二形态”的数据劣化。这就是会大声失败的管道和会悄悄撒谎的管道之间的区别。

核心登录去重与 LSH完全重复的记录可以通过对规范化后的内容做哈希来消除,但近似重复(同一记录中有一个错别字、地址顺序被打乱、跨文档重复出现的套话)需要的是相似度而非相等性判断。MinHash 能以低成本估算 Jaccard 相似度,而局部敏感哈希(LSH)将相似的签名放入同一桶中,这样你只需比较可能的配对,而不是全部 O(n^2) 的组合。在合并混乱的企业数据和整理训练语料时,这是一种本能反应。

高级🔒 Premium间隙与孤岛(Gaps and Islands)间隙与孤岛是一种 SQL 模式,用于将一系列行折叠成连续的区段(孤岛)以及它们之间的中断(间隙)。其技巧是两个行号之差在区段内保持不变,从而为同一孤岛中的每一行赋予一个相同的分组键,随后即可进行聚合。它广泛应用于会话切分、登录连续记录以及连续日期范围查询,面试官之所以钟爱它,是因为朴朴素的自连接答案既慢又在并列情况下出错。

高级🔒 Premium变更数据捕获(CDC)变更数据捕获将源数据库中行级的插入、更新和删除以流的形式输出,使下游系统保持近实时同步,而无需全量重载。其强形式是读取数据库事务日志而非轮询表,这样可以捕获删除操作、保留提交顺序,并且几乎不给源库增加负载。难点在于排序、删除操作的墓碑记录,以及以幂等方式应用流,确保重放不会损坏目标系统。

高级🔒 PremiumETL 与 ELTETL 在数据落地前进行转换;ELT 则先加载原始数据,再在数仓内部进行转换。廉价弹性算力使 ELT 成为默认选择,但当数据绝不能以原始形式落地时,ETL 仍然是正确的做法——这正是大多数受监管的客户环境中的情况,也是 FDE 常常部署进去的场景。

高级🔒 Premium查询优化与执行计划当客户说某个查询很慢时,答案就在执行计划里,而不是凭直觉。读懂执行计划能告诉你引擎是否在应该查找时进行了扫描、在连接中是否导致行数爆炸,或者是否在跨网络进行数据洗牌——这三种原因除了症状相同之外毫无共同之处。

Snowflake 的前沿部署工程师面试环节会涉及 sql 与数据工程类问题,例如“RANK、DENSE_RANK 和 ROW_NUMBER 有什么区别?什么时候这个选择才真正重要?”、“编写 SQL:按区域、按月统计收入排名前 3 的产品。”、“用 SQL 对原始事件流进行会话切分:超过 30 分钟的间隔即开启新会话。”。窗口函数、间隙与孤岛、Spark 内部机制、湖仓设计、幂等管道和 CDC:这就是 Databricks/Snowflake/Palantir 的数据方向。完整题集按由易到难排序并附专家答案,见下文。

请按顺序练习本页的 sql 与数据工程问题,学习下方链接的相关底层概念,然后查阅 Snowflake 的完整面试流程,了解这一轮在整个面试环节中的位置。

本页涵盖面向客户的解决方案架构以及 AI/ML 工程方向的面试准备。所核查的资料来源确立了这些方向以及一份通用的工程招聘指南;但它们并未确立一个独立的 FDE 面试流程。

Snowflake 公布了一套通用的工程流程,包括技术面试和面试小组,并按级别提供可选的 Tech Talk。我们尚未验证解决方案架构师岗位的单一匹配流程。请准备数据架构以及技术权衡的沟通,并确认该岗位的具体练习环节。

Snowflake 的其他面试轮次

Snowflake 前沿部署工程师面试流程所测试的其他方向。

备战 Snowflake 前沿部署工程师完整面试流程

SQL 与数据工程是其中一个轮次。使用 Premium 解锁 Snowflake 完整面试流程中的所有答案。每个方向都有免费题目,让你先体验内容深度。

所有答案、概念与课程、每份试卷解析、全部已发布的视频课程、动手实践的 FDE Lab 任务、Premium PDF 指南及配套文件、完整的模拟测试题库以及工作样例下载。Referral Premium 不包含指南 PDF 及其配套文件。

6 个月 · 一次付费 · 不自动续订

配合免费视频课程一起学习。

本站独立运营,与 Snowflake 无关联。所有商标归其所有者所有。